From 1f731429c2299ea62b8335e096add76c1da53e1d Mon Sep 17 00:00:00 2001 From: Holger Schemel Date: Wed, 14 Oct 1998 10:18:36 +0200 Subject: [PATCH] rnd-19981014-1 --- src/buttons.c | 75 ++++++++++++++++++++++++++++++++++++--------------- src/buttons.h | 4 +-- src/game.c | 10 ------- src/tools.c | 38 +++++--------------------- 4 files changed, 62 insertions(+), 65 deletions(-) diff --git a/src/buttons.c b/src/buttons.c index 282481bd..d80dd860 100644 --- a/src/buttons.c +++ b/src/buttons.c @@ -222,34 +222,65 @@ void DrawGameButton(unsigned long state) redraw_mask |= REDRAW_DOOR_1; } -void DrawYesNoButton(unsigned long state) +void DrawYesNoButton(unsigned long state, int mode) { - int pos, cx = DOOR_GFX_PAGEX4, cy = 0; + Drawable dest_drawto; + int dest_xoffset, dest_yoffset; + int xpos, cx = DOOR_GFX_PAGEX4; - pos = (state & BUTTON_OK ? OK_BUTTON_XPOS : NO_BUTTON_XPOS); + if (mode == DB_INIT) + { + dest_drawto = pix[PIX_DB_DOOR]; + dest_xoffset = DOOR_GFX_PAGEX1; + dest_yoffset = 0; + } + else + { + dest_drawto = drawto; + dest_xoffset = DX; + dest_yoffset = DY; + } + + xpos = (state & BUTTON_OK ? OK_BUTTON_XPOS : NO_BUTTON_XPOS); if (state & BUTTON_PRESSED) cx = DOOR_GFX_PAGEX3; - XCopyArea(display,pix[PIX_DOOR],drawto,gc, - cx + pos,cy + OK_BUTTON_GFX_YPOS, - OK_BUTTON_XSIZE,OK_BUTTON_YSIZE, - DX + pos,DY + OK_BUTTON_YPOS); + XCopyArea(display, pix[PIX_DOOR], dest_drawto, gc, + cx + xpos, OK_BUTTON_GFX_YPOS, + OK_BUTTON_XSIZE, OK_BUTTON_YSIZE, + dest_xoffset + xpos, dest_yoffset + OK_BUTTON_YPOS); redraw_mask |= REDRAW_DOOR_1; } -void DrawConfirmButton(unsigned long state) +void DrawConfirmButton(unsigned long state, int mode) { - int cx = DOOR_GFX_PAGEX4, cy = 0; + Drawable dest_drawto; + int dest_xoffset, dest_yoffset; + int cx = DOOR_GFX_PAGEX4; + + if (mode == DB_INIT) + { + dest_drawto = pix[PIX_DB_DOOR]; + dest_xoffset = DOOR_GFX_PAGEX1; + dest_yoffset = 0; + } + else + { + dest_drawto = drawto; + dest_xoffset = DX; + dest_yoffset = DY; + } if (state & BUTTON_PRESSED) cx = DOOR_GFX_PAGEX3; - XCopyArea(display,pix[PIX_DOOR],drawto,gc, - cx + CONFIRM_BUTTON_XPOS,cy + CONFIRM_BUTTON_GFX_YPOS, - CONFIRM_BUTTON_XSIZE,CONFIRM_BUTTON_YSIZE, - DX + CONFIRM_BUTTON_XPOS,DY + CONFIRM_BUTTON_YPOS); + XCopyArea(display, pix[PIX_DOOR], dest_drawto, gc, + cx + CONFIRM_BUTTON_XPOS, CONFIRM_BUTTON_GFX_YPOS, + CONFIRM_BUTTON_XSIZE, CONFIRM_BUTTON_YSIZE, + dest_xoffset + CONFIRM_BUTTON_XPOS, + dest_yoffset + CONFIRM_BUTTON_YPOS); redraw_mask |= REDRAW_DOOR_1; } @@ -296,7 +327,7 @@ void DrawPlayerButton(unsigned long state, int mode) graphic_offset += 1; } - XCopyArea(display,pix[PIX_DOOR],dest_drawto,gc, + XCopyArea(display, pix[PIX_DOOR], dest_drawto, gc, cx + PLAYER_BUTTON_GFX_XPOS, cy + PLAYER_BUTTON_GFX_YPOS, PLAYER_BUTTON_XSIZE, PLAYER_BUTTON_YSIZE, dest_xoffset + xpos, dest_yoffset + ypos); @@ -694,7 +725,7 @@ int CheckYesNoButtons(int mx, int my, int button) { choice = YESNO_BUTTON(mx); pressed = TRUE; - DrawYesNoButton(yesno_button[choice] | BUTTON_PRESSED); + DrawYesNoButton(yesno_button[choice] | BUTTON_PRESSED, DB_NORMAL); } } else /* Mausbewegung bei gedrückter Maustaste */ @@ -703,12 +734,12 @@ int CheckYesNoButtons(int mx, int my, int button) choice>=0 && pressed) { pressed = FALSE; - DrawYesNoButton(yesno_button[choice] | BUTTON_RELEASED); + DrawYesNoButton(yesno_button[choice] | BUTTON_RELEASED, DB_NORMAL); } else if (ON_YESNO_BUTTON(mx,my) && YESNO_BUTTON(mx)==choice && !pressed) { pressed = TRUE; - DrawYesNoButton(yesno_button[choice] | BUTTON_PRESSED); + DrawYesNoButton(yesno_button[choice] | BUTTON_PRESSED, DB_NORMAL); } } } @@ -716,7 +747,7 @@ int CheckYesNoButtons(int mx, int my, int button) { if (ON_YESNO_BUTTON(mx,my) && YESNO_BUTTON(mx)==choice && pressed) { - DrawYesNoButton(yesno_button[choice] | BUTTON_RELEASED); + DrawYesNoButton(yesno_button[choice] | BUTTON_RELEASED, DB_NORMAL); return_code = choice+1; choice = -1; pressed = FALSE; @@ -746,7 +777,7 @@ int CheckConfirmButton(int mx, int my, int button) { choice = 0; pressed = TRUE; - DrawConfirmButton(BUTTON_PRESSED); + DrawConfirmButton(BUTTON_PRESSED, DB_NORMAL); } } else /* Mausbewegung bei gedrückter Maustaste */ @@ -754,12 +785,12 @@ int CheckConfirmButton(int mx, int my, int button) if (!ON_CONFIRM_BUTTON(mx,my) && choice>=0 && pressed) { pressed = FALSE; - DrawConfirmButton(BUTTON_RELEASED); + DrawConfirmButton(BUTTON_RELEASED, DB_NORMAL); } else if (ON_CONFIRM_BUTTON(mx,my) && !pressed) { pressed = TRUE; - DrawConfirmButton(BUTTON_PRESSED); + DrawConfirmButton(BUTTON_PRESSED, DB_NORMAL); } } } @@ -767,7 +798,7 @@ int CheckConfirmButton(int mx, int my, int button) { if (ON_CONFIRM_BUTTON(mx,my) && pressed) { - DrawConfirmButton(BUTTON_RELEASED); + DrawConfirmButton(BUTTON_RELEASED, DB_NORMAL); return_code = BUTTON_CONFIRM; choice = -1; pressed = FALSE; diff --git a/src/buttons.h b/src/buttons.h index 9ed110c8..f6d3341f 100644 --- a/src/buttons.h +++ b/src/buttons.h @@ -541,8 +541,8 @@ void DrawVideoDisplay(unsigned long, unsigned long); void DrawCompleteVideoDisplay(void); void DrawSoundDisplay(unsigned long); void DrawGameButton(unsigned long); -void DrawYesNoButton(unsigned long); -void DrawConfirmButton(unsigned long); +void DrawYesNoButton(unsigned long, int); +void DrawConfirmButton(unsigned long, int); void DrawPlayerButton(unsigned long, int); void DrawEditButton(unsigned long state); void DrawCtrlButton(unsigned long state); diff --git a/src/game.c b/src/game.c index 9c152d05..622a1857 100644 --- a/src/game.c +++ b/src/game.c @@ -134,20 +134,10 @@ void InitGame() network_player_action_received = FALSE; - - /* initial null action */ if (network_playing) SendToServer_MovePlayer(MV_NO_MOVING); - - - /* - printf("BLURB\n"); - */ - - - ZX = ZY = -1; MampferNr = 0; diff --git a/src/tools.c b/src/tools.c index 7efa122b..303dc469 100644 --- a/src/tools.c +++ b/src/tools.c @@ -1352,44 +1352,20 @@ BOOL Request(char *text, unsigned int req_state) } if (req_state & REQ_ASK) - XCopyArea(display,pix[PIX_DOOR],pix[PIX_DB_DOOR],gc, - DOOR_GFX_PAGEX4,OK_BUTTON_GFX_YPOS, - DXSIZE,OK_BUTTON_YSIZE, - DOOR_GFX_PAGEX1,OK_BUTTON_YPOS); + { + DrawYesNoButton(BUTTON_OK, DB_INIT); + DrawYesNoButton(BUTTON_NO, DB_INIT); + } else if (req_state & REQ_CONFIRM) - XCopyArea(display,pix[PIX_DOOR],pix[PIX_DB_DOOR],gc, - DOOR_GFX_PAGEX4,CONFIRM_BUTTON_GFX_YPOS, - DXSIZE,CONFIRM_BUTTON_YSIZE, - DOOR_GFX_PAGEX1,CONFIRM_BUTTON_YPOS); + { + DrawConfirmButton(BUTTON_CONFIRM, DB_INIT); + } else if (req_state & REQ_PLAYER) { DrawPlayerButton(BUTTON_PLAYER_1, DB_INIT); DrawPlayerButton(BUTTON_PLAYER_2, DB_INIT); DrawPlayerButton(BUTTON_PLAYER_3, DB_INIT); DrawPlayerButton(BUTTON_PLAYER_4, DB_INIT); - - /* - XCopyArea(display,pix[PIX_DOOR],pix[PIX_DB_DOOR],gc, - DOOR_GFX_PAGEX4 + PLAYER_BUTTON_GFX_XPOS, PLAYER_BUTTON_GFX_YPOS, - PLAYER_BUTTON_XSIZE,PLAYER_BUTTON_YSIZE, - DOOR_GFX_PAGEX1 + PLAYER_BUTTON_1_XPOS, PLAYER_BUTTON_1_YPOS); - XCopyArea(display,pix[PIX_DOOR],pix[PIX_DB_DOOR],gc, - DOOR_GFX_PAGEX4 + PLAYER_BUTTON_GFX_XPOS, PLAYER_BUTTON_GFX_YPOS, - PLAYER_BUTTON_XSIZE,PLAYER_BUTTON_YSIZE, - DOOR_GFX_PAGEX1 + PLAYER_BUTTON_1_XPOS, PLAYER_BUTTON_1_YPOS); - XCopyArea(display,pix[PIX_DOOR],pix[PIX_DB_DOOR],gc, - DOOR_GFX_PAGEX4 + PLAYER_BUTTON_GFX_XPOS, PLAYER_BUTTON_GFX_YPOS, - PLAYER_BUTTON_XSIZE,PLAYER_BUTTON_YSIZE, - DOOR_GFX_PAGEX1 + PLAYER_BUTTON_2_XPOS, PLAYER_BUTTON_2_YPOS); - XCopyArea(display,pix[PIX_DOOR],pix[PIX_DB_DOOR],gc, - DOOR_GFX_PAGEX4 + PLAYER_BUTTON_GFX_XPOS, PLAYER_BUTTON_GFX_YPOS, - PLAYER_BUTTON_XSIZE,PLAYER_BUTTON_YSIZE, - DOOR_GFX_PAGEX1 + PLAYER_BUTTON_3_XPOS, PLAYER_BUTTON_3_YPOS); - XCopyArea(display,pix[PIX_DOOR],pix[PIX_DB_DOOR],gc, - DOOR_GFX_PAGEX4 + PLAYER_BUTTON_GFX_XPOS, PLAYER_BUTTON_GFX_YPOS, - PLAYER_BUTTON_XSIZE,PLAYER_BUTTON_YSIZE, - DOOR_GFX_PAGEX1 + PLAYER_BUTTON_4_XPOS, PLAYER_BUTTON_4_YPOS); - */ } OpenDoor(DOOR_OPEN_1); -- 2.34.1