Esempio n. 1
0
 public virtual void CaptureModelState(GameObject model_ptr)
 {
     pos              = SVector.FromVector2(model_ptr.Position);
     color            = SColor.FromColor(model_ptr.color);
     sprite_state     = model_ptr.Sprite.NowState();
     sprite_frame     = model_ptr.Sprite.NowFrame();
     sprite_direction = model_ptr.Sprite.Direction;
 }
Esempio n. 2
0
 public Monstar(Vector2 p, GameInstance g, Controller.Direction dir) :
     base(Load.MonstarTexture, new Sprite("Content.character.MonstarXml.xml"), p)
 {
     Mass   = 25;
     Damage = 1;
     this.g = g;
     Sprite.ChangeDirection(dir);
 }
Esempio n. 3
0
 protected override void ApplyCollision(Vector2 imp, PhysicalObject obj, float elapsed)
 {
     base.ApplyCollision(imp, obj, elapsed);
     if (obj is Monstar)
     {
         Controller.Direction other_dir = Controller.Direction.LEFT;
         if (Sprite.Direction == other_dir)
         {
             other_dir = Controller.Direction.RIGHT;
         }
         Sprite.ChangeDirection(other_dir);
     }
 }
Esempio n. 4
0
 /// <summary>
 /// Change the direction of the sprite (flip horizontally)
 /// </summary>
 /// <param name="new_dir">New direction</param>
 public void ChangeDirection(Controller.Direction new_dir)
 {
     if (new_dir != Direction)
     {
         Direction = new_dir;
         if (new_dir == Controller.Direction.RIGHT)
         {
             Effect = SpriteEffects.None;
         }
         if (new_dir == Controller.Direction.LEFT)
         {
             Effect = SpriteEffects.FlipHorizontally;
         }
     }
 }