public override void Revive() { if (!(previousState is MarioPowerStateFire || previousState is MarioPowerStateSuper)) { previousState = new MarioPowerStateNormal(Context); Previous = Mario.PowerStateType.Normal; Context.UpdateTexture(); } }
public override void SuperMushroom() { if (!(previousState is MarioPowerStateFire)) { previousState = new MarioPowerStateSuper(Context); Previous = Mario.PowerStateType.Super; Context.UpdateTexture(); } }
public void ChangeWorld() { int oldScores = world.Mario.Scores; int oldLifes = world.Mario.lifes; IMarioPowerState oldState = world.Mario.CurrentPowerState; if (isPrimary) { oldLocation = world.Mario.Location; ChangeToUnderground(); } else { ChangeToPrimaryWorld(); world.Mario.Location = new Vector2(oldLocation.X, oldLocation.Y - 20); } isPrimary = !isPrimary; world.Mario.Scores = oldScores; world.Mario.lifes = oldLifes; world.Mario.CurrentPowerState = oldState; }
public void ChangeToBowserWorld() { isBlack = true; int oldScores = world.Mario.Scores; int oldLifes = world.Mario.lifes; IMarioPowerState oldState = world.Mario.CurrentPowerState; world = WorldFactory.CreateBowserWorld(); world.Mario.Scores = oldScores; world.Mario.lifes = oldLifes; world.Mario.CurrentPowerState = oldState; GameClass.collisionDetection = new AllCollisionHandler(this); GameClass.ControllersList = new List <IController>(); GameClass.ControllersList.Add(new KeybroadController(GameClass)); GameClass.ControllersList.Add(new GamepadController(GameClass)); GameClass.ControllersList.Add(new MouseController(GameClass)); if (state is WorldState) { WorldState temp = (WorldState)state; temp.level = WorldState.WorldLevel.World2_2; state = temp; } }
public MarioPowerStateStar(Mario context) : base(context) { previousState = Context.PowerState; }
public override void RecievedFireFlower() { previousState = new MarioPowerStateFire(Context); Previous = Mario.PowerStateType.Fire; Context.UpdateTexture(); }