From b307e719416e39ed525a1c51d7df61ae55b35eec Mon Sep 17 00:00:00 2001 From: Franklin Wei Date: Sun, 24 May 2015 18:34:58 -0400 Subject: polish some stuff --- src/menu.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src') diff --git a/src/menu.c b/src/menu.c index d0f8322..fe188da 100644 --- a/src/menu.c +++ b/src/menu.c @@ -26,6 +26,15 @@ void do_menu(struct player_t *player, const struct command_t *commands, uint len } } + /* look for a number and see if it corresponds to a valid command */ + ulong n = strtol(cmdbuf, NULL, 10); + if(0 < n && n <= len) + { + /* in range, execute */ + best_command = n - 1; + goto exec_cmd; + } + /* now look for a partial match */ for(uint i = 0; i < len; ++i) { @@ -66,6 +75,10 @@ exec_cmd: commands[best_command].handler(player); output("\n"); } + else + { + output("Unrecognized command: '%s'\n", cmdbuf); + } free(cmdbuf); } -- cgit v1.1