public override void Initialize() { base.Initialize(); IdleEffects(); Speed = Vector2.Zero; Direction = Direction.Right; }
private Vector2 CalculateSpeedOnDirection(Direction direction, GameTime gameTime) { float time = gameTime.GetElapsedSeconds(); Vector2 accel = direction.Acceleration; if (mobile.State == HitBoxState.Airborne) { accel.X /= MagicNumbers.AerialAccelerationPenaltyOnX; } Vector2 velocity = accel * direction * (float)Math.Pow(time, MagicNumbers.GameSpeedPower); return velocity; }
private void ToggleDirection() { if (Direction == Direction.Right) { Direction = Direction.Left; } else { Direction = Direction.Right; } }