Beispiel #1
0
 /// <summary>
 /// Retire l'acteur du monde pour supprimer son ancienne collision (si il en avait une) du gestionnaire de
 /// collision et lui attribue sa nouvelle collision, puis remet l'acteur dans le monde.
 /// </summary>
 /// <param name="actorCollision"> La nouvelle collision de l'acteur </param>
 public virtual void SetCollision(ActorCollision actorCollision)
 {
     World.GetWorld().RemoveActor(this);
     Collision?.Dispose();
     Collision = actorCollision;
     World.GetWorld().AddActor(this);
 }
 /// <summary>
 /// La fonction SetCollision() de la classe Actor est légèrement modifiée pour calculer ensuite l'ordonnée
 /// relative à l'acteur pour afficher sa barre de vie, si son affichage a été demandé à la création de
 /// l'acteur.
 /// </summary>
 /// <param name="actorCollision"></param>
 public sealed override void SetCollision(ActorCollision actorCollision)
 {
     base.SetCollision(actorCollision);
     if (_lifeSprite != null)
     {
         _lifeBar.WidthRatio = actorCollision.Hitbox.Width * LifebarWidth / EmptyBar.Width;
     }
 }
Beispiel #3
0
        /// <summary>
        /// Ressussite l'acteur en lui restaurant sa collision, en lui jouant si possible une animation de type Birth
        /// (en donnant Stand comme type d'animation par défaut) et en le remettant dans le monde.
        /// </summary>
        public virtual void Revive()
        {
            _dead = false;
            if (Collision != null)
            {
                Collision = new ActorCollision(Collision);
            }

            var animation = SpriteHandler as AnimationHandler;

            if (animation != null)
            {
                animation.PlayAnimation(AnimationType.Birth, false);
                animation.AnimationType = AnimationType.Stand;
            }

            World.GetWorld().AddActor(this);
        }
 /// <summary>
 /// Verrouille la fonction SetCollision, car elle n'est pas destinée à être réécrite.
 /// </summary>
 /// <param name="actorCollision"> La nouvelle collision de l'acteur </param>
 public sealed override void SetCollision(ActorCollision actorCollision)
 {
     base.SetCollision(actorCollision);
 }