From cc4dc358c1801fd4ebf220b78427565a2af8d26b Mon Sep 17 00:00:00 2001 From: Allanis Date: Wed, 27 Feb 2013 15:48:12 +0000 Subject: [PATCH] [Fix] Bug that was introduced when allowing toolkit some control. --- src/input.c | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/src/input.c b/src/input.c index 4fe5ce6..747c229 100644 --- a/src/input.c +++ b/src/input.c @@ -112,7 +112,8 @@ void input_setKeybind(char* keybind, KeybindType type, int key, int reverse) { // value : Value of keypress (defined above). // abs : Whether or not it's an abs value (For those pesky joysticks. // ===================================================================== -#define KEY(s) (strcmp(input_keybinds[keynum]->name, s)==0) +#define KEY(s) (strcmp(input_keybinds[keynum]->name, s)==0) +#define INGAME() (!paused) static void input_key(int keynum, double value, int abs) { // Accelerating. if(KEY("accel")) { @@ -176,43 +177,43 @@ static void input_key(int keynum, double value, int abs) { } } // Board those ships. - else if(KEY("board") && !paused) { + else if(KEY("board") && INGAME()) { if(value == KEY_PRESS) player_board(); } // Shooting secondary weapon. - else if(KEY("secondary") && !paused) { + else if(KEY("secondary") && INGAME()) { if(value == KEY_PRESS) player_setFlag(PLAYER_SECONDARY); else if(value == KEY_RELEASE) player_rmFlag(PLAYER_SECONDARY); } // Selecting secondary weapon. - else if(KEY("secondary_next") && !paused) { + else if(KEY("secondary_next") && INGAME()) { if(value == KEY_PRESS) player_secondaryNext(); } // Space. // Target planet (cycles just like target). - else if(KEY("target_planet") && !paused) { + else if(KEY("target_planet") && INGAME()) { if(value == KEY_PRESS) player_targetPlanet(); } // Target nearest planet or attempt to land. - else if(KEY("land") && !paused) { + else if(KEY("land") && INGAME()) { if(value == KEY_PRESS) player_land(); } - else if(KEY("thyperspace") && !paused) { + else if(KEY("thyperspace") && INGAME()) { if(value == KEY_PRESS) player_targetHyperspace(); } - else if(KEY("jump") && !paused) { + else if(KEY("jump") && INGAME()) { if(value == KEY_PRESS) player_jump(); } // Zoom in. - else if(KEY("mapzoomin")) { + else if(KEY("mapzoomin") && INGAME()) { if(value == KEY_PRESS) player_setRadarRel(1); } // Zoom out. - else if(KEY("mapzoomout")) { + else if(KEY("mapzoomout") && INGAME()) { if(value == KEY_PRESS) player_setRadarRel(-1); } // Take a screenshot. - else if(KEY("screenshot")) { + else if(KEY("screenshot") && INGAME()) { if(value == KEY_PRESS) player_screenshot(); } // Pause the game. @@ -299,11 +300,10 @@ static void input_keyup(SDLKey key) { // Just seperates the event types. void input_handle(SDL_Event* event) { - if(toolkit) { + if(toolkit) // Toolkit is handled seperately. toolkit_input(event); - return; - } + switch(event->type) { case SDL_JOYAXISMOTION: input_joyaxis(event->jaxis.axis, event->jaxis.value);