void ContResumeTestimony() { tm.SetInTestimony(true); arrows.SetActive(true); tm.SetEnabled(true); tm.ParseLine(); testimonyPaused = false; cam.MoveToPosition(1); }
void ParseLine() { if (characterTalking) { return; } lineIndex++; ScriptLine line = lines[lineIndex]; if (line.command == "camera") { int pos = Int32.Parse(line.arguments[0]); cam.MoveToPosition(pos); ParseLine(); } else if (line.command == "line") { charName.text = line.arguments[0].Split(' ')[0]; if (charName.text.Length > 0 && charName.text[0] == '@') { charName.text = charName.text.Substring(1, charName.text.Length - 1); } typingRoutine = TypeDialogue(line.arguments[1]); StartCoroutine(typingRoutine); } else if (line.command == "wait") { float time = float.Parse(line.arguments[0]); StartCoroutine(KillTime(time)); } else if (line.command == "show") { ShowUI(); ParseLine(); } else if (line.command == "hide") { HideUI(); ParseLine(); } else if (line.command == "losehealth") { float amount = float.Parse(line.arguments[0]); sm.LoseHealth(amount); } else if (line.command == "bgm") { sm.am.PlayBGM(line.arguments[0]); ParseLine(); } else if (line.command == "fadein") { StartCoroutine(sm.FadeIn()); ParseLine(); } else if (line.command == "showcr") { sm.em.evidencebutton.SetActive(true); ParseLine(); } else if (line.command == "branch") { SaveScript(); if (line.arguments[0] == "generated") { LoadScript(line.arguments[1], true); } LoadScript(line.arguments[0]); } else if (line.command == "unbranch") { ReturnToScript(); } else if (line.command == "testimony") { cam.MoveToPosition(1); sm.BeginTestimony(line.arguments[0]); } else if (line.command == "advance") { sm.Advance(); } else if (line.command == "swapwit") { sm.SwapWitnesses(); ParseLine(); } else if (line.command == "end") { if (sm.testimonyPaused) { sm.ResumeTestimony(); } else { sm.am.StopCurrentBGM(); acceptingInput = false; StartCoroutine(sm.FadeOut()); } } else if (line.command == "deathend") { sm.am.StopCurrentBGM(); acceptingInput = false; StartCoroutine(sm.FadeOut()); } else { lineIndex++; ParseLine(); } }