ID:273484
 
As far as I can tell, when input is called with
 input(...) as anything in someList

and someList only has one option, input automatically returns the value of that option, without prompting the player.

Is there a way to kill this behavior and force input to prompt the player, even when there's only one option?
The only alternatives I can think of is:
1) Have the cancel button present. This is done using "as anything|null in list", "as null|(mob|turf, etc)".

2) Use alert() instead

3) Put an empty string as part of the list choices (but see #1 for the better alternative).

If someone presses the cancel button, a value of null is returned.

But seriously, why do an input() if no one has a choice? alert() would be suggested to use in those cases.
In response to GhostAnime (#1)
Well, the specific reason, is that I'm using it for dialog options. You might ask a bunch of questions before you fight someone, or you might just skip to the fighting. So, the options might be:
Ask about A
Ask about B
Kick some A

If they pick one of the first two options, it disappears after they pick it, and after the questioning, they come back to the same menu, with less options. Now, maybe it's just me being picky, but after they pick both of the first two options, I still want them to pick "Kick some A" before the fight begins.
It at least makes things clearer as to what's going on.
Picking from only one option seems to be a fairly common idea in games like KOTOR, for instance.

Of your three options, 1 is out, because I don't want to necessarily give them the option to back out, therefore I don't really want to give them the impression that they have that option, by putting in a defunct cancel button.
2 is out because it's still supposed to be a choice, even if it's a mandatory choice.
And, 3 is just so tacky. I've considered it, but I really feel like it's a lousy solution, to something that shouldn't really be such a problem.
In response to Chessmaster_19 (#2)
#4 is creating a custom skin to handle this for you. Its not hard to do, and it does look pretty good if you get it right.
In response to Pirion (#3)
Yeah, but I want to avoid getting caught up in the whole skin thing right now. I know I probably will put skins in eventually, but for now, I just want to worry about the game itself, and not sink all the time into learning how to make interfaces, and then doing all of that.

Knowing that I'll eventually have to switch over to skins, I've tried to keep my functions modularized, so that I can just redefine a few functions when I do switch to skins. Maybe I'll just have to ignore this until then...