コード例 #1
0
 public override void WeCollided(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, PointF CameraLocation)
 {
     if (sprite.Properties.isTile)
     {
         this.Properties.isALive = false;
     }
 }
コード例 #2
0
 public void Actions(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, PointF CameraLocation)
 {
     if (sprite.Properties.isPlayer && collidedDirection == Core.Sprite.SpriteProperties.Directions.Up)
     {
         sprite.Properties.VelocityRect.Y = -0.38f;
         ((Mario.SampleGame.Players.Mario)sprite).JumpLength = new RectangleF(sprite.Properties.CollisionRect.X,
                                                                              sprite.Properties.CollisionRect.Y - (sprite.Properties.CollisionRect.Height),
                                                                              sprite.Properties.CollisionRect.Width, sprite.Properties.CollisionRect.Height);
         ((Mario.SampleGame.Players.Mario)sprite).jumping = true;
         sprite.setAnimation(3);
         this.Properties.VelocityRect.X = 0f;
         setAnimation(1);
     }
     if (sprite.Properties.isPlayer && (collidedDirection == Core.Sprite.SpriteProperties.Directions.Left || collidedDirection == Core.Sprite.SpriteProperties.Directions.Right))
     {
         if (this.Properties.Alpha == 0)
         {
             ((Mario.SampleGame.Players.Mario)sprite).isdead = true;
         }
     }
     if (sprite.GetType() == typeof(SampleGame.Bullets.Fire) || sprite.GetType() == typeof(SampleGame.Bullets.Bullet))
     {
         sprite.Properties.isALive = false;
         Kill();
     }
     if (sprite.GetType() == typeof(SampleGame.Materials.QuestionBlock) && sprite.Properties.VelocityRect.Y != 0)
     {
         Kill();
     }
     if (sprite.Properties.isTile && (collidedDirection == Core.Sprite.SpriteProperties.Directions.Right || collidedDirection == Core.Sprite.SpriteProperties.Directions.Left))
     {
         flipMove();
     }
 }
コード例 #3
0
 public override bool OtherCollided(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, PointF CameraLocation)
 {
     if (sprite.Properties.isPlayer)
     {
         this.Properties.GameScreen.isFinish = true;
     }
     return(false);
 }
コード例 #4
0
 public override bool OtherCollided(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, PointF CameraLocation)
 {
     if (sprite.Properties.isPlayer)
     {
         this.Properties.isCollisionable = false;
         this.Properties.VelocityRect.Y -= 0.60f;
         this.isdie = true;
     }
     return(false);
 }
コード例 #5
0
 public override bool OtherCollided(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, PointF CameraLocation)
 {
     if (collidedDirection == Core.Sprite.SpriteProperties.Directions.Down)
     {
         if (sprite.Properties.VelocityRect.Y < 0)
         {
             sprite.Properties.VelocityRect.Y = -sprite.Properties.VelocityRect.Y;
         }
     }
     return(base.OtherCollided(sprite, collidedDirection, CameraLocation));
 }
コード例 #6
0
 public override bool OtherCollided(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, PointF CameraLocation)
 {
     if (sprite.Properties.isPlayer)
     {
         return(base.OtherCollided(this, collidedDirection, CameraLocation));
     }
     else
     {
         return(false);
     }
 }
コード例 #7
0
 public override void WeCollided(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, PointF CameraLocation)
 {
     if (sprite.GetType() == typeof(Bullets.ShipFire) || sprite.GetType() == typeof(Guns.Ship))
     {
         return;
     }
     if (sprite.Properties.isTile || sprite.Properties.isPlayer)
     {
         this.Properties.isALive = false;
     }
 }
コード例 #8
0
 public override void WeCollided(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, PointF CameraLocation)
 {
     if (sprite.Properties.isTile)
     {
         if (collidedDirection == Core.Sprite.SpriteProperties.Directions.Up || collidedDirection == Core.Sprite.SpriteProperties.Directions.Down)
         {
             this.Properties.VelocityRect.Y = -this.Properties.VelocityRect.Y;
         }
         if (collidedDirection == Core.Sprite.SpriteProperties.Directions.Left || collidedDirection == Core.Sprite.SpriteProperties.Directions.Right)
         {
             this.Properties.isALive = false;
         }
     }
 }
コード例 #9
0
 public override bool OtherCollided(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, PointF CameraLocation)
 {
     if (collidedDirection == Core.Sprite.SpriteProperties.Directions.Down)
     {
         if (sprite.Properties.VelocityRect.Y < 0)
         {
             sprite.Properties.VelocityRect.Y = -sprite.Properties.VelocityRect.Y;
         }
     }
     if (collidedDirection == Core.Sprite.SpriteProperties.Directions.Up)
     {
         sprite.Properties.CollisionRect.X += (VelocityVal.X * this.Properties.GameScreen.time);
     }
     return(base.OtherCollided(sprite, collidedDirection, CameraLocation));
 }
コード例 #10
0
 public override bool OtherCollided(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, PointF CameraLocation)
 {
     if (collidedDirection == Core.Sprite.SpriteProperties.Directions.Down)
     {
         if (!isdie && sprite.Properties.isPlayer)
         {
             Coin coin = new Coin();
             coin.Properties.CollisionRect = new RectangleF(this.Properties.CollisionRect.X, this.Properties.CollisionRect.Y,
                                                            coin.Properties.CollisionRect.Width, coin.Properties.CollisionRect.Height);
             this.Properties.GameScreen.Materials.Add(coin);
             coin.Properties.isCollisionable = false;
             coin.Properties.VelocityRect.Y  = -0.60f;
             coin.isdie = true;
             this.isdie = true;
             setAnimation(1);
         }
         if (sprite.Properties.VelocityRect.Y < 0)
         {
             sprite.Properties.VelocityRect.Y = -sprite.Properties.VelocityRect.Y;
         }
     }
     return(base.OtherCollided(sprite, collidedDirection, CameraLocation));
 }
コード例 #11
0
 public override bool OtherCollided(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, System.Drawing.PointF CameraLocation)
 {
     HitKontrol((Core.Material)sprite);
     return(true);
 }
コード例 #12
0
 public override bool OtherCollided(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, PointF CameraLocation)
 {
     return(true);
 }
コード例 #13
0
 public override void WeCollided(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, PointF CameraLocation)
 {
     Actions(sprite, collidedDirection, CameraLocation);
 }
コード例 #14
0
 public override bool OtherCollided(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, PointF CameraLocation)
 {
     Actions(sprite, collidedDirection, CameraLocation);
     return(false);
 }
コード例 #15
0
 public void Actions(Core.Sprite.Sprite sprite, Core.Sprite.SpriteProperties.Directions collidedDirection, PointF CameraLocation)
 {
     if (sprite.Properties.isPlayer && collidedDirection == Core.Sprite.SpriteProperties.Directions.Up)
     {
         sprite.Properties.VelocityRect.Y = -0.38f;
         ((Mario.SampleGame.Players.Mario)sprite).JumpLength = new RectangleF(sprite.Properties.CollisionRect.X,
                                                                              sprite.Properties.CollisionRect.Y - (sprite.Properties.CollisionRect.Height),
                                                                              sprite.Properties.CollisionRect.Width, sprite.Properties.CollisionRect.Height);
         ((Mario.SampleGame.Players.Mario)sprite).jumping = true;
         sprite.setAnimation(3);
         if (this.currentAnimatorIndex == 2)
         {
             setAnimation(1);
             this.Properties.VelocityRect.X = sprite.Properties.VelocityRect.X;
             return;
         }
         if (this.currentAnimatorIndex == 1)
         {
             setAnimation(2);
             this.Properties.VelocityRect.X = 0;
             return;
         }
         if (this.currentAnimatorIndex == 0)
         {
             this.Properties.VelocityRect.X = 0f;
             setAnimation(2);
             return;
         }
     }
     if (sprite.Properties.isPlayer && (collidedDirection == Core.Sprite.SpriteProperties.Directions.Left ||
                                        collidedDirection == Core.Sprite.SpriteProperties.Directions.Right))
     {
         if (this.Properties.Alpha == 0 && this.currentAnimatorIndex == 2)
         {
             sprite.OtherCollided(this, collidedDirection, CameraLocation);
             setAnimation(1);
             this.Properties.VelocityRect.X = sprite.Properties.VelocityRect.X;
             return;
         }
         if (this.Properties.Alpha == 0 && (this.currentAnimatorIndex == 1 || this.currentAnimatorIndex == 0))
         {
             if (sprite.Properties.VelocityRect.Y < 0f)
             {
                 return;
             }
             if (this.currentAnimatorIndex == 1 && sprite.Properties.VelocityRect.X != this.Properties.VelocityRect.X && this.Properties.VelocityRect.X != 0)
             {
                 ((Mario.SampleGame.Players.Mario)sprite).isdead = true;
             }
             if (this.currentAnimatorIndex == 0)
             {
                 ((Mario.SampleGame.Players.Mario)sprite).isdead = true;
             }
         }
     }
     if (sprite.GetType() == typeof(SampleGame.Bullets.Fire) || sprite.GetType() == typeof(SampleGame.Bullets.Bullet))
     {
         sprite.Properties.isALive = false;
         Kill();
     }
     if (sprite.GetType() == typeof(SampleGame.Materials.QuestionBlock) && sprite.Properties.VelocityRect.Y != 0)
     {
         Kill();
     }
     if (sprite.Properties.isTile && (collidedDirection == Core.Sprite.SpriteProperties.Directions.Right || collidedDirection == Core.Sprite.SpriteProperties.Directions.Left))
     {
         if (this.currentAnimatorIndex == 1)
         {
             this.Properties.VelocityRect.X = -this.Properties.VelocityRect.X;
         }
         else
         {
             flipMove();
         }
     }
     if (sprite.GetType() == typeof(Koopa) &&
         (this.currentAnimatorIndex == 1 || sprite.currentAnimatorIndex == 1) &&
         (this.Properties.VelocityRect.X != 0 || sprite.Properties.VelocityRect.X != 0))
     {
         this.Kill();
         ((Koopa)sprite).Kill();
     }
     if (sprite.GetType() == typeof(Goomba) && this.currentAnimatorIndex == 1 &&
         this.Properties.VelocityRect.X != 0)
     {
         ((Goomba)sprite).Kill();
     }
 }