public void Draw(SpriteBatch spriteBatch, GameTime gameTime) { // If selected, show some way that it is selected /* * if (IsSelected) * { * * } */ // Draw PC's sprite using PlayableObject's Draw method. PlayableObjectState.Draw(spriteBatch, gameTime); Hand.Draw(spriteBatch, gameTime); }
public void Draw(SpriteBatch spriteBatch, GameTime gameTime) { if (TakenDamageState && !Mario.Instance.StarPower) { if (takenDamageBuffer <= 0) { invisibleBuffer = GameValues.MarioInvisibleBuffer; visibleBuffer = GameValues.MarioVisibleBuffer; takenDamageBuffer = GameValues.MarioTakenDamageBuffer; TakenDamageState = false; } else if (invisibleBuffer > 0 && visibleBuffer == 0) { invisibleBuffer--; } else if (invisibleBuffer <= 0) { invisibleBuffer = 0; if (visibleBuffer < GameValues.MarioInvisibleBuffer) { PlayableObjectState.Draw(spriteBatch, gameTime); visibleBuffer++; } else { invisibleBuffer = GameValues.MarioInvisibleBuffer; visibleBuffer = GameValues.MarioVisibleBuffer; } } takenDamageBuffer--; } else { PlayableObjectState.Draw(spriteBatch, gameTime); } for (int i = 0; i < fireballs.Length; i++) { fireballs[i].Draw(spriteBatch, gameTime); } }
public void Update(GameTime gameTime) { // Move PC around here. if (Position != FuturePosition) { Move(); Hand.IsActive = false; } // Update Hand if not moving. else { Hand.Update(gameTime); } PlayableObjectState.Update(gameTime); }
public void Update(GameTime gameTime) { if (this.PlayableObjectState.ToString() != "SuperMario.MarioStates.SmallMarioFlagSlideEnd" && this.PlayableObjectState.ToString() != "SuperMario.MarioStates.BigMarioFlagSlideEnd" && this.PlayableObjectState.ToString() != "SuperMario.MarioStates.FireMarioFlagSlideEnd") { MaxVelocity = new Vector2(MaxHorizontalVelocity, GameValues.PhysicsMaxYVelocity); } else { MaxVelocity = new Vector2(MaxHorizontalVelocity, 0); } if (Position.Y > GameValues.MarioDeathYPosition) { if (PlayableObjectState.ToString() != "SuperMario.MarioStates.DeadMario") { PlayableObjectState = new DeadMario(this); } Lives--; if (Lives >= 1) { GameStateMachine.Instance.GameState = new MarioRespawnState(); } else { if (deathBuffer > 0) { deathBuffer--; } else { deathBuffer = GameValues.MarioDeathBuffer; GameStateMachine.Instance.GameState = new GameOverState(); } } } if (GameStateMachine.Instance.GameState.ToString() != "SuperMario.GameStates.MarioFreezeGameAnimationState") { Physics.Move(this); } PlayableObjectStateTransitionMachine.InvisibleBarrierCollision(); Level.Instance.InvisibleBarrier.Update(); for (int i = 0; i < fireballs.Length; i++) { fireballs[i].Update(gameTime); } if (StarPower) { if (starBuffer > 0) { starBuffer--; } else { starBuffer = GameValues.MarioStarBuffer; StarPower = !StarPower; } } PlayableObjectState.Update(gameTime); }
public void HandleDynamicCollision(string collisionDirection, IDynamicObject dynamicObjectState) { if (Mario.Instance.PlayableObjectState.ToString() != "SuperMario.MarioStates.DeadMario") { PlayableObjectStateTransitionMachine.DynamicStateChange(collisionDirection, PlayableObjectState.ToString(), dynamicObjectState); } }