Returning Show Menu option's number, rather than string? [Solved]

Io
13 Jun 2019, 22:57

Is there a way to, when a player selects an option from Show Menu, to get the number of the choice rather than the choice itself? So for example, the player sees:

Make a Choice!
1. OPEN THE DOOR
2. OPEN THE DOOR
3. OPEN THE DOOR

And they select option 2. Is there a way to get different things to happen if you choose a different option? Ie OPEN THE DOOR 1 does a different thing than OPEN THE DOOR 2, even though they both give the same string 'result' variable?


DarkLizerd
13 Jun 2019, 23:03

Short answer... Yes.
But "result" should have different values.


Io
13 Jun 2019, 23:12

And long answer?


Dcoder
13 Jun 2019, 23:17

What happens if you use a stringdictionary instead of a stringlist for the menu of items? The key that the player selects (which is different) will go into result, but maybe the key's value (which would be same) could be dislayed in the menu instead? Just a thought.


Dcoder
13 Jun 2019, 23:30

Another thing I thought of is -- what if you use an object list instead of a string list? I don't remember if an object list in a menu shows a list of object names or aliases, but if the latter, you could list different objects with the same aliases.


Richard Headkid
13 Jun 2019, 23:40

Dcoder is onto something . . .

In this example, I'm just making it print 1, 2, or 3, depending on which "Open the door." the player chooses.

options = NewStringDictionary()
dictionary add (options, "1", "Open the door.")
dictionary add (options, "2", "Open the door.")
dictionary add (options, "3", "Open the door.")
ShowMenu ("Make a choice!", options, false) {
  msg (result)
}

http://docs.textadventures.co.uk/quest/using_dictionaries.html#some-uses-of-dictionaries


Io
13 Jun 2019, 23:59

Thanks, using a dictionary works perfectly!


DarkLizerd
14 Jun 2019, 00:58

"That was the long answer"...


hegemonkhan
14 Jun 2019, 04:24

I've created (well, still creating) my own menu system (currently for my character creation, but hope it'll eventually work for entire game too), as I like being able to just type in a number for a choice, here's an example of it:

http://textadventures.co.uk/forum/quest/topic/7un74f7l1ei6owtf2oukmw/including-walkthrough-question-delete-this-post-please#e2d1bff7-7978-4d27-9c41-3d4ac3cdf115

if you're interested, and if you need help with anything or don't understand something, let me know!