private void Awake() { dispatcher = playgroundController.EventDispatcher; eventChannel = new EventChannel(dispatcher); contentSchedulerService = Service.Get <ContentSchedulerService>(); localizer = Service.Get <Localizer>(); dataEntityCollection = Service.Get <CPDataEntityCollection>(); evergreenMusicTarget = GameObject.Find(EvergreenMusicTargetPath); EventManager.Instance.PostEvent(MusicEventName, EventAction.PlaySound, evergreenMusicTarget); createCoMusicTarget = GameObject.Find(CrateCoMusicTargetPath); Service.Get <EventDispatcher>().AddListener <ZoneTransitionEvents.ZoneTransition>(onZoneTransition); Service.Get <EventDispatcher>().AddListener <RewardServiceEvents.RewardsEarned>(onRewardsEarned); Service.Get <EventDispatcher>().AddListener <IslandTargetsEvents.ClockTowerStateChanged>(onClockTowerStateChange); if (DisableWhenNoGameServer.IsGameServerAvailable()) { gameTimer = new Timer(1f, repeat: true, delegate { onGameTimerTick(); }); animatorFloatingClock = ClockTimer.GetComponentInChildren <Animator>(); CoroutineRunner.Start(setScarecrowVisible(isVisible: true), this, "setScarecrowVisible"); CoroutineRunner.Start(setClockTimerVisible(isVisible: false), this, "setClockTimerVisible"); eventChannel.AddListener <IslandTargetsEvents.TargetsRemainingUpdated>(onTargetsRemainingUpdated); eventChannel.AddListener <IslandTargetsEvents.GameRoundStarted>(onRoundStarted); eventChannel.AddListener <IslandTargetsEvents.GameRoundEnded>(onRoundEnded); eventChannel.AddListener <IslandTargetsEvents.TargetGameTimeOut>(onGameTimeOut); eventChannel.AddListener <IslandTargetsEvents.StatsUpdated>(onStatsUpdated); if (TimeUtils.isMultipleOfXMinutesAfterTheHour(contentSchedulerService.PresentTime(), islandTargetsPlayground.EveryXMinutesAfterTheHour)) { gotoFiveSecsGameStartMarkState(); } else { InvokeRepeating("displayGameStartCountdown", 0f, 1f); } } else { ClockTimer.SetActive(value: false); WinStreakText.SetText(BestEverStreak.ToString()); DailyRecordText.transform.parent.gameObject.SetActive(value: false); } if (string.IsNullOrEmpty(BI_Tier1Name)) { BI_Tier1Name = "crate_co_game"; Log.LogError(this, $"Error: Tier1 name for BI is not set on '{base.gameObject.GetPath()}'"); } }
private void Start() { PreLobbyTimer.Format = formatTimer; LobbyTimer.Format = formatTimer; dataEntityCollection = Service.Get <CPDataEntityCollection>(); dispatcher = Service.Get <EventDispatcher>(); localPlayerSessionId = dataEntityCollection.LocalPlayerSessionId; localizer = Service.Get <Localizer>(); moveIconList = new List <DanceBattleMoveIcon>(); getDefinitions(); DanceBattleLobbyMmoItemObserver lobbyObserver = LobbyObserver; lobbyObserver.LobbyStartedAction = (Action <long>)Delegate.Combine(lobbyObserver.LobbyStartedAction, new Action <long>(onLobbyStarted)); DanceBattleLobbyMmoItemObserver lobbyObserver2 = LobbyObserver; lobbyObserver2.LobbyEndedAction = (System.Action)Delegate.Combine(lobbyObserver2.LobbyEndedAction, new System.Action(onLobbyEnded)); DanceBattleLobbyMmoItemObserver lobbyObserver3 = LobbyObserver; lobbyObserver3.LobbyPlayersUpdatedAction = (Action <PartyGamePlayerCollection>)Delegate.Combine(lobbyObserver3.LobbyPlayersUpdatedAction, new Action <PartyGamePlayerCollection>(onLobbyPlayersUpdated)); DanceBattleMmoItemObserver gameObserver = GameObserver; gameObserver.GameStartedAction = (System.Action)Delegate.Combine(gameObserver.GameStartedAction, new System.Action(onGameStarted)); DanceBattleMmoItemObserver gameObserver2 = GameObserver; gameObserver2.GameEndedAction = (System.Action)Delegate.Combine(gameObserver2.GameEndedAction, new System.Action(onGameEnded)); DanceBattleMmoItemObserver gameObserver3 = GameObserver; gameObserver3.TurnDataUpdatedAction = (Action <DanceBattleTurnData>)Delegate.Combine(gameObserver3.TurnDataUpdatedAction, new Action <DanceBattleTurnData>(onTurnStarted)); DanceBattleMmoItemObserver gameObserver4 = GameObserver; gameObserver4.ScoresUpdatedAction = (Action <DanceBattleScoreData>)Delegate.Combine(gameObserver4.ScoresUpdatedAction, new Action <DanceBattleScoreData>(onScoresUpdated)); DanceBattleAnimationEventHandler animEventHandler = AnimEventHandler; animEventHandler.OnStartTurnSequence = (System.Action)Delegate.Combine(animEventHandler.OnStartTurnSequence, new System.Action(startTurnSequence)); dispatcher.AddListener <DanceBattleEvents.TurnInputSent>(onTurnInputSent); setState(DanceBattleVisualsState.Off); if (!DisableWhenNoGameServer.IsGameServerAvailable()) { Screens[7].SetActive(value: false); } musicTargetObject = GameObject.Find(MusicTargetObjectPath); Content.LoadAsync(onMoveIconLoaded, MoveIconKey); }