public void Clear() { if (uiRenderTexture != null) { uiRenderTexture.Release(); Object.Destroy(uiRenderTexture); uiRenderTexture = null; } DeleteModel(); playerLoadInfo = null; npcData = null; equipItemID = -1; skillItemID = -1; skillSymbolItemID = -1; itemID = -1; enemyID = -1; foundationName = null; uiTexture = null; referenceSexID = -1; referenceFaceID = -1; }
private IEnumerator RunScript() { Transform camera_t = MonoBehaviourSingleton <AppMain> .I.mainCameraTransform; for (int cmd_row = 0; cmd_row < scriptCommands.Count; cmd_row++) { string cmd = scriptCommands[cmd_row].cmd; string p0 = scriptCommands[cmd_row].p0; string p = scriptCommands[cmd_row].p1; string p2 = scriptCommands[cmd_row].p2; string p3 = scriptCommands[cmd_row].p3; string msg = scriptCommands[cmd_row].msg; switch (cmd) { case "WAIT": { float time = (!string.IsNullOrEmpty(p0)) ? float.Parse(p0) : 0f; while (true) { yield return((object)null); if (time > 0f) { time -= Time.get_deltaTime(); } else if (!MonoBehaviourSingleton <ResourceManager> .I.isLoading && !InstantiateManager.isBusy && !MonoBehaviourSingleton <TransitionManager> .I.isTransing && !(charas.Find((StoryCharacter o) => o.isMoving) != null) && !cameraPosAnim.IsPlaying()) { break; } } break; } case "FADE_IN": eventReceiver.FadeIn(); break; case "FADE_OUT": { Color c = Color.get_black(); switch (p0) { case "BLUE": c = Color.get_blue(); break; case "WHITE": c = Color.get_white(); break; case "RED": c = Color.get_red(); break; case "YELLOW": c = Color.get_yellow(); break; } eventReceiver.FadeOut(c); break; } case "CHR_EASE": { StoryCharacter.EaseDir type = (!(p == "L")) ? StoryCharacter.EaseDir.RIGHT : StoryCharacter.EaseDir.LEFT; bool forward = (!(p2 == "IN")) ? true : false; StoryCharacter chara = FindChara(p0); if (chara != null) { while (chara.isLoading) { yield return((object)null); } chara.PlayTween(type, forward, null); } break; } case "EFF_SHOW": { LoadObject load_obj = effectPrefabs.Get(p0); if (load_obj != null) { while (load_obj.isLoading) { yield return((object)null); } Transform effect = ResourceUtility.Realizes(load_obj.loadedObject, effectRenderTex.modelTransform, 1); Vector3 pos = Vector3.get_zero(); StoryCharacter chara2 = FindChara(p); if (chara2 != null) { pos = chara2.model.get_position(); } Vector3 position = camera_t.get_position(); pos.y = position.y; effect.set_position(pos); if (float.TryParse(p2, out float scale)) { effect.set_localScale(new Vector3(scale, scale, scale)); } } break; } case "SE_PLAY": { int se_id = int.Parse(p0); SoundManager.PlayOneShotUISE(se_id); break; } case "BGM_CHANGE": { int bgm_id = int.Parse(p0); MonoBehaviourSingleton <SoundManager> .I.requestBGMID = bgm_id; break; } case "CHR_SHOW": { StoryCharacter chara5 = FindChara(p0); if (chara5 != null) { while (chara5.isLoading) { yield return((object)null); } FadeCharacter(true, chara5); yield return((object)new WaitForSeconds(MonoBehaviourSingleton <OutGameSettingsManager> .I.storyScene.charaFadeTime)); } break; } case "CHR_HIDE": { StoryCharacter chara7 = FindChara(p0); if (chara7 != null) { while (chara7.isLoading) { yield return((object)null); } FadeCharacter(false, chara7); yield return((object)new WaitForSeconds(MonoBehaviourSingleton <OutGameSettingsManager> .I.storyScene.charaFadeTime)); } break; } case "CHR_ROT": { StoryCharacter chara8 = FindChara(p0); if (chara8 != null) { float angle; if (string.IsNullOrEmpty(p)) { chara8.RotateDefault(); } else if (p == "F") { chara8.RotateFront(); } else if (float.TryParse(p, out angle)) { chara8.RotateAngle(angle); } } break; } case "CHR_POSE": { StoryCharacter chara9 = FindChara(p0); if (chara9 != null) { chara9.RequestPose(p); } break; } case "CHR_STAND": { StoryCharacter chara10 = FindChara(p0); if (chara10 != null) { chara10.SetStandPosition(p, true); } break; } case "CHR_SCALE": { StoryCharacter chara11 = FindChara(p0); if (chara11 != null) { Vector3 scale2 = new Vector3 { x = float.Parse(p), y = float.Parse(p), z = float.Parse(p) }; chara11.SetModelScale(scale2); } break; } case "CHR_FACE": { StoryCharacter chara12 = FindChara(p0); if (chara12 != null) { chara12.RequestFace(p, p2); } break; } case "CAM_SET": { int camIndex2 = int.Parse(p0); if (0 <= camIndex2 && cameraPositions.Length > camIndex2) { float x = float.Parse(p); float y = float.Parse(p2); float z = float.Parse(p3); cameraPositions[camIndex2] = new Vector3(x, y, z); } break; } case "CAM_MOV": { int camIndex = int.Parse(p0); if (0 <= camIndex && cameraPositions.Length > camIndex) { ((InterpolatorBase <Vector3>)cameraPosAnim).Set(0.3f, cameraPositions[camIndex], null, default(Vector3), null); cameraPosAnim.Play(); } break; } case "CAM_PAN": { StoryCharacter chara6 = FindChara(p0); if (chara6 != null) { int charaShowCount = GetCharaShowCount(); switch (charaShowCount) { case 1: { Vector3 position2 = chara6.model.get_position(); Vector3 pos3; pos3.x = position2.x; Transform chara_neck = (!(p == "F")) ? Utility.Find(chara6.model, "Neck") : Utility.Find(chara6.model, "Spine01"); if (chara_neck != null) { Vector3 position3 = chara_neck.get_position(); pos3.y = position3.y; } else { pos3.y = initCameraPos.y; } if (p == "N") { pos3.z = MonoBehaviourSingleton <OutGameSettingsManager> .I.storyScene.cameraPanNearZ; } else if (p == "F") { pos3.z = MonoBehaviourSingleton <OutGameSettingsManager> .I.storyScene.cameraPanFarZ; } else { pos3.z = MonoBehaviourSingleton <OutGameSettingsManager> .I.storyScene.cameraPanNormalZ; } ((InterpolatorBase <Vector3>)cameraPosAnim).Set(0.3f, pos3, null, default(Vector3), null); cameraPosAnim.Play(); break; } case 2: ((InterpolatorBase <Vector3>)cameraPosAnim).Set(0.3f, MonoBehaviourSingleton <OutGameSettingsManager> .I.storyScene.duoCameraPos, null, default(Vector3), null); cameraPosAnim.Play(); break; default: if (3 <= charaShowCount) { ((InterpolatorBase <Vector3>)cameraPosAnim).Set(0.3f, MonoBehaviourSingleton <OutGameSettingsManager> .I.storyScene.trioCameraPos, null, default(Vector3), null); cameraPosAnim.Play(); } break; } } else { Vector3 pos2; pos2.x = 0f; pos2.y = initCameraPos.y; pos2.z = 0f; ((InterpolatorBase <Vector3>)cameraPosAnim).Set(0.3f, pos2, null, default(Vector3), null); cameraPosAnim.Play(); } break; } case "CHR_ALIAS": { StoryCharacter chara4 = FindChara(p0); if (chara4 != null) { chara4.SetAliasName(p); } break; } case "MSG": { MSG_TYPE msg_type = MSG_TYPE.NORMAL; if (p == "M" || p == "MONOLOGUE") { msg_type = MSG_TYPE.MONOLOGUE; } waitMessage = true; StoryCharacter chara3 = FindChara(p0); msg = GetReplacedText(msg); eventReceiver.AddMessage((!(chara3 != null)) ? p0 : chara3.displayName, msg, (chara3 != null) ? chara3.dir : POS.NONE, msg_type); if (!string.IsNullOrEmpty(p2)) { int voice_id = int.Parse(p2); SoundManager.PlayVoice(voice_id, 1f, 0u, null, null); } break; } case "BG": { bool isFirstLoad = false; LoadingQueue load_queue = new LoadingQueue(this); if (locationRednerTex != null) { locationRednerTex.Release(); } else { isFirstLoad = true; } int loc_image_id = int.Parse(p0); int loc_sky_id = int.Parse(p); ResourceManager.enableCache = false; LoadObject lo_loc_image = (loc_image_id <= 0) ? null : load_queue.Load(RESOURCE_CATEGORY.STORY_LOCATION_IMAGE, ResourceName.GetStoryLocationImage(loc_image_id), false); LoadObject lo_loc_sky = (loc_sky_id <= 0) ? null : load_queue.Load(RESOURCE_CATEGORY.STORY_LOCATION_SKY, ResourceName.GetStoryLocationSky(loc_sky_id), false); yield return((object)load_queue.Wait()); ResourceManager.enableCache = true; locationRednerTex = UIRenderTexture.Get(locationTex, -1f, false, 0); locationRednerTex.Disable(); locationRednerTex.orthographicSize = (float)locationTex.height * 0.5f * 0.01f; locationRednerTex.modelTransform.set_position(new Vector3(0f, 0f, 10f)); locationRoot = Utility.CreateGameObject("LocationRoot", locationRednerTex.modelTransform, locationRednerTex.renderLayer); locationRoot.set_localPosition(new Vector3(0f, 0f, 3f)); locationRoot.set_localScale(new Vector3(0.01f, 0.01f, 1f)); if (lo_loc_image != null) { locationImageRoot = Utility.CreateGameObject("LocationImageRoot", locationRoot, locationRednerTex.renderLayer); locationImage = ResourceUtility.Realizes(lo_loc_image.loadedObject, locationImageRoot, locationRednerTex.renderLayer); } if (lo_loc_sky != null) { locationSky = ResourceUtility.Realizes(lo_loc_sky.loadedObject, locationRoot, locationRednerTex.renderLayer); locationSky.set_localPosition(new Vector3(0f, 0f, 1f)); } locationRednerTex.Enable(0.25f); if (isFirstLoad) { eventReceiver.EndLoadFirstBG(); } break; } } while (waitMessage) { yield return((object)null); } } isRunning = false; FocusChara(null); eventReceiver.EndStory(); }