Пример #1
0
        protected void resetContext()
        {
            LevelContext context = new LevelContext()
            {
                Ghosts   = new List <Model.Ghost>(),
                MapIndex = 1
            };

            GameStateMachine.getInstance().LevelContext = context;
        }
        public override void goToNextState()
        {
            LevelContext context = GameStateMachine.getInstance().LevelContext;

            context.MapIndex += 1;
            if (context.MapIndex == 5)
            {
                resetContext();
                changeState(GameStateMachine.getInstance().GameFinishedState);
            }
            else
            {
                changeState(GameStateMachine.getInstance().GameDisplay);
                GameStateMachine.getInstance().LevelContext = context;
            }
            // don't call the base or the context will be reset
            //base.goToNextState();
        }