static int name_action(int tok, int val) { audio_play(AUD_MENU, 1.0f); switch (tok) { case GUI_BACK: return goto_state(cancel_state); case NAME_OK: if (strlen(text_input) == 0) return 1; config_set_s(CONFIG_PLAYER, text_input); return goto_state(ok_state); case GUI_CL: gui_keyboard_lock(); break; case GUI_BS: text_input_del(); break; case GUI_CHAR: text_input_char(val); break; } return 1; }
static int name_action(int tok, int val) { audio_play(AUD_MENU, 1.0f); switch (tok) { case NAME_OK: if (strlen(player) == 0) return 1; config_set_s(CONFIG_PLAYER, player); return goto_state(ok_state); case NAME_CANCEL: return goto_state(cancel_state); case GUI_CL: gui_keyboard_lock(); break; case GUI_BS: if (text_del_char(player)) gui_set_label(name_id, player); break; case GUI_CHAR: if (text_add_char(val, player, sizeof (player))) gui_set_label(name_id, player); } return 1; }
static int save_action(int tok, int val) { audio_play(AUD_MENU, 1.0f); switch (tok) { case GUI_BACK: return goto_state(cancel_state); case SAVE_SAVE: if (strlen(text_input) == 0) return 1; if (demo_exists(text_input)) { return goto_state(&st_clobber); } else { demo_rename(text_input); return goto_state(ok_state); } case GUI_CL: gui_keyboard_lock(); break; case GUI_BS: text_input_del(); break; case GUI_CHAR: text_input_char(val); break; } return 1; }