How do I create objectives in my game? I have made a prototype where there is a keycard that opens a door, the next step is to let the player know what to do. I created a Cutscene called objectives where I have a Inventory:Check and two dialouges depending on whether or not the player has the keycard. Right now I think the system works but the dialouge-text appears for a very small amount of time. I want it to show for as long as it has to depening on whether the player has the item or not.
For example: Player does not have the keycard = Text showing "Get the keycard" is visible until the player picks up the item, and then the next objective will be shown.
P.S Just gave AC 5 stars on the Unity asset store, this tool is amazing!
Comments
Rather than displaying this text as speech, you'd instead want to place it in a Menu Label element. New Menus, and a Label to go inside it, can be created in the Menu Manager (a series of tutorials on using it can be found here).
Normally you'd enter in some static text to go in your Label, but ideally you'd want this to be dynamic so that you can change the "current objective" as your game progresses. There's a handy feature you can use to that end: variable tokens.
Create a new Global variable of type "Pop Up", and you'll be able to create a series of string values, e.g. "Get the keycard", "Open the door", etc. In the variable's list of properties, there'll be a "Replacement token" field: something like [var:3]. If you enter that token e.g. "[var:3]" into your Label, then it will be replaced by that variable's value, e.g. "Get the keycard". You can then control what objective text is shown by using the Variable: Set Action to change the PopUp variable's value.
2) If the menu simply displays the current variable using tokens, then it'll update in real-time as you change the variable's Action automatically.