public void EnqueueScript(ScenarioScript script) { scripts.Enqueue(script); if (!ExecutingScript) { ExecuteNextScript(); } }
private void PlayScenarioScript(ScenarioScript scenarioScript) { scenarioScript.hasBeenPlayed = true; _scenarioUi.Show(scenarioScript); AudioManager.Sfx.Play("scenarioScript"); if (scenarioScript.audioClip) { AudioManager.Voices.Play(scenarioScript.audioClip); } }
public void Show(ScenarioScript script) { if (singleCoroutine == null) { singleCoroutine = new SingleCoroutine(this); } _text.text = script.text; gameObject.SetActive(true); singleCoroutine.Start(HideAfter(Time.time + script.displayTime)); }
public override void AddScript(ScenarioScript scenarioScript) { BlockCollection <HsScriptsBlock> scriptBlocks = scenarioValues._scriptsList; HsScriptsBlock scriptBlock = new HsScriptsBlock(); scriptBlock.Name = new FixedLengthString(scenarioScript.Name); scriptBlock.ReturnType = new Enum(scenarioScript.ReturnType); scriptBlock.RootExpressionIndex = new LongInteger(scenarioScript.RootExpressionIndex * 0x10000); scriptBlock.ScriptType = new Enum(scenarioScript.ScriptType); scriptBlocks.Add(scriptBlock); }
public override ScenarioScript[] GetScripts() { if (m_scripts == null) { BlockCollection <HsScriptsBlock> scriptBlocks = scenarioValues._scriptsList; m_scripts = new ScenarioScript[scriptBlocks.Count]; for (int i = 0; i < scriptBlocks.Count; i++) { m_scripts[i] = new ScenarioScript(scriptBlocks[i].Name.Value, scriptBlocks[i].ScriptType.Value, scriptBlocks[i].ReturnType.Value, BitConverter.ToInt16(BitConverter.GetBytes(scriptBlocks[i].RootExpressionIndex.Value), 0)); } } return(m_scripts); }
/// <summary> /// テキストファイルを読み込む /// </summary> /// <param name="ss">Scenario Script</param> public void UpdateLines(ScenarioScript ss) { if (ss.enemy_list.Count > 0) { battelEnemyList = ss.enemy_list; } isTutorial = ss.isTutorial; if (ss.fileName != "") { string filePath = System.IO.Path.Combine(Application.streamingAssetsPath, "Scenario/" + ss.fileName + ".txt"); string scenarioText = File.ReadAllText(filePath); if (scenarioText == null) { Debug.LogError("Scenario file not found"); Debug.LogError("ScenarioManger not active"); enabled = false; return; } string key = "0"; if (ss.event_file != "") { string js = EventManager.Instance.ReadFile(ss.event_file); EventCollect ec = EventManager.Instance.GetAllEvent(js); key = EventManager.Instance.GetEventKey(ec); } string[] scenarios = scenarioText.Split(new string[] { "\n" }, System.StringSplitOptions.None); m_scenarios = getNowScenario(scenarios, key); m_currentLine = 0; isScenario = true; if (ss.autoDestory) { Destroy(ss.gameObject); } ItweenMoveTo(hukidasi, new Vector3(0, -300, 0), 0.5f, "easeInOutBack", "RequestNextLine", this.gameObject); } }
public abstract void AddScript(ScenarioScript scenarioScript);