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); } }
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; } }