private void MultiControllerStateChanged(MultiplayerController.State newState, ScenesTransitionSetupDataSO transitionSetupData, DiContainer diContainer, MultiplayerController sync = null) { if (newState == MultiplayerController.State.Gameplay) { sync.stateChangedEvent -= (state) => { MultiControllerStateChanged(state, transitionSetupData, diContainer, sync); }; GameSceneSceneWasLoaded(transitionSetupData, diContainer, sync); } }
public void OnMultiplayerStateChanged(MultiplayerController.State state) { if (state == MultiplayerController.State.Gameplay) { // Gameplay controllers don't exist on the initial load of GameCore, so we need to delay it until later. // Additionally, waiting until Gameplay means we don't need to hook into the multiplayer audio sync controllers. HandleSongStart(); } }
private void MultiplayerController_stateChangedEvent(MultiplayerController.State multiplayerState) { if (multiplayerState == MultiplayerController.State.Gameplay) { SetupMapDataAndMisc(); } else if (multiplayerState == MultiplayerController.State.Finished) { LevelFinishedEvent(); } }
// Short circuit which stops Tick() from executing when in gameplay private void MultiplayerController_stateChangedEvent(MultiplayerController.State state) => tick = state != MultiplayerController.State.Gameplay;