private unsafe IEnumerator Start() { LoadingQueue load_queue = new LoadingQueue(this); ResourceManager.enableCache = false; touchEffectPrefab = load_queue.LoadEffect(RESOURCE_CATEGORY.EFFECT_UI, "ef_ui_tap_01", false); moveEffectPrefab = load_queue.LoadEffect(RESOURCE_CATEGORY.EFFECT_UI, "ef_ui_downenergy_01", false); silhouetteEffectPrefab = load_queue.LoadEffect(RESOURCE_CATEGORY.EFFECT_UI, "ef_ui_questselect_01", false); ResourceManager.enableCache = true; if (load_queue.IsLoading()) { yield return((object)load_queue.Wait()); } if (MonoBehaviourSingleton <InputManager> .IsValid()) { InputManager.OnTouchOnAlways = (InputManager.OnTouchDelegate)Delegate.Combine(InputManager.OnTouchOnAlways, new InputManager.OnTouchDelegate(OnTouchOn)); } rymFXManager.DestroyFxDelegate = Delegate.Combine((Delegate)rymFXManager.DestroyFxDelegate, (Delegate) new DestroyFxFunc((object)this, (IntPtr)(void *) /*OpCode not supported: LdFtn*/)); }
private IEnumerator LoadScriptResources() { Transform camera_t = MonoBehaviourSingleton <AppMain> .I.mainCameraTransform; initCameraPos = camera_t.get_position(); cameraPosAnim.Set(initCameraPos); LoadingQueue load_queue = new LoadingQueue(this); for (int cmd_row = 0; cmd_row < scriptCommands.Count; cmd_row++) { string cmd = scriptCommands[cmd_row].cmd; string p4 = scriptCommands[cmd_row].p0; string p3 = scriptCommands[cmd_row].p1; string p2 = scriptCommands[cmd_row].p2; switch (cmd) { case "EFF_SHOW": { LoadObject load_obj = load_queue.LoadEffect(RESOURCE_CATEGORY.EFFECT_ACTION, p4, false); effectPrefabs.Add(p4, load_obj); if (effectRenderTex == null) { effectRenderTex = UIRenderTexture.Get(effectTex, -1f, true, 1); effectRenderTex.Enable(0.25f); } break; } case "SE_PLAY": try { int se_id = int.Parse(p4); load_queue.CacheSE(se_id, null); } catch { Log.Error(LOG.EXCEPTION, "{0}コマンドのSEIDに整数ではない値が指定されています。", cmd); } break; case "MSG": if (!string.IsNullOrEmpty(p2)) { try { int voice_id = int.Parse(p2); load_queue.CacheVoice(voice_id, null); } catch { Log.Error(LOG.EXCEPTION, "{0}コマンドのボイスIDに整数ではない値が指定されています。", cmd); } } break; case "CHR_LOAD": { int id = -1; for (int i = 0; (float)i < 4f; i++) { if (charas.Find((StoryCharacter o) => o.id == ((_003CLoadScriptResources_003Ec__IteratorC1) /*Error near IL_02d5: stateMachine*/)._003Ci_003E__11) == null) { id = i; break; } } if (id != -1) { UITexture ui_tex = eventReceiver.GetModelUITexture(id); if (ui_tex != null) { StoryCharacter chara = StoryCharacter.Initialize(id, ui_tex, p4, p3, p2); if (chara != null) { charas.Add(chara); } } } break; } } } while (MonoBehaviourSingleton <ResourceManager> .I.isLoading || InstantiateManager.isBusy) { yield return((object)null); } isLoading = false; }
private IEnumerator DoInitialize() { eventData = (SectionEventData)GameSection.GetEventData(); if (MonoBehaviourSingleton <InGameManager> .IsValid()) { portalData = Singleton <FieldMapTable> .I.GetPortalData(MonoBehaviourSingleton <InGameManager> .I.beforePortalID); } if (MonoBehaviourSingleton <OutGameSettingsManager> .IsValid() && portalData == null) { portalData = Singleton <FieldMapTable> .I.GetPortalData((uint)MonoBehaviourSingleton <OutGameSettingsManager> .I.homeScene.linkFieldPortalID); } if (eventData.IsQuestToField()) { portalData = Singleton <FieldMapTable> .I.GetPortalData(MonoBehaviourSingleton <FieldManager> .I.currentPortalID); } if (portalData == null) { base.Initialize(); } else { FieldMapTable.FieldMapTableData currentMapData = Singleton <FieldMapTable> .I.GetFieldMapData(portalData.srcMapID); newMapData = Singleton <FieldMapTable> .I.GetFieldMapData(portalData.dstMapID); regionId = newMapData.regionId; if (NeedDirectionOpenRegion()) { toRegionRelease = true; base.Initialize(); } else { if (currentMapData != null && newMapData != null && newMapData.regionId != currentMapData.regionId) { regionId = currentMapData.regionId; } if (newMapData == null || !IsValidRegion(newMapData)) { newMapData = null; base.Initialize(); } else { LoadingQueue loadQueue = new LoadingQueue(this); LoadObject loadedEventUIRoot = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "NewFieldOpenEventUIRoot", false); LoadObject loadedLocationSpot = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "LocationSpot", false); LoadObject loadedEventCamera = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "NewFieldEventCamera", false); LoadObject loadedFilterCamera = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "ZoomBlurFilterCamera", false); LoadObject loadedPlayerMarker = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "PlayerMarker", false); LoadObject loadedRegion = loadQueue.Load(RESOURCE_CATEGORY.WORLDMAP, "RegionMap_" + regionId.ToString("D3"), false); LoadObject loadedEffect = loadQueue.LoadEffect(RESOURCE_CATEGORY.EFFECT_UI, "ef_ui_map_fire_01", false); LoadObject loadedWindEffect = loadQueue.LoadEffect(RESOURCE_CATEGORY.EFFECT_ACTION, "ef_btl_bg_questmap_01", false); LoadObject loadedDungeonEff = null; if (eventData.IsFindNewDungeon() && newMapData != null) { uint mapID = newMapData.mapID; loadedDungeonEff = loadQueue.LoadEffect(RESOURCE_CATEGORY.EFFECT_DUNGEON, "DEF_" + mapID.ToString("D8"), false); } LoadObject loadedEncounterBossCutIn = null; if (eventData.IsEncounterBossEvent()) { loadedEncounterBossCutIn = loadQueue.Load(RESOURCE_CATEGORY.UI, "InGameFieldQuestWarning", false); } CacheAudio(loadQueue); if (loadQueue.IsLoading()) { yield return((object)loadQueue.Wait()); } if (loadedEncounterBossCutIn != null) { fieldQuestWarningRoot = ResourceUtility.Realizes(loadedEncounterBossCutIn.loadedObject, -1).get_gameObject(); UIPanel panel = fieldQuestWarningRoot.GetComponentInChildren <UIPanel>(); if (panel != null) { panel.depth = 8000; } if (MonoBehaviourSingleton <UIInGameFieldQuestWarning> .IsValid()) { MonoBehaviourSingleton <UIInGameFieldQuestWarning> .I.Load(loadQueue); } } if (loadQueue.IsLoading()) { yield return((object)loadQueue.Wait()); } topEffectPrefab = loadedEffect.loadedObject; Transform t = ResourceUtility.Realizes(loadedEventUIRoot.loadedObject, base._transform, -1); regionMapRoot = ResourceUtility.Realizes(loadedRegion.loadedObject, MonoBehaviourSingleton <AppMain> .I._transform, -1).get_gameObject().GetComponent <RegionMapRoot>(); if (regionMapRoot != null) { bool wait = true; regionMapRoot.InitPortalStatus(delegate { ((_003CDoInitialize_003Ec__Iterator164) /*Error near IL_0526: stateMachine*/)._003Cwait_003E__15 = false; }); while (wait) { yield return((object)null); } } blurFilter = (ResourceUtility.Instantiate <Object>(loadedFilterCamera.loadedObject) as GameObject).GetComponent <ZoomBlurFilter>(); blurFilter.get_transform().set_parent(base._transform); _camera = ResourceUtility.Realizes(loadedEventCamera.loadedObject, MonoBehaviourSingleton <AppMain> .I._transform, -1).GetComponent <Camera>(); uiFrontMapSprite = t.FindChild("FrontMap").get_gameObject().GetComponent <UITexture>(); if (uiFrontMapSprite != null) { uiFrontMapSprite.alpha = 0f; } uiMapSprite = t.FindChild("Map").get_gameObject().GetComponent <UITexture>(); InitMapSprite(MonoBehaviourSingleton <ScreenOrientationManager> .I.isPortrait); if (eventData.IsEncounterBossEvent()) { t.FindChild("TaptoSkip").get_gameObject().SetActive(false); } bgEventListener = UIEventListener.Get(t.Find("BG").get_gameObject()); tutorialTrigger = t.FindChild("TUTORIAL_TRIGGER"); if (tutorialTrigger != null) { if (!TutorialStep.HasAllTutorialCompleted()) { tutorialTrigger.get_gameObject().SetActive(true); UITweenCtrl.Play(tutorialTrigger, true, null, false, 0); } else { tutorialTrigger.get_gameObject().SetActive(false); } } spots = new SpotManager(null, loadedLocationSpot.loadedObject as GameObject, _camera); spots.spotRootTransform = t; playerMarker = ResourceUtility.Realizes(loadedPlayerMarker.loadedObject, -1); PlayerMarker playerMarkerCom = playerMarker.GetComponent <PlayerMarker>(); if (null != playerMarkerCom) { playerMarkerCom.SetCamera(_camera.get_transform()); } windEffect = ResourceUtility.Realizes(loadedWindEffect.loadedObject, _camera.get_transform(), -1).get_gameObject().GetComponent <rymFX>(); windEffect.Cameras = (Camera[])new Camera[1] { _camera }; windEffect.get_gameObject().set_layer(LayerMask.NameToLayer("WorldMap")); if (loadedDungeonEff != null) { dungeonOpenEffect = ResourceUtility.Realizes(loadedDungeonEff.loadedObject, base._transform, -1); dungeonOpenEffect.get_gameObject().SetActive(false); } CreateVisitedLocationSpot(); if (MonoBehaviourSingleton <GameSceneManager> .I.GetCurrentSceneName() == "InGameScene") { MonoBehaviourSingleton <ScreenOrientationManager> .I.OnScreenRotate += InitMapSprite; } base.Initialize(); } } } }