コード例 #1
0
    // +++ life cycle +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    private void OnEnable()
    {
        _nvpStateMachine = new NvpStateMachine_Builder()
                           .AddGameState(NvpGameStatesEnum.Idle, new NvpGameState_IdleState())
                           .AddGameState(NvpGameStatesEnum.Title, new NvpGameState_TitleState(birdPrefab))
                           .AddGameState(NvpGameStatesEnum.CountDown, new NvpGameState_CountDownState())
                           .AddGameState(NvpGameStatesEnum.Play, new NvpGameState_PlayState())
                           .AddGameState(NvpGameStatesEnum.Score, new NvpGameState_ScoreState())
                           .AddGameState(NvpGameStatesEnum.GameOver, new NvpGameState_GameOverState())
                           .Build();

        _nvpStateMachine.DoStateTransition(NvpGameStatesEnum.Title);

        NvpEventBus.Events(GameEvents.OnPlayerScores).GameEventHandler     += OnPlayerScores;
        NvpEventBus.Events(GameEvents.OnPlayerHitsPipe).GameEventHandler   += OnPlayerHitsPipe;
        NvpEventBus.Events(GameEvents.OnGameOverFinished).GameEventHandler += OnGameOverFinished;
    }
コード例 #2
0
 public NvpStateMachine_Builder()
 {
     _nvpStateMachine            = new NvpStateMachine();
     _nvpStateMachine.gameStates = new Dictionary <NvpGameStatesEnum, INvpGameState>();
 }