Example #1
0
        protected override void ExecuteInstructionSimple(InstructionSimple instruction)
        {
            JoueurEnCours.EtatJoueur.Angle += instruction.EtatFinal.Angle;
            JoueurEnCours.EtatJoueur.Angle  = JoueurEnCours.EtatJoueur.Angle % 360.0;
            if (instruction.EtatFinal.Crayon != Etat.EtatCrayon.SAME)
            {
                JoueurEnCours.EtatJoueur.Crayon = instruction.EtatFinal.Crayon;
            }


            if (instruction.EtatFinal.Position != null)
            {
                Point position      = instruction.EtatFinal.Position;
                Point imageRotation = position.Rotate(JoueurEnCours.EtatJoueur.Angle);

                Point positionJoueur = JoueurEnCours.EtatJoueur.Position;
                Point image          = positionJoueur.Add(imageRotation);

                if (JoueurEnCours.EtatJoueur.Crayon == Etat.EtatCrayon.BAISSER)
                {
                    IVecteur vect = FabriqueVecteur.getVecteur(niveauEnCours.Type, JoueurEnCours.EtatJoueur.Position, image);
                    FormeEnCours.Add(vect);
                }
                JoueurEnCours.EtatJoueur.Position = image;
            }
        }
 public static Vecteur2 CreateVecteur(IVecteur vect)
 {
     if (vect is Vecteur2)
     {
         return(vect as Vecteur2);
     }
     else
     {
         throw new NotImplementedException("Not implemented function for others vectors");
     }
 }
Example #3
0
 /// <summary>
 /// Ajoute un segment a la liste
 /// </summary>
 /// <param name="segment">le segment a ajouter</param>
 public void Add(IVecteur segment)
 {
     segments.Add(segment);
 }
Example #4
0
 public override bool Equals(IVecteur vect2)
 {
     return(Equals((Vecteur2)vect2));
 }
Example #5
0
 /// <summary>
 /// Ajoute un segment a la liste
 /// </summary>
 /// <param name="segment">le segment a ajouter</param>
 public void Add(IVecteur segment)
 {
     segments.Add(segment);
 }
Example #6
0
 public abstract bool Equals(IVecteur vect2);