public void Activate() { mView.Build(); if (mMotionMgr != null) { mMotionMgr.FreezePhySteateForSystem(false); } Entity.SendMsg(EMsg.Lod_Collider_Created); }
public void StartLoadScene() { for (int i = 0; i < 100; i++) { PeLauncher.Instance.Add(new GameLoader.Dummy()); } bFirstRun = true; PeLauncher.Instance.endLaunch = delegate() { if (PeGameMgr.IsMulti && !NetworkInterface.IsClient) { return(true); } if (bFirstRun) { bFirstRun = false; VFVoxelTerrain.TerrainVoxelComplete = false; return(false); } if (!VFVoxelTerrain.TerrainVoxelComplete) { return(false); } PeEntity mainPlayer = MainPlayer.Instance.entity; if (null == mainPlayer) { return(false); } MotionMgrCmpt motion = mainPlayer.GetCmpt <MotionMgrCmpt>(); if (motion == null) { return(false); } Vector3 safePos; if (PeGameMgr.IsMulti) { if (PlayerNetwork.mainPlayer != null && PlayerNetwork.mainPlayer._curSceneId == (int)Pathea.SingleGameStory.StoryScene.MainLand) { if (PETools.PE.FindHumanSafePos(mainPlayer.position, out safePos, 10)) { mainPlayer.position = safePos; motion.FreezePhySteateForSystem(false); } else { mainPlayer.position += 10 * Vector3.up; motion.FreezePhySteateForSystem(true); return(false); } } } else { if (PETools.PE.FindHumanSafePos(mainPlayer.position, out safePos, 10)) { mainPlayer.position = safePos; motion.FreezePhySteateForSystem(false); } else { mainPlayer.position += 10 * Vector3.up; motion.FreezePhySteateForSystem(true); return(false); } } Object.Destroy(gameObject); Resources.UnloadUnusedAssets(); System.GC.Collect(); return(true); }; PeLauncher.Instance.StartLoad(); }