X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fevents.c;h=2d8eca3e861657b6442169036ac88d5395f08934;hb=50c422d96b6da2c0412b6bd3763e9d1a029a6014;hp=ed76f9a655beac4341b36a1cb80bb4cfda26b5fb;hpb=f9a30d8f0565691424cc9fd2643a50a176dae903;p=rocksndiamonds.git diff --git a/src/events.c b/src/events.c index ed76f9a6..2d8eca3e 100644 --- a/src/events.c +++ b/src/events.c @@ -22,6 +22,11 @@ #include "joystick.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 +258,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,23 +279,23 @@ void HandleButton(int mx, int my, int button) old_mx = mx; old_my = my; - HandleVideoButtons(mx,my,button); - HandleSoundButtons(mx,my,button); - HandleGameButtons(mx,my,button); + HandleVideoButtons(mx,my, button); + HandleSoundButtons(mx,my, button); + HandleGameButtons(mx,my, button); } switch(game_status) { case MAINMENU: - HandleMainMenu(mx,my,0,0,button); + HandleMainMenu(mx,my, 0,0, button); break; case TYPENAME: - HandleTypeName(0,XK_Return); + HandleTypeName(0, XK_Return); break; case CHOOSELEVEL: - HandleChooseLevel(mx,my,0,0,button); + HandleChooseLevel(mx,my, 0,0, button); break; case HALLOFFAME: @@ -296,7 +303,7 @@ void HandleButton(int mx, int my, int button) break; case LEVELED: - LevelEd(mx,my,button); + LevelEd(mx,my, button); break; case HELPSCREEN: @@ -304,11 +311,11 @@ void HandleButton(int mx, int my, int button) break; case SETUP: - HandleSetupScreen(mx,my,0,0,button); + HandleSetupScreen(mx,my, 0,0, button); break; case SETUPINPUT: - HandleSetupInputScreen(mx,my,0,0,button); + HandleSetupInputScreen(mx,my, 0,0, button); break; case PLAYING: @@ -426,9 +433,17 @@ void HandleKey(KeySym key, int key_status) return; } + + +#ifndef DEBUG + if (game_status == PLAYING && (tape.playing || tape.pausing)) return; +#endif + + + switch(game_status) { case TYPENAME: @@ -496,7 +511,12 @@ void HandleKey(KeySym key, int key_status) case XK_8: case XK_9: if (key == XK_0) - GameFrameDelay = 500; + { + if (GameFrameDelay == 500) + GameFrameDelay = GAME_FRAME_DELAY; + else + GameFrameDelay = 500; + } else GameFrameDelay = (key - XK_0) * 10; printf("Game speed == %d%% (%d ms delay between two frames)\n", @@ -545,80 +565,6 @@ void HandleKey(KeySym key, int key_status) #if 0 - case XK_x: - - { - int i,j,k, num_steps = 8, step_size = TILEX / num_steps; - static long scroll_delay=0; - long scroll_delay_value = 4*4 / num_steps; - - printf("Scroll test\n"); - - for(i=0;i<3;i++) - { - for(j=0;j