Example #1
0
 private void DoAnimation()
 {
   TimerAnimation.Stop();
   Etape++;
   if (Etape > NbEtapes)
   {
     if (ResolutionAutomatiqueEnCours)
     {
       Trace("ResolutionAutomatiqueAvancePosition");
       int posVide = Jeu.ResolutionAutomatiqueAvancePosition();
       if (Jeu.ResolutionAutomatiqueIsResolu())
       {
         AnimationEnCours = false;
         ResolutionAutomatiqueEnCours = false;
         ResolutionAutomatiqueOver?.Invoke(this, EventArgs.Empty);
         PbPlateau.Refresh();
         return;
       }
       DeltaDrawAnimation = ResoudreAutomatiquementCalculeDeltaDrawAnimation();
       Etape = 0;
     }
     else
     {
       int posVide = Jeu.PositionPiece(Jeu.CaseVide);
       posVide += DeltaAnimation;
       Jeu.SwitchVide(posVide);
       if (posVide == PosDestination)
       {
         AnimationEnCours = false;
         PbPlateau.Refresh();
         return;
       }
       Etape = 0;
       PosPieceAnimation = posVide + DeltaAnimation;
     }
   }
   PbPlateau.Refresh();
   TimerAnimation.Start();
 }
Example #2
0
 public void ChangeImage(Image image)
 {
   Image = image;
   PbPlateau.Refresh();
 }