예제 #1
0
        public void Enter(BazingaPlayer player)
        {
            var offset = FixtureOffset * new Vector2(player.Animation.IsFlippedHorizontally ? -1 : 1, 1);

            player.SetBodyFixture(FixtureRadiusX, FixtureRadiusY, offset);
            player.Animation.PlaySprite(SpriteState.Idle, true);
        }
        public void Enter(BazingaPlayer player)
        {
            var offset = FixtureOffset * new Vector2(player.Animation.IsFlippedHorizontally ? -1 : 1, 1);

            player.SetBodyFixture(FixtureRadiusX, FixtureRadiusY, offset);
            player.Animation.Repeat = false;
            player.Animation.PlaySprite(Animations.SpriteState.Slide);
            player.Body.OnCollision += PlayerCollisionHandler;
        }
        public void Enter(BazingaPlayer player)
        {
            var offset = FixtureOffset * new Vector2(player.Animation.IsFlippedHorizontally ? -1 : 1, 1);
            var xForce = JumpXForce * (player.Animation.IsFlippedHorizontally ? -1 : 1);

            player.SetBodyFixture(FixtureRadiusX, FixtureRadiusY, offset);
            player.Animation.PlaySprite(SpriteState.Jump, false);
            player.Body.ApplyLinearImpulse(new Vector2(0, JumpYForce));

            if (Math.Abs(player.Body.LinearVelocity.X) >= 1)
            {
                player.Body.ApplyForce(new Vector2(xForce, 0));
            }
        }
예제 #4
0
 public void Enter(BazingaPlayer player)
 {
     player.SetBodyFixture(FixtureRadiusX, FixtureRadiusY, FixtureOffset);
     player.Body.Awake = true;
 }