private void Start() { ui = FindObjectOfType <UI_ManagerBase>(); GameManager gm = FindObjectOfType <GameManager>(); lvl = FindObjectOfType <LevelManager>(); soundMng = GetComponent <SoundManager>(); if (gm == null && lvl != null) { instance = this; ui.Setup(gm); soundMng.Init(); lvl.Init(ui, speedrunMode); if (speedrunMode) { PlayerInputManager.SetCanReadInput(false); lvl.GetPlayer().GetHealthController().SetCanLoseHealth(false); ui.GetGameplayManager().GetCountdownPanel().OnCountdownEnd += HandleOnCountdownEnd; ui.ToggleMenu(MenuType.Countdown); } else { PlayerInputManager.SetCanReadInput(true); ui.ToggleMenu(MenuType.Game); } } else { DestroyImmediate(gameObject); } }
/// <summary> /// Funzione che cerca un ui manager in scena e se è diverso da quello precedente lo sostituisce /// </summary> public UI_ManagerBase FindUIManager() { UI_ManagerBase newUi = FindObjectOfType <UI_ManagerBase>(); if (newUi != uiManager) { uiManager = newUi; uiManager.Setup(this); } return(uiManager); }