Exemple #1
0
    public NrcGameStageObserver(NrcSceneLoader nrcSceneLoader)
    {
        _nrcSceneLoader   = nrcSceneLoader;
        _stageDataBase    = nrcSceneLoader.StageDataBase;
        _playerController = nrcSceneLoader.PlayerController;
        _gameUIController = nrcSceneLoader.GameUIController;
        _nowStageId       = 1;

        //スタート前カウントダウンが終了したときに呼ばれる
        _gameUIController.GameUIBeforeStarEffectService.GameUIBeforeStarEffectEndEvent += () =>
        {
            CharacterStart();
            _gameUIController.GameUICountDownService.StartAsync(_clearTime);
        };

        //ステージタイムリミット終了時に呼ばれる
        _gameUIController.GameUICountDownService.GameUICountDownEndEvent += () =>
        {
            CharacterPause();
            _gameUIController.GameUIStageClearEffectService.StartAsync();
        };

        //ステージクリア表示終了時に呼ばれる
        _gameUIController.GameUIStageClearEffectService.GameUIStageClearEffectEndEvent += () =>
        {
            CharacterPause();

            int lastStageNum = _stageDataBase.GetSize();
            if (lastStageNum == _nowStageId)
            {
                _gameUIController.GameUIGameClearEffectService.StartAsync();
            }
            else
            {
                NextStage();
            }
        };

        //EnemyTargetが全滅したときに呼ばれる
        NrcGameManager.NrcGameEnemyTargetService.EnemyTargetAllDeadEvent += () =>
        {
            CharacterPause();
            _gameUIController.Stop();
            _gameUIController.GameUIGameOverEffectService.StartAsync();
        };

        //ゲームオーバー表示終了時に呼ばれる
        _gameUIController.GameUIGameOverEffectService.GameUIGameOverEndEvent += () =>
        {
            CharacterPause();
            StageLoad(1);
        };

        _gameUIController.GameUIGameClearEffectService.GameUIGameClearEndEvent += () =>
        {        //ステージシーンの読み込み。
            {
                AsyncOperation ope = SceneManager.LoadSceneAsync("Title", LoadSceneMode.Single);
            }
        };
    }
Exemple #2
0
 public NrcGameCameraService(NrcSceneLoader nrcSceneLoader)
 {
     _playerController = nrcSceneLoader.PlayerController;
     _nrcSceneLoader   = nrcSceneLoader;
     //_mode = CAMERA_MODE.CAMERA_MODE_MAIN;
     //Change(_mode);
 }
Exemple #3
0
    /// <summary>
    /// 初期化
    /// </summary>
    /// <param name="nrcSceneLoader"></param>
    public static void Init(NrcSceneLoader nrcSceneLoader)
    {
        if (Instance != null)
        {
            Instance = null;
        }
        Instance = new NrcGameManager();

        Instance._nrcSceneLoader = nrcSceneLoader;
        NrcGameCameraService.Change(NrcGameCameraService.CAMERA_MODE.CAMERA_MODE_MAIN);
        NrcGameStageObserver.StageLoad(1);
    }
Exemple #4
0
 public NrcGameDatabaseService(NrcSceneLoader nrcSceneLoader)
 {
     _nrcSceneLoader = nrcSceneLoader;
 }
Exemple #5
0
 public NrcGameEnemyService(NrcSceneLoader nrcSceneLoader, NrcGameStageObserver nrcGameStageService)
 {
     _nrcSceneLoader      = nrcSceneLoader;
     _nrcGameStageService = nrcGameStageService;
 }
Exemple #6
0
 public NrcGameEnemyTargetService(NrcSceneLoader nrcSceneLoader)
 {
     _nrcSceneLoader = nrcSceneLoader;
 }
Exemple #7
0
 public NrcGameScoreService(NrcSceneLoader nrcSceneLoader)
 {
     _nrcSceneLoader   = nrcSceneLoader;
     _gameUIController = nrcSceneLoader.GameUIController;
 }