X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fevents.c;h=7a6ff377fd91440277c9db4986ad1e591c3dd430;hb=d522e996ec9a28cd01c056764799996a4ac5474e;hp=35f08ad0feea2b452b3759ac20b7ced8212d2aa2;hpb=8ff72a216ac9dfefcb4cf85b47063600867ceec2;p=rocksndiamonds.git diff --git a/src/events.c b/src/events.c index 35f08ad0..7a6ff377 100644 --- a/src/events.c +++ b/src/events.c @@ -1718,9 +1718,11 @@ void HandleButton(int mx, int my, int button, int button_nr) // when playing, only handle gadgets when using "follow finger" controls // or when using touch controls in combination with the MM game engine // or when using gadgets that do not overlap with virtual buttons + // or when touch controls are disabled (e.g., with mouse-only levels) handle_gadgets = (game_status != GAME_MODE_PLAYING || level.game_engine_type == GAME_ENGINE_TYPE_MM || + strEqual(setup.touch.control_type, TOUCH_CONTROL_OFF) || strEqual(setup.touch.control_type, TOUCH_CONTROL_FOLLOW_FINGER) || (strEqual(setup.touch.control_type, TOUCH_CONTROL_VIRTUAL_BUTTONS) && !CheckVirtualButtonPressed(mx, my, button))); @@ -2333,6 +2335,14 @@ void HandleKey(Key key, int key_status) if (HandleGadgetsKeyInput(key)) return; // do not handle already processed keys again + // special case: on "space" key, either continue playing or go to main menu + if (game_status == GAME_MODE_SCORES && key == KSYM_space) + { + HandleHallOfFame(0, 0, 0, 0, MB_MENU_CONTINUE); + + return; + } + switch (game_status) { case GAME_MODE_PSEUDO_TYPENAME: