[SOLVED] Automatically hide an answer already made.
-
- Posts: 43
- Joined: Sat Nov 28, 2015 4:09 pm
[SOLVED] Automatically hide an answer already made.
Is there a way to automatically hide an answer already made once you have gone through the entire branch of the inicial node dialogue?
I want to create the usual dialogue where the player has different choices. Everytime the player choose one and go through it until the end, the dialogue starts all over again without that already selected option.
I know how to do it via false condition action, but that implies create a variable for every player answer node.
Is there any other easy way? If not, that could be a cool feature to add under the group that contains certains childs of a dialogue answers.
Thanks!
I want to create the usual dialogue where the player has different choices. Everytime the player choose one and go through it until the end, the dialogue starts all over again without that already selected option.
I know how to do it via false condition action, but that implies create a variable for every player answer node.
Is there any other easy way? If not, that could be a cool feature to add under the group that contains certains childs of a dialogue answers.
Thanks!
Last edited by miguelfanclub on Sat Dec 19, 2015 1:27 pm, edited 1 time in total.
Re: Automatically hide an answer already made.
Hi Miguel,
Yes, on the Dialogue Manager GameObject tick Include Sim Status.
This will automatically add a variable Dialog[#].SimStatus for every dialogue entry, where # is the dialogue entry's ID. The variable's value will be:
Yes, on the Dialogue Manager GameObject tick Include Sim Status.
This will automatically add a variable Dialog[#].SimStatus for every dialogue entry, where # is the dialogue entry's ID. The variable's value will be:
- "WasOffered": If the entry was offered to the player in a response menu,
- "WasDisplayed": If the entry was spoken by an actor (e.g., the player chose it), or
- "Untouched": Otherwise.
Code: Select all
Dialog[42].SimStatus ~= "WasDisplayed"
-
- Posts: 43
- Joined: Sat Nov 28, 2015 4:09 pm
Re: Automatically hide an answer already made.
Thanks Tony, it works... but whats the way to have 2 conditions? It only works if its the first one so I guess second one will not work anymore.
I have it like this now:
http://puu.sh/lZnRJ/5d81a68b9c.png
I have it like this now:
http://puu.sh/lZnRJ/5d81a68b9c.png
Re: Automatically hide an answer already made.
Hi Miguel,
Put the word "and" between the conditions:
I like to use parentheses to make the conditions easier to see:
You can also use the word "or" if only one of the conditions needs to be true:
The condition above is true if the player has the red key or the blue key (or both).
Put the word "and" between the conditions:
Code: Select all
Dialog[20].SimStatus ~= "WasDisplayed" and Variable["want_drink"] == false
Code: Select all
(Dialog[20].SimStatus ~= "WasDisplayed") and (Variable["want_drink"] == false)
You can also use the word "or" if only one of the conditions needs to be true:
Code: Select all
(Variable["has_red_key"] == true) or (Variable["has_blue_key"] == true)
-
- Posts: 43
- Joined: Sat Nov 28, 2015 4:09 pm
Re: Automatically hide an answer already made.
Thanks Tony... but cant make it work. Whenever I have two conditions, seems to not to work, both of them. If I just put one of them, then it does.
Am I missing something?
Am I missing something?
Re: Automatically hide an answer already made.
Miguel,
Try the parentheses and put it all on one line, like:
If that doesn't work, would you please post the Conditions field?
Also, what's being printed to the Console view?
Try the parentheses and put it all on one line, like:
Code: Select all
(Dialog[20].SimStatus ~= "WasDisplayed") and (Variable["want_drink"] == false)
Also, what's being printed to the Console view?
-
- Posts: 43
- Joined: Sat Nov 28, 2015 4:09 pm
Re: Automatically hide an answer already made.
Forgive me Tony. Im really dumb. Obviously, "and" / "or" must be well placed.
Re: Automatically hide an answer already made.
Variant:
How do you handle a different conversation?
For example your in conversation ID 10 node 10 and you want to hide the jump to conversation ID 21 node 2?
How do you handle a different conversation?
For example your in conversation ID 10 node 10 and you want to hide the jump to conversation ID 21 node 2?
Re: Automatically hide an answer already made.
Use Conversation[X].Dialog[Y] where X is the conversation ID and Y is the dialogue entry ID in that conversation.Roncin wrote:Variant:
How do you handle a different conversation?
For example your in conversation ID 10 node 10 and you want to hide the jump to conversation ID 21 node 2?
EDIT: Sorry, I completely misunderstood your question. What about setting the hub node's Sequence to None()?
Re: [SOLVED] Automatically hide an answer already made.
Hi Tony & All,
I apologise if this is a stupid question.
When using these variables to hide an answer, does it hide the node called across all conversations or just the individual conversation in which the condition has been input?
e.g. If I'm using to hide node 56 in one conversation, does it also hide node 56 in all conversations for that database?
I might be setting up these conditions wrong, I've been noticing some nodes are already hidden upon initializing other conversations in my database.
Thanks.
I apologise if this is a stupid question.
When using these variables to hide an answer, does it hide the node called across all conversations or just the individual conversation in which the condition has been input?
e.g. If I'm using
Code: Select all
(Dialog[56].SimStatus ~= "WasDisplayed")
I might be setting up these conditions wrong, I've been noticing some nodes are already hidden upon initializing other conversations in my database.
Thanks.