public void Down() { if (!(MarioAnimatedState is MarioDeadState)) { MarioPhysics.IsRunning = true; MarioPhysics.Down(); } }
public void Idle() { if (!(MarioAnimatedState is MarioDeadState)) { MarioPhysics.IsRunning = false; MarioAnimatedState.Idle(); MarioPhysics.Idle(); } }
public void Up() { if (!(MarioAnimatedState is MarioDeadState)) { MarioPhysics.IsRunning = true; MarioAnimatedState.Up(); MarioPhysics.Jump(); } }
public void Right() { if (!(MarioAnimatedState is MarioDeadState)) { MarioPhysics.IsRunning = true; MarioAnimatedState.Right(); MarioPhysics.MoveRight(); } }
public Mario() { MarioPowerUpState = new MarioSmallState(); MarioAnimatedState = new MarioIdleRightState(this); MarioPhysics = new MarioPhysics(OriginalPosition); time = Constant.Instance.InitialTime; action = true; MarioPhysics.IsRunning = false; Invincible = false; Fetch = false; }
public void Update(GameTime gameTime) { MarioAnimatedState.Update(gameTime); CheckDead(); MarioPhysics.Update(gameTime); time += gameTime.ElapsedGameTime.TotalSeconds; if (time > delay) { action = true; time = Constant.Constant.Instance.InitialTime; } }
public void Up() { if (!(MarioAnimatedState is MarioDeadState)) { if (MarioPhysics.IsGround) { SoundFactory.Instance.CreateJumpSmallSound(); } MarioPhysics.Jump(); MarioAnimatedState.Up(); MarioPhysics.IsGround = false; } }
public void Update(GameTime gametime) { if (damageTimer == Util.Instance.DamageTimer) { canTakeDamage = true; isFlash = false; damageTimer = Util.Instance.Zero; } if (!canTakeDamage) { damageTimer++; } if (CurrentPowerState is MarioStarBigState || CurrentPowerState is MarioStarSmallState) { if (starTimer == Util.Instance.FiveHundreds) { if (CurrentPowerState is MarioStarBigState) { CurrentPowerState = new MarioBigState(this); } else { CurrentPowerState = new MarioSmallState(this); } starTimer = Util.Instance.Zero; } starTimer++; } foreach (Fireball fireball in fireballs) { fireball.Update(gametime); } foreach (ScoreObject score in ScoreObjects) { score.Update(gametime); } Rectangle = new Rectangle((int)Location.X, (int)Location.Y, CurrentAnimationState.Width, CurrentAnimationState.Height); if (IsIdle) { PreviousAnimationState = CurrentAnimationState; CurrentAnimationState.Idle(); MarioPhysics.Idle(); } IsIdle = true; if (!isAlive) { CurrentAnimationState = new MarioDeadState(); } CurrentAnimationState.Update(gametime); MarioPhysics.Update(gametime); CheckDeath(); if (CurrentAnimationState is MarioDeadState) { deathTimer++; } if (deathTimer == Util.Instance.TwoHundreds) { deathTimer = Util.Instance.Zero; resetWorld = true; } }
public ManageJump(Mario mario) { mainMario = mario; physics = mario.Physics; }
public void FetchFlag() { Invincible = true; MarioAnimatedState = new MarioMovingRightState(this); MarioPhysics.MoveRight(); }