public override void ExecuteMessage(string message, object sender, MessageArgs messageArgs, params object[] messageParams)
        {
            OnSceneLoadedArgs args = messageArgs as OnSceneLoadedArgs;

            Debug.Log("TestSceneLoadedController: " + args.scene.name + " Load Scene Assets.");

            // Example 1:

            /*
             * SceneData data = SceneDataConfig.GetData(args.scene.name);
             * AssetBundleManager.instance.LoadAssetBundle(data.assetBundleInfo, (bundle) =>
             * {
             *  // TODO your code
             * });
             */

            // Example 2: 在SceneState的Load方法中完成场景读取

            /*
             * SceneState state = SceneState.CreateState(args.scene.name);
             * state.Load();
             */

            // 如果是Main Scene,打开默认面板
            if (args.scene.name == TestGameMain.k_TestFrameworkMainSceneName)
            {
                TestUIManager.views.OpenView(TestUINames.Panel_TestUIDefaultPanel, true);
            }

            if (args.scene.name == TestGameMain.k_TestFrameworkAddSceneName)
            {
                TestUIManager.views.OpenView(TestUINames.Panel_TestUIPoolPanel, false);
            }
        }
Exemplo n.º 2
0
        private void LoadScene_OnSceneLoaded(string message, object sender, MessageArgs messageArgs, params object[] messageParams)
        {
            MessageCenter.RemoveListener(GameMain.k_Event_OnSceneLoaded, LoadScene_OnSceneLoaded);

            OnSceneLoadedArgs args = messageArgs as OnSceneLoadedArgs;

            ScenarioBlackboard.lastScenarioScene = args.scene.name;
            TimerTimeout(-1);
        }
        void IMessageHandler.ExecuteMessage(string message, object sender, MessageArgs messageArgs, params object[] messageParams)
        {
            switch (message)
            {
            case TestGameMain.k_Event_OnLoadScene:
            {
                OnLoadSceneArgs args = messageArgs as OnLoadSceneArgs;
                if (args.type == LoadSceneType.SceneName && args.sceneName == m_ListenerSceneName)
                {
                    Debug.LogFormat(
                        "{0}: Handler trigger '{1}' message. On load scene '{2}'",
                        name,
                        message,
                        args.sceneName
                        );
                }
                break;
            }

            case TestGameMain.k_Event_OnSceneLoaded:
            {
                OnSceneLoadedArgs args = messageArgs as OnSceneLoadedArgs;
                if (args.scene.name == m_ListenerSceneName)
                {
                    Debug.LogFormat(
                        "{0}: Handler trigger '{1}' message. On scene loaded '{2}'",
                        name,
                        message,
                        args.scene.name
                        );
                }
                break;
            }

            default:
                break;
            }
        }