Пример #1
0
    public void EnterScene(GameSceneId sceneId)
    {
        if (m_CurrentSceneData != null)
        {
            if (m_CurrentSceneData.sceneId == sceneId)
            {
                return;
            }

            if (m_CurrentSceneData.sceneObject != null)
            {
                m_CurrentSceneData.sceneObject.ShowSceneObject(false);
            }
        }

        GameSceneData sceneData = FindSceneData(sceneId);

        if (sceneData == null)
        {
            Debug.LogErrorFormat("Didn't Find Scene:{0}", sceneId);
            return;
        }

        if (sceneData.sceneObject == null)
        {
            sceneData.sceneObject = GlobalTools.AddChild <GameScene>(sceneParent, sceneData.scenePrefab);
        }
        sceneData.sceneObject.ShowSceneObject(true);
        m_CurrentSceneData = sceneData;
    }
Пример #2
0
    private GameSceneData FindSceneData(GameSceneId sceneId)
    {
        GameSceneData sceneData = null;

        foreach (var data in sceneDatas)
        {
            if (data.sceneId == sceneId)
            {
                sceneData = data;
                break;
            }
        }

        return(sceneData);
    }