protected virtual void On_GAME_GameUnPaused(AbstractGameMode gameMode) { if (ARE_ENUMS_EQUAL(GameModeType, gameMode.GameModeType)) { IsRunning = true; } }
protected virtual void On_GAME_GameEnded(AbstractGameMode gameMode, bool wasAborted) { if (ARE_ENUMS_EQUAL(GameModeType, gameMode.GameModeType)) { IsRunning = false; } }
void Start() { switch (m_GameType) { case GameType.Jigsaw: break; case GameType.Racing: break; case GameType.Survival: m_GameMode = new SurvivalGameMode(); break; default: break; } m_Players = new List <Player>(); for (int i = 0; i < m_PlayerNum; i++) { m_Players.Add(new Player()); } //绑定方块掉落事件 if (m_GameMode is SurvivalGameMode) { m_Players[0].OnBrickFallOut += (m_GameMode as SurvivalGameMode).BrickFalloutEvent; //绑定更新生命值事件 (m_GameMode as SurvivalGameMode).OnFalloutCountChange += uiView.ChangeHeartCount; } //绑定UI事件 uiView.OnMoveLeft += this.MoveLeft; uiView.OnMoveRight += this.MoveRight; uiView.OnSpeedUp += this.SpeedUp; uiView.OnSpeedDown += this.SpeedDown; uiView.OnRotate += this.Rotate; uiView.OnRestart += this.Restart; uiView.OnLookRecordClick += this.StartLookRecord; OnGameEnd += uiView.HandleGameEnd; OnGameRestart += uiView.GameEndMenuMoveOut; OnScoreChange += uiView.HandleScoreChange; m_Players[0].OnChangeNextBrickView += uiView.ChangeNextBrickIcon; //开始游戏 m_Players[0].StartGame(); //播放音乐 AudioManager.instance.StopAllMusic(); AudioManager.instance.PlayMusic("Music_SurvivalGame"); m_RecordFile = new RecordFile(); m_RecordFile.randomSeed = m_Players[0].RandomSeed; }