X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fevents.c;h=2fe47e4de408086cd4b5d5cc7e1a8c0923c8830d;hb=cd47bf969c6d8c602b8f5dfa100f0be944bd0e46;hp=f6bf55914775d87984939f4c9022d1c66714a714;hpb=dbdefdcdfa0fa58296160ffc6b72fea58bea5c75;p=rocksndiamonds.git diff --git a/src/events.c b/src/events.c index f6bf5591..2fe47e4d 100644 --- a/src/events.c +++ b/src/events.c @@ -20,8 +20,14 @@ #include "misc.h" #include "tape.h" #include "joystick.h" +#include "buttons.h" #include "network.h" +/* values for key_status */ +#define KEY_NOT_PRESSED FALSE +#define KEY_RELEASED FALSE +#define KEY_PRESSED TRUE + void EventLoop(void) { while(1) @@ -253,9 +259,11 @@ void HandleFocusEvent(XFocusChangeEvent *event) void HandleClientMessageEvent(XClientMessageEvent *event) { +#ifndef MSDOS if ((event->window == window) && (event->data.l[0] == XInternAtom(display, "WM_DELETE_WINDOW", FALSE))) CloseAllAndExit(0); +#endif } void HandleButton(int mx, int my, int button) @@ -272,6 +280,7 @@ void HandleButton(int mx, int my, int button) old_mx = mx; old_my = my; + HandleGadgets(mx,my, button); HandleVideoButtons(mx,my, button); HandleSoundButtons(mx,my, button); HandleGameButtons(mx,my, button); @@ -595,8 +604,10 @@ void HandleNoXEvent() return; } +#ifndef MSDOS if (options.network) HandleNetworking(); +#endif HandleJoystick(); @@ -613,12 +624,19 @@ static int HandleJoystickForAllPlayers() { byte joy_action = 0; + /* if (!setup.input[i].use_joystick) continue; + */ joy_action = Joystick(i); result |= joy_action; + + if (!setup.input[i].use_joystick) + continue; + + stored_player[i].action = joy_action; } @@ -646,7 +664,7 @@ void HandleJoystick() case SETUP: case SETUPINPUT: { - static long joystickmove_delay = 0; + static unsigned long joystickmove_delay = 0; if (joystick && !button && !DelayReached(&joystickmove_delay, 150)) newbutton = dx = dy = 0;