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.
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.
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.
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.