diff --git a/src/menu.c b/src/menu.c
index ab0e5735fb24006d2465f7f94ba53ad83752c23a..e80e43612c2911159f50070bd163bd2692d71993 100644 (file)
--- a/src/menu.c
+++ b/src/menu.c
char ibuf[GM_MAX_INPUT];
byte input;
int icur;
-static int imax;
+int imax;
static byte cbuf[32];
short lastkey;
intptr_t i = (intptr_t)data;
switch (msg->type) {
case GM_ENTER:
- F_getsavnames();
+ if (g_st == GS_GAME) {
+ F_getsavnames();
+ } else {
+ GM_pop();
+ }
return 1;
case GM_GETSTR:
F_getsavnames();
GM_BIG, "Music", NULL, NULL,
{
{ GM_SCROLLER, "Volume", &mus_vol, &GM_var_handler, NULL },
- { GM_BUTTON, "Music:", g_music, &GM_var_handler, NULL },
+ { GM_BUTTON, "Music: ", g_music, &GM_var_handler, NULL },
{ 0, NULL, NULL, NULL, NULL } // end
}
}, options_menu = {
if (down) {
lastkey = key;
if (!_2pl || cheat) {
- for (i = 0; i < 31; ++i) {
+ for (i = 0; i < 31; i++) {
cbuf[i] = cbuf[i + 1];
}
- //cbuf[31] = get_keychar(key);
+ if (key >= KEY_0 && key <= KEY_9) {
+ cbuf[31] = key - KEY_0 + '0';
+ } else if (key >= KEY_A && key <= KEY_Z) {
+ cbuf[31] = key - KEY_A + 'A';
+ } else {
+ cbuf[31] = 0;
+ }
}
}
}