public void OnLevelLoad() { Name_ReplicaStruct temp = MainManager.scene1Text.GetReplica(); StartCoroutine(ShowText(temp)); isTyping = false; }
public IEnumerator ShowText(Name_ReplicaStruct text) { if (lastState != text.state || text.state == TextState.Special) { isTyping = true; StartCoroutine(Tools.MakeTransparent(characterImg, 0.5f, true)); StartCoroutine(Tools.MakeTransparent(textPanel, 0.5f, true)); StartCoroutine(Tools.MakeTransparentText(charName, 0.5f, true)); yield return(StartCoroutine(Tools.MakeTransparentText(replicaText, 0.5f, true))); if (text.name != CharactersName.StorryTeller) { string name = Enum.GetName(typeof(CharactersName), text.name); if (name.Contains("Unknown_")) { name = name.Substring(8); } characterImg.sprite = Resources.Load <Sprite>($"sprites/{name}/{name}_{Enum.GetName(typeof(CharacterEmotions), text.emotion)}"); } string path; if (text.replica.Length > 140) { path = ""; } else if (text.replica.Length <= 140 && text.replica.Length > 53) { path = "Medium"; } else { path = "Small"; } switch (text.state) { case TextState.Center: { characterImg.enabled = false; textPanel = GameObject.Find("ReplicaBGCenter" + path).GetComponent <Image>(); charName = textPanel.transform.GetChild(1).GetComponent <Text>(); replicaText = textPanel.transform.GetChild(0).GetComponent <Text>(); break; } case TextState.Left: { textPanel = GameObject.Find("ReplicaBGLeft" + path).GetComponent <Image>(); charName = textPanel.transform.GetChild(1).GetComponent <Text>(); replicaText = textPanel.transform.GetChild(0).GetComponent <Text>(); charName.text = text.NameToString(text.name); characterImg.rectTransform.anchoredPosition = new Vector2(-65, 150); characterImg.enabled = true; StartCoroutine(FlyCamera(2)); break; } case TextState.Right: { textPanel = GameObject.Find("ReplicaBGRight" + path).GetComponent <Image>(); charName = textPanel.transform.GetChild(1).GetComponent <Text>(); replicaText = textPanel.transform.GetChild(0).GetComponent <Text>(); charName.text = text.NameToString(text.name); characterImg.rectTransform.anchoredPosition = new Vector2(300, 150); characterImg.enabled = true; StartCoroutine(FlyCamera(1)); break; } case TextState.Special: { characterImg.enabled = false; text.ScriptEvent(); break; } } if (text.state != TextState.Special && text.state != TextState.NULL) { StartCoroutine(Tools.MakeTransparent(textPanel, 0.5f, false)); StartCoroutine(Tools.MakeTransparentText(replicaText, 0.5f, false)); StartCoroutine(Tools.MakeTransparentText(charName, 0.5f, false)); } } lastState = text.state; if (text.state != TextState.Special) { charName.text = text.NameToString(text.name); StartCoroutine(Tools.MakeTransparent(characterImg, 0.5f, false)); replicaText.text = text.replica; isTyping = false; } }