Exemplo n.º 1
0
        /// <summary>
        /// Déplace le serpent en supprimant l'élément de queue et en ajoutant un élément de tête.
        /// </summary>
        public void deplacerSerpent()
        {
            int indice_queue = corpsSerpent.Count - 1;
            PartieSerpent partieBougee = new PartieSerpent(corpsSerpent[0]);
            corpsSerpent.RemoveAt(indice_queue);
            corpsSerpent.Insert(0, partieBougee);

            switch (deplacement)
            {
                case 0: //droite
                    corpsSerpent[0].deplacer(12, 0);
                    break;
                case 1: //gauche
                    corpsSerpent[0].deplacer(-12, 0);
                    break;
                case 2: //haut
                    corpsSerpent[0].deplacer(0, -12); //en principe c'est +12 MAIS je ne sais pas pourquoi, le haut et le bas semble inversé ><
                    break;
                case 3: //bas
                    corpsSerpent[0].deplacer(0, 12);
                    break;
            }
        }
Exemplo n.º 2
0
 /// <summary>
 /// Constructeur par recopie
 /// </summary>
 /// <param name="original">La partie à copier</param>
 public PartieSerpent(PartieSerpent original)
     : this(original.X, original.Y)
 {
 }
Exemplo n.º 3
0
 /// <summary>
 /// Ajoute un élément en queue du serpent
 /// </summary>
 private void serpentGrandit()
 {
     PartieSerpent queue = new PartieSerpent(corpsSerpent[corpsSerpent.Count - 1]);
     corpsSerpent.Add(queue);
 }
Exemplo n.º 4
0
 /// <summary>
 /// Dessine un morceau du corps du serpent fourni en paramètre
 /// </summary>
 /// <param name="p">Le morceau de corps à dessiner</param>
 public void dessinerPartieSerpent(PartieSerpent p)
 {
     dessinerImage(p.Img, p.Coordonnees);
 }