예제 #1
0
        private void OnGamePlayStateChanged(GamePlayModel.EGamePlayState gamePlayState)
        {
            Type targetType = null;

            switch (gamePlayState)
            {
            case GamePlayModel.EGamePlayState.Load:
                targetType = typeof(GamePlayStateLoad);
                break;

            case GamePlayModel.EGamePlayState.Gathering:
                targetType = typeof(GamePlayStateGathering);
                break;

            case GamePlayModel.EGamePlayState.Unloading:
                targetType = typeof(GamePlayStateUnloading);
                break;

            case GamePlayModel.EGamePlayState.Pause:
                targetType = typeof(GamePlayStatePause);
                break;
            }

            if (targetType != null &&
                (CurrentStateBehaviour == null ||
                 targetType != CurrentStateBehaviour.GetType()))
            {
                GoToState(targetType);
            }
        }
예제 #2
0
 private void OnGamePlayStateChanged(GamePlayModel.EGamePlayState gamePlayState)
 {
     GoToState((int)gamePlayState);
 }