예제 #1
0
 private void Construct(GameStateChangedSignal gameStateChangedSignal, StartGameSignal startGameSignal,
                        ReturnToMenuSignal returnToMenuSignal)
 {
     _gameStateChangedSignal = gameStateChangedSignal;
     _startGameSignal        = startGameSignal;
     _returnToMenuSignal     = returnToMenuSignal;
 }
예제 #2
0
 public void Dispose()
 {
     _startGameSignal      -= OnStartGame;
     _gamePausedSignal     -= OnPauseGame;
     _resumeGameSignal     -= OnResumeGame;
     _gameOverSignal       -= OnGameOver;
     _waitingToStartSignal -= OnWaitingToStart;
 }
예제 #3
0
 private void ListenSignals()
 {
     _startGameSignal      += OnStartGame;
     _gamePausedSignal     += OnPauseGame;
     _resumeGameSignal     += OnResumeGame;
     _gameOverSignal       += OnGameOver;
     _waitingToStartSignal += OnWaitingToStart;
 }
예제 #4
0
        public override void OnRegister()
        {
            base.OnRegister();

            StartGameSignal.AddListener(() => View.gameObject.SetActive(true));
            StopGameSignal.AddListener(() => View.gameObject.SetActive(false));

            View.OnChooseBallColor += ChoseBallColorButtonSignal.Dispatch;
        }
예제 #5
0
 public override void OnRegister()
 {
     base.OnRegister();
     CurrentScoreChangedSignal.AddListener(View.SetCurrentScore);
     StartGameSignal.AddListener(() =>
     {
         View.SetBestScore(ScoreModel.BestScore);
     });
 }
예제 #6
0
 public GameController(
     StartGameSignal startGameSignal,
     IPopupManager popupManager,
     GameStateManager gameStateManager
     )
 {
     this.startGameSignal  = startGameSignal;
     this.popupManager     = popupManager;
     this.gameStateManager = gameStateManager;
 }
예제 #7
0
        public void Initilaze()
        {
            Assert.IsNotNull(_levelController);
            Assert.IsNotNull(_levelPrefabsSettings);
            _currentLevel = _levelPrefabsSettings.levels[0];

            _startGameSignal       += OnGameStart;
            _gameOverSignal        += OnGameOver;
            _onLevelSelectedSignal += OnLevelSelected;
        }
예제 #8
0
 public override void OnRegister()
 {
     base.OnRegister();
     StartGameSignal.AddListener(() =>
     {
         View.gameObject.SetActive(true);
     });
     StopGameSignal.AddListener(() =>
     {
         View.gameObject.SetActive(false);
     });
 }
예제 #9
0
 public void Construct(
     GameStateManager stateManager,
     IPopupManager popupManager,
     INetworkService networkService,
     StartGameSignal startGameSignal
     )
 {
     this.stateManager   = stateManager;
     this.popupManager   = popupManager;
     this.networkService = networkService;
     startGameSignal    += OnStartGame;
 }
예제 #10
0
        private void AddListeners()
        {
            _startGameSignal  += OnGameStarted;
            _gamePausedSignal += OnGamePause;
            _gameOverSignal   += OnGameOver;

            _onBaseExplodedSignal   += OnBaseExploded;
            _onBrickHitSignal       += OnBrickHit;
            _onWallHitSignal        += OnWallHit;
            _onPlayerExplodedSignal += OnPlayerExploded;
            _onPlayerShootSignal    += OnPlayerShoot;
            _onEnemyExplodedSignal  += OnEnemyExploded;

            _onSfxVolChangedSignal   += OnSFXVolumeChange;
            _onMusicVolChangedSignal += OnMusicVolumeChange;
        }
예제 #11
0
        /// <summary>
        /// On register mediator
        /// </summary>
        public override void OnRegister()
        {
            PlayGameSignal.AddListener(() =>
            {
                foreach (Transform item in View.transform)
                {
                    item.gameObject.SetActive(true);
                }

                BallsStateService.HasPaused = false;
                DOTween.TogglePauseAll();
            });

            PauseGameSignal.AddListener(() =>
            {
                BallsStateService.HasPaused = true;
                DOTween.TogglePauseAll();

                foreach (Transform item in View.transform)
                {
                    item.gameObject.SetActive(false);
                }
            });

            StartGameSignal.AddListener(() =>
            {
                BallsStateService.SpawnCount = View.SpawnCount;
                for (var i = 0; i < View.SpawnCount; i++)
                {
                    View.SpawnBall();
                }
            });

            SpawnBallsSignal.AddListener(() =>
            {
                BallsStateService.CurrentStageBallsCount = 0;
                for (var i = 0; i < View.SpawnCount; i++)
                {
                    View.SpawnBall();
                }
            });
        }
예제 #12
0
 private void RestartGame()
 {
     EntityRoot.DeleteChildren();
     _gameOver = false;
     StartGameSignal.Dispatch();
 }
예제 #13
0
 public void Construct(GameStateChangedSignal gameStateChangedSignal, StartGameSignal startGameSignal)
 {
     _gameStateChangedSignal = gameStateChangedSignal;
     _startGameSignal        = startGameSignal;
 }
예제 #14
0
 public override void Execute()
 {
     StopGameSignal.Dispatch();
     ScoreModel.CurrentScore = 0;
     StartGameSignal.Dispatch();
 }
예제 #15
0
 public DummyPhotonService(StartGameSignal startGameSignal)
 {
     this.startGameSignal = startGameSignal;
 }
예제 #16
0
 public override void Enter()
 {
     _gameStateChangedSignal.Fire(this);
     _startGameSignal += OnStartGame;
 }
예제 #17
0
 public override void Exit()
 {
     _startGameSignal -= OnStartGame;
 }
예제 #18
0
        private void ShowInGame()
        {
            SetActive(false, true, false);

            StartGameSignal.Dispatch();
        }
예제 #19
0
 public override void Execute()
 {
     UiController.HideGameOverPanel();
     StartGameSignal.Dispatch();
 }
예제 #20
0
 public void SignalHandler(StartGameSignal arg)
 {
     need_camera = true;
 }
예제 #21
0
 public void StartGameBtnPressed()
 {
     StartGameSignal.Dispatch();
 }