Esempio n. 1
0
    public void NextScene()
    {
        if (m_currentScene >= 0)
        {
            m_allScenes[m_currentScene].SceneInstance.gameObject.SetActive(false);
        }
        m_currentScene++;
        if (m_currentScene < m_allScenes.Length)
        {
            SceneParent sceneParent = m_allScenes[m_currentScene].SceneInstance;
            sceneParent.gameObject.SetActive(true);
            PlayerSpawn.RespawnAll();
            CameraControl.Instance.GoTo(sceneParent.transform.position);

            if (OnSceneChanged != null)
            {
                OnSceneChanged(sceneParent);
            }
        }
    }
Esempio n. 2
0
    public void NotifySceneLoaded(SceneParent parent)
    {
        int index = 0;

        for (int i = 0; i < m_allScenes.Length; i++)
        {
            if (m_allScenes[i].SceneName == parent.SceneName)
            {
                index = i;
                m_allScenes[i].SceneInstance = parent;
                parent.gameObject.SetActive(false);
                break;
            }
        }

        // hardcoded scene height
        parent.transform.position = new Vector3(0f, 18f * (index + 1f), 0f);

        if (index == m_currentScene)
        {
            parent.gameObject.SetActive(true);
            PlayerSpawn.RespawnAll();
        }
    }