- Home /
Question by
FantaLaTone · May 06, 2020 at 03:09 PM ·
effectienumerator
Hey how i can increase delay in typewriter effect when last character of full text is dots?
public AudioSource audioSource;
public float delay = 0.1f;
public string fullText;
public string currentText = " ";
IEnumerator DialogueWrite()
{
for (int i = 0; i < fullText.Length; i++)
{
currentText = fullText.Substring(0,i);
this.GetComponent<Text>().text = currentText;
audioSource.Play();
yield return new WaitForSeconds(delay);
}
}
public void StartDialogueWriter()
{
StartCoroutine(DialogueWrite());
}
Hey, how i can increase delay if it comes to the end of the sentence or a comma?
Like undertale's intro scene
Comment
Best Answer
Answer by Hellium · May 06, 2020 at 04:05 PM
[SerializeField] private AudioSource audioSource;
[SerializeField] private Text text;
[SerializeField] float delayBetweenCharacters = 0.1f;
[SerializeField] float delayAfterPunctuation = 0.1f;
[SerializeField] public string fullText;
IEnumerator DialogueWrite()
{
WaitForSeconds waitBetweenCharacters = new WaitForSeconds(delayBetweenCharacters);
WaitForSeconds waitAfterPunctuation = new WaitForSeconds(delayAfterPunctuation);
for (int i = 0; i < fullText.Length; i++)
{
text.text = fullText.Substring(0,i);
audioSource.Play();
yield return fullText[i] == '.' || fullText[i] == ','
? waitAfterPunctuation
: waitBetweenCharacters;
}
}
public void StartDialogueWriter()
{
StartCoroutine(DialogueWrite());
}
Your answer
Follow this Question
Related Questions
How to animate camera effects (legacy)? 0 Answers
2D Torches 0 Answers
Camera effect in all scenes 0 Answers
Jumping effect 0 Answers
How to make this trail? 1 Answer