#include "tape.h"
#include "network.h"
-/* values for key_status */
-#define KEY_NOT_PRESSED FALSE
-#define KEY_RELEASED FALSE
-#define KEY_PRESSED TRUE
-
static boolean cursor_inside_playfield = FALSE;
static boolean playfield_cursor_set = FALSE;
}
/* 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;
int key_status = (event->type==EVENT_KEYPRESS ? KEY_PRESSED : KEY_RELEASED);
boolean with_modifiers = (game_status == GAME_MODE_PLAYING ? FALSE : TRUE);
Key key = GetEventKey(event, with_modifiers);
+ Key keymod = (with_modifiers ? GetEventKey(event, FALSE) : key);
+ HandleKeyModState(keymod, key_status);
HandleKey(key, key_status);
}
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");
}
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
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: