public int startLevel(int maxLevel, Balle balle, Raquette raquette) { // On verifie si toutes les briques sont désactives List <Brique> briques_old = new List <Brique>(); foreach (var brique in briques) { if (brique.active) { briques_old.Add(brique); } } briques.Clear(); briques = briques_old; // Si le nombre de brique est 0 if (briques.Count == 0) { level++; raquette.reset(); balle.reset(); if (level > maxLevel) { return(level); } int[,] level_position = getLevel("levels/" + level + ".txt"); for (int x = 0; x < width; x++) { for (int y = 0; y < height; y++) { if (level_position[x, y] == 1) { Brique brique = new Brique(base.Game, "brique", new Vector2(x * 70 + 9 * x + 13, y * 15 + 8 * y + 8)); briques.Add(brique); this.Game.Components.Add(brique); } else if (level_position[x, y] == 2) { BriqueVitesse brique = new BriqueVitesse(base.Game, "briqueVitesse", new Vector2(x * 70 + 9 * x + 13, y * 15 + 8 * y + 8)); briques.Add(brique); this.Game.Components.Add(brique); } } } if (level > 1 && level <= maxLevel) { _ballBouncePartie.Play(); } } return(level); }
public bool perte() { // Si la balle touche le fond de l'écran if (position.Y > _screenHeight - texture2D.Height && direction.Y > 0) { float old_speed = speed; _ballBounceLife.Play(); reset(); speed = old_speed; raquette.reset(); return(true); } return(false); }