//Constructor private Managers() { if (m_managers == null) { m_managers = GameObject.FindGameObjectWithTag("Managers"); if (m_managers == null) { //Create the gameObject m_managers = GameObject.Instantiate(Resources.Load("Prefabs/GamePrefabs/Managers")) as GameObject; m_managers.name = "Managers"; //If the managers is not created, then ERROR Assert.assert(m_managers != null, "Error creating the Managers"); } m_GameMgr = m_managers.GetSafeComponent<gameMgr>(); m_InputMgr = m_managers.GetSafeComponent<inputMgr>(); m_SpawnerMgr = m_managers.GetSafeComponent<spawnerMgr>(); m_GameStateMgr = m_managers.GetSafeComponent<gameStateMgr>(); m_StorageMgr = m_managers.GetSafeComponent<storageMgr>(); m_SceneMgr = m_managers.GetSafeComponent<sceneMgr>(); m_TimeMgr = m_managers.GetSafeComponent<timeManager>(); //This object is not destroyed between scenes GameObject.DontDestroyOnLoad(m_managers); } }
public void DesRegisterReturn(gameStateMgr.states states, ReturnEnter returnEnter) { if (m_returnDelegates.ContainsKey((int)states)) { m_returnDelegates[(int)states] -= returnEnter; } }
public void RegisterReturn(gameStateMgr.states states, ReturnEnter returnEnter) { if (m_returnDelegates.ContainsKey((int)states)) { m_returnDelegates[(int)states] += returnEnter; } else { m_returnDelegates.Add((int)states, returnEnter); } }
void Awake() { m_gameStateMgr = Managers.GetInstance.GameStateMgr; }