X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fevents.c;h=5dbf4cd68e2ffea4601b24b9ffe34d42392582ed;hb=ffda824157292e928e191ac15981652ad745e7c4;hp=3d3cdde0e4a7aeb3e351c079aff59baa0825dc02;hpb=9073d88279c0b9c5be103a6bb4d5c608ab0d90cc;p=rocksndiamonds.git diff --git a/src/events.c b/src/events.c index 3d3cdde0..5dbf4cd6 100644 --- a/src/events.c +++ b/src/events.c @@ -58,7 +58,8 @@ int FilterMouseMotionEvents(const Event *event) } /* skip mouse motion events without pressed button outside level editor */ - if (button_status == MB_RELEASED && game_status != GAME_MODE_EDITOR) + if (button_status == MB_RELEASED && game_status != GAME_MODE_EDITOR && + game_status != GAME_MODE_PLAYING) return 0; else return 1; @@ -267,7 +268,7 @@ void SleepWhileUnmapped() } if (game_status == GAME_MODE_PLAYING) - KeyboardAutoRepeatOff(); + KeyboardAutoRepeatOffUnlessAutoplay(); } void HandleExposeEvent(ExposeEvent *event) @@ -347,7 +348,7 @@ void HandleFocusEvent(FocusChangeEvent *event) if (game_status == GAME_MODE_PLAYING) { Delay(100); - KeyboardAutoRepeatOff(); + KeyboardAutoRepeatOffUnlessAutoplay(); } if (old_joystick_status != -1) joystick.status = old_joystick_status; @@ -431,6 +432,7 @@ void HandleButton(int mx, int my, int button) printf(" MovPos[%d][%d] == %d\n", x,y, MovPos[x][y]); printf(" MovDir[%d][%d] == %d\n", x,y, MovDir[x][y]); printf(" MovDelay[%d][%d] == %d\n", x,y, MovDelay[x][y]); + printf(" ChangeDelay[%d][%d] == %d\n", x,y, ChangeDelay[x][y]); printf(" GfxElement[%d][%d] == %d\n", x,y, GfxElement[x][y]); printf("\n"); } @@ -625,16 +627,16 @@ void HandleKey(Key key, int key_status) case KSYM_Page_Up: if (game_status == GAME_MODE_LEVELS) - HandleChooseLevel(0,0, 0,-SCR_FIELDY, MB_MENU_MARK); + HandleChooseLevel(0,0, 0, -1 * SCROLL_PAGE, MB_MENU_MARK); else if (game_status == GAME_MODE_SETUP) - HandleSetupScreen(0,0, 0,-SCR_FIELDY, MB_MENU_MARK); + HandleSetupScreen(0,0, 0, -1 * SCROLL_PAGE, MB_MENU_MARK); break; case KSYM_Page_Down: if (game_status == GAME_MODE_LEVELS) - HandleChooseLevel(0,0, 0,SCR_FIELDY, MB_MENU_MARK); + HandleChooseLevel(0,0, 0, +1 * SCROLL_PAGE, MB_MENU_MARK); else if (game_status == GAME_MODE_SETUP) - HandleSetupScreen(0,0, 0,SCR_FIELDY, MB_MENU_MARK); + HandleSetupScreen(0,0, 0, +1 * SCROLL_PAGE, MB_MENU_MARK); break; #ifdef DEBUG @@ -662,11 +664,11 @@ void HandleKey(Key key, int key_status) break; case KSYM_Page_Up: - HandleHallOfFame(0,0, 0,-SCR_FIELDY, MB_MENU_MARK); + HandleHallOfFame(0,0, 0, -1 * SCROLL_PAGE, MB_MENU_MARK); break; case KSYM_Page_Down: - HandleHallOfFame(0,0, 0,SCR_FIELDY, MB_MENU_MARK); + HandleHallOfFame(0,0, 0, +1 * SCROLL_PAGE, MB_MENU_MARK); break; default: