What Triangle suggested was something I had thought about doing, but I'm just so adamant about making the games keyboard-only friendly that I couldn't bring myself to do it. What's more, nine times out of ten, when I bring up a menu, it is 100% necessary to get a response of some kind from the player in order for the game to continue, and it would the source of enormous bugs if the menus were skipped in any way for any reason.
I made another game a while ago that I'm submitting to Spring Thing (I had it made a while ago and I've wanted to show to everyone for SO LONG but now I have to wait) in which I broke down and made my own in-text menus back in 5.3 when Show Menu still produced a pop-up. I've just been using that since it's really not that hard, and I know the process by heart now.
<mainclassmenu type="script"><![CDATA[
msg ("<br/>You may choose from these choices for this relevant thing, {player.alias}.<br/>Please enter a number to find more relevant information about these options.<br/>1 - Option 1<br/>2 - Option 2<br/>3 - Option 3<br/>4 - Option 4<br/>5 - Ready to choose")
get input {
switch (result) {
case ("1") {
ClearScreen
msg ("Option one is all about THIS STUFF you should totally pick this one.")
do (PartySet, "mainclassmenu")
}
case ("2") {
ClearScreen
msg ("Option two is all about THIS STUFF you should totally pick this one.")
do (PartySet, "mainclassmenu")
}
case ("3") {
ClearScreen
msg ("Option three is all about THIS STUFF you should totally pick this one.")
do (PartySet, "mainclassmenu")
}
case ("4") {
ClearScreen
msg ("Option four is all about THIS STUFF you should totally pick this one.")
do (PartySet, "mainclassmenu")
}
case ("5") {
do (PartySet, "mainclasschoose")
}
default {
do (PartySet, "mainclassmenu")
}
}
}
]]></mainclassmenu>
<mainclasschoose type="script"><![CDATA[
ClearScreen
msg ("Which option are you picking?<br/>1 - Option 1<br/>2 - Option 2<br/>3 - Option 3<br/>4 - Option 4")
get input {
switch (result) {
case ("1") {
player.class = Option 1
msg ("<br/>You picked option one. You must be a cool dude.")
do (PartySet, "partyclassmenu")
}
case ("2") {
player.class = Option 2
msg ("<br/>You picked option two. You must be a swell fella.")
do (PartySet, "partyclassmenu")
}
case ("3") {
player.class = Option 3
msg ("<br/>You picked option three. Your mother must be so proud.")
do (PartySet, "partyclassmenu")
}
case ("4") {
player.class = Option 4
msg ("<br/>You picked option four. You'll regret that one down the road.")
do (PartySet, "partyclassmenu")
}
default {
do (PartySet, "mainclasschoose")
}
}
}
]]></mainclasschoose>
Where "mainclassmenu" and "mainclasschoose" are attributes of the room the player is in when encountering these menus. They work, and they're not... inefficient. I think. So you can use those for the time being if you're as anal as me about not making players use the mouse.