X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fevents.c;h=4d7a7a36d68ee479fb0b8c1644c6935f5a5212cf;hb=fa628a204ea4662806244b0ed994a48b40ece2ca;hp=410c34c28864a56a07725b3acf1aef253194899e;hpb=1e5cae5e3ab889c3bcba80a065c6d7ba1e6d28a2;p=rocksndiamonds.git diff --git a/src/events.c b/src/events.c index 410c34c2..4d7a7a36 100644 --- a/src/events.c +++ b/src/events.c @@ -566,7 +566,6 @@ static void HandleKeysSpecial(Key key) void HandleKey(Key key, int key_status) { - int joy = 0; boolean anyTextGadgetActiveOrJustFinished = anyTextGadgetActive(); static struct SetupKeyboardInfo custom_key; static struct @@ -583,6 +582,8 @@ void HandleKey(Key key, int key_status) { &custom_key.snap, DEFAULT_KEY_SNAP, JOY_BUTTON_1 }, { &custom_key.drop, DEFAULT_KEY_DROP, JOY_BUTTON_2 } }; + int joy = 0; + int i; if (game_status == GAME_MODE_PLAYING) { @@ -593,7 +594,6 @@ void HandleKey(Key key, int key_status) for (pnr = 0; pnr < MAX_PLAYERS; pnr++) { - int i; byte key_action = 0; if (setup.input[pnr].use_joystick) @@ -649,8 +649,6 @@ void HandleKey(Key key, int key_status) } else { - int i; - for (i = 0; i < 6; i++) if (key == key_info[i].key_default) joy |= key_info[i].action; @@ -682,7 +680,8 @@ void HandleKey(Key key, int key_status) return; } - if (game_status == GAME_MODE_MAIN && key == setup.shortcut.toggle_pause) + if (game_status == GAME_MODE_MAIN && + (key == setup.shortcut.toggle_pause || key == KSYM_space)) { StartGameActions(options.network, setup.autorecord, NEW_RANDOMIZE); @@ -699,6 +698,16 @@ void HandleKey(Key key, int key_status) TapeTogglePause(TAPE_TOGGLE_MANUAL); } + if (game_status == GAME_MODE_PLAYING) + { + if (key == setup.shortcut.focus_player_all) + game.centered_player_nr_next = -1; + else + for (i = 0; i < MAX_PLAYERS; i++) + if (key == setup.shortcut.focus_player[i]) + game.centered_player_nr_next = i; + } + HandleKeysSpecial(key); if (HandleGadgetsKeyInput(key)) @@ -719,7 +728,12 @@ void HandleKey(Key key, int key_status) case GAME_MODE_INFO: switch(key) { +#if 1 case KSYM_space: +#else + /* !!! only use "space" key to start game from main menu !!! */ + case KSYM_space: +#endif case KSYM_Return: if (game_status == GAME_MODE_MAIN) HandleMainMenu(0,0, 0,0, MB_MENU_CHOICE); @@ -758,6 +772,12 @@ void HandleKey(Key key, int key_status) HandleInfoScreen(0,0, 0, +1 * SCROLL_PAGE, MB_MENU_MARK); break; +#ifdef DEBUG + case KSYM_0: + GameFrameDelay = (GameFrameDelay == 500 ? GAME_FRAME_DELAY : 500); + break; +#endif + default: break; } @@ -801,6 +821,7 @@ void HandleKey(Key key, int key_status) #ifdef DEBUG case KSYM_0: +#if 0 case KSYM_1: case KSYM_2: case KSYM_3: @@ -810,6 +831,7 @@ void HandleKey(Key key, int key_status) case KSYM_7: case KSYM_8: case KSYM_9: +#endif if (key == KSYM_0) { if (GameFrameDelay == 500)