Features
Documentation
Documentation
The Start Node must be placed in every conversation and there could only be 1 or else errors may occur. They are the beginning of each conversation and only have an output port to go to other nodes.
The dialogue node contains many different fields compared to the other nodes. Here, users can input the character's name, select an image to appear in the text box, select the direction the image is facing (either left or right). The direction facing dictates if the character will appear on the left or right side of the dialogue box as well. Next, users can write out all the dialogue text, as well as select an audio clip to play when the node is loded. At the top right users can also add choices to the dialogue node, as many as they'd like, but need at least one choice so we can link this node to others with it's output port.
The event node's functionality is currently not implemented into the project. In the near future I would have users able to place a scriptable object in the field that performs specific logic.
The end node indicates the end of a conversation and must be the last node in a dialogue conversation. Unlike Start Nodes, there can be multiple end nodes for any branching paths. This node contains 4 functions:
End - closes the conversation.
Repeat - repeats this node right before the end node.
Go Back - goes back to the previous node.
Return to Start - goes to the beginning of the conversation.
This system uses Unity's new Input System, so if your project is using the old Legacy system (ex. Input.GetAxisRaw("Horizontal");), you will have to upgrade.I created an object where you can add any new control schemes created along with the image of the button prompt that the interact points will display.
-
To create a new control scheme for the players to use in-game, navigate towards the "Player Controls" asset in the assets folder and double-click it to open it. Then at the top left you must click the drop-down button and select "Add Control Scheme...".
Give your Control Scheme a name, then click the "+" icon below the name. Find the control scheme you would like to use and confirm it. For the requirements, select "Optional". Now save your control scheme.
Now in the "Actions" section, go to movement, click the "+" icon, and add a new Up/Down/Left/Right Composite. Name it, then for each of the pink actions, change the path to the desired control scheme's buttons. Also, make sure to Check the Check Box of your control Scheme. After this Save the Asset and now you can update the Scriptable object Control Scheme HUD with your new control scheme!
Used to see if we can interact with this point at the current time. There might be a scenario where you can only interact with the point after completing a mission, if that's the case make this false from the start.
If the player is in the target's range, should we reveal any interaction prompt UI or not? Even if the UI is hidden the object will still be interactable.
This determines whether the player needs to be looking at the interact point for it's HUD to display and for us to interact with it.
If true the player you need to look at it within a set angle defined in the "PlayerInteractWithObjects.cs" script.
If false, you don't need to be looking at it and you will be able to interact with the closest collider to the player..
Determines if the player should have their movement inputs frozen or not when dialogue occurs. For barks, we must set this value to false so the player can move freely.
InteractableObject.cs (attached to all interact points)
DS_PlayerInteractWithObjects.cs (attached to player)
Is Required to Look at Target (true).
This system supports multiple languages! To edit a language you must navigate to the Dialogue Editor Window and select the language you desire. Click the "Load" button and start inputting values into the fields! Make sure when you are done to click the "Save" button.
You can also change the language currently playing in run-time. Make sure to have an object with the DS_LanguageController script attached to it and you can choose the language there.