How to show why a certain dialogue option is unavailable

I want to have a dialogue option unavailable if certain conditions aren’t met but to to show what the condition is only if it is unavailable.

I remember someone posted a solution a few days ago but I can’t find it.

Using multi-replace you can do this quite easily:

*selectable_if (variable = 1) #@{(variable = 1) You do a thing|you cant do a thing because variable is below 1}

The problem I have with multireplace is the fact that I want to put a name (You need x relationship with y to ask this) and I have a different name depending on the gender of the NPC.

Edit: I could do a *if for the gender and then have the text remain the same but double it. This solution is pretty inelegant though…

Something like this?

*selectable_if (variable = 1) #@{(variable = 1) You do a thing|you can't do a thing because relationship with ${name} is below ${variable}}
  *if variable = 1
    *selectable_if (variable_z = 1) #you do xx thing.
      *goto x_thing
  *if variable = 0
    *selectable_if (variable_z = 1) #you can't do xx thing because you lack variable z.
      *goto x_thing_fail

*label x_thing
here continues

something like that could work…

edit: Just want to point out that you don’t need the “*goto x_thing_fail” because you can never select that choice. I was 1 minute before going out of work and I didn’t realized, sorry.

1 Like

Hah! I didn’t know you could nest *if inside a choice :man_facepalming:
A big thanks to both of you!

1 Like