GETTING STARTED
Setting Up Your Project
To add Dialoguer to your project, simply add it through the Unity Asset Store. When importing the Dialoguer assets, feel free to remove the DialoguerExamples folder, as it only contains example assets used to show off the capabilities of Dialoguer.
Using the Dialogue Editor

With Dialoguer added to your project, a Menu item should appear. This Dialoguer menu item contains everything you need to use Dialoguer. From here, select Dialoguer>Window>DialogueEditor to open the Dialogue Editor.

With the Dialogue Editor open, you will see two sections. On the left, the Dialogue Selector, and the Dialogue Canvas on the right.

Dialogue Selector
The Dialogue Selector allows you to add and remove dialogue trees to your project, and allows you to select specific dialogues for editing. The selected Dialogue from this window will be visible for editing in the Dialogue Canvas. The Add and Remove buttons will add and remove Dialogues from the end of the list, not based on selection. This is due to the Dialoguer using an int id to search for Dialogues on the Dialogue System side.

Dialogue Canvas
The Dialogue Canvas is where you edit your dialogue trees. The toolbar here has a few controls.

The Title Field contains the name of the current dialogue tree. Changing this will change change the name of the dialogue in the Dialogue Selector, as well as the name generated by the Generate Dialogues Enum tool. For this reason, you should not name any two dialogues the same, as it will cause an error when generating your DialoguerDialogues enum with the enum generation tool.

The Node Bar contains all of the nodes you can use with Dialoguer. Clicking one of these buttons will add that specific type of node to your canvas. Hovering over these buttons will give you a summary of the type of node you're hovering over.

The ? button is the Help button. It will take you to this page.

The Save button will save all of your dialogues.

Nodes
For more information on each of Dialoguer's nodes, see the Nodes page.

Using the Variable Editor

The Variable Editor is a window where you can add and remove Local and Global variables. It can be found by selecting Dialoguer>Window>Variables from the menu.

Local Variables Local Variables are specific to one Dialogue. To add a local variable, select the dialogue you'd like to add a variable to, in the Dialogue Editor Selector section. Adding local variables like this will only add a local variable for that specific Dialogue. Local variables are not accessible outside of this Dialogue, and are only meant to be used for Dialogue loops, non-permanent branches, etc.

Global Variables Global Variables are like Local Variables, except they are accessible outside of Dialoguer. They can be retrieved and set using the Dialoguer.SetGlobalX and Dialoguer.GetGlobalX methods. To create or modify global variables, simply click the Globals button, and the Variable Editor will show you all available Global variables.

Creating a Theme/Skin
Dialoguer does not do the visual work for you. Instead, Dialoguer gives you access to a number of events that you can use to hook up to your own visual system. This means that you create the visuals for your Dialogue system (text windows, animations, etc) and you allow Dialoguer to control it via events. These events are located at Dialoguer.events. More info on them can be found on the Code page.

Benefits to using Dialoguer's Theme/Skin System
This theme/skin system allows you to create many different types of skins and themes for your dialogues, and have them all work together, interchangeably. This means you can use one of the provided example Dialogue skins when first creating your project, and work on a new dialogue system later, when you have more time to dedicate to your own theme. It allows you to have a working dialogue system in your game in a matter of seconds.

How To Create a Theme/Skin
To create a theme/skin, create a class that will control your visuals. In this class, connect specific methods related to the different Dialoguer.event events to the Dialoguer events. These events will control your Dialogue system, telling it when to show, hide, etc. See the included examples (DialoguerExamples > Prefabs > [UnityDefuaultDialogueGUI, Old RPG Dialogue GUI, Next Gen Rpg Dialogue GUI]) for an example on how to hook up specific methods to Dialoguer's event system.

Saving and Loading Global Variables

The Global Variable System that comes with Dialoguer is robust and dead-simple to use. Simply call Dialoguer.GetGlobalVariablesState(); to get the Global Variables in XML text, which you can then save with whatever save system you're using. Then, when initializing dialoguer, you can load this string back in using Dialoguer.SetGlobalVariablesState(string globalVariablesXml); which will set the global variables back to what they were previously. Make sure though, when using SetGlobalVariablesState(), that you set it as soon after calling Dialoguer.Initialize() as possible. to avoid any data-loss on the player's end.