How to make Dialogue Boxes in unity 5

I need to know how to make dialogue boxes for a 3d game. I don’t want the simple show the guitext when I enter the trigger, I want it to where the text shows up a letter at a time. I’ve checked other versions of this question but none really work. Please Help

What I do for dialogue boxes (there is most likely a better way :stuck_out_tongue: ) is basically what Cherno said.
Make a CoRoutine that adds 1 character from a string to the dialogue box every certain number of seconds/frames.

you’ll need these variables:

// boxStrings is where the text for the dialogue box is stored
// you can store the text differently for the UI if you need to, (I haven't really used the new UI)
// this is just to demonstrate my method.
// Of course, you can have as many lines as you want
string[] boxStrings = new string[2];
int lineIndex = 0; // used to determine which line of the box you are adding to
float delay = 0.01f; // the amount of seconds to wait after printing 1 character

For the basic CoRoutine:

public IEnumerator typeText(string textToType){
    foreach(char c in textToType.ToCharArray()){
        boxStrings[lineIndex] += c.ToString();
        yield return new WaitForSeconds(delay);
    }
}

You can extend this a great deal by adding special “commands” that do specific functions related to the dialogue box. For example, you could make it so if you type “/n” into the textToType string, it will increment lineIndex to the next line. [and it won’t actually print “/n”].

If you want to be extra fancy, declare an int variable (outside of the loop) that is used for the char array index, and change the foreach loop to a for loop. This will allow you to directly modify the index of the char array you are reading from. (This is useful for jumping over characters without printing them, like with the “/n” command)
Just make sure you do the math for changing the index correctly!