예제 #1
0
 private void RemoveTransitionState()
 {
     GameObjectManager.Instance.Mario = DecoratedMario;
     MarioSprite = SpriteFactory.Instance.CreateSprite(MarioFactory.Instance.GetSpriteDictionary[MarioPowerupState.GetType()][MarioMovementState.GetType()]);
     if (DecoratedMario.MarioPowerupState is DeadMarioPowerupState)
     {
         Game1.Instance.Reset();
     }
 }
예제 #2
0
 public TransitionStateMarioDecorator(IMario mario, MarioPowerupState marioPowerupState, MarioPowerupState newState) : base(mario)
 {
     newSprite     = SpriteFactory.Instance.CreateSprite(MarioFactory.Instance.GetSpriteDictionary[marioPowerupState.GetType()][MarioMovementState.GetType()]);
     oldSprite     = SpriteFactory.Instance.CreateSprite(MarioFactory.Instance.GetSpriteDictionary[newState.GetType()][MarioMovementState.GetType()]);
     currentSprite = oldSprite;
 }