X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fscreens.c;h=f689f1a00baa32f7bcdadc342a753751f2a72d05;hb=59c2e609872b70cb4c458004cd9e2fe22c86a54b;hp=5cc2e514e2e3b82ccf3c35344b4b159fb7a2f3b1;hpb=f45528c08776cd2c87a83bf3ec7e1f7fe7b18765;p=rocksndiamonds.git diff --git a/src/screens.c b/src/screens.c index 5cc2e514..f689f1a0 100644 --- a/src/screens.c +++ b/src/screens.c @@ -1,13 +1,12 @@ /*********************************************************** * Rocks'n'Diamonds -- McDuffin Strikes Back! * *----------------------------------------------------------* -* ©1995 Artsoft Development * -* Holger Schemel * -* 33659 Bielefeld-Senne * -* Telefon: (0521) 493245 * -* eMail: aeglos@valinor.owl.de * -* aeglos@uni-paderborn.de * -* q99492@pbhrzx.uni-paderborn.de * +* (c) 1995-98 Artsoft Entertainment * +* Holger Schemel * +* Oststrasse 11a * +* 33604 Bielefeld * +* phone: ++49 +521 290471 * +* email: aeglos@valinor.owl.de * *----------------------------------------------------------* * screens.c * ***********************************************************/ @@ -24,6 +23,7 @@ #include "tape.h" #include "joystick.h" #include "cartoons.h" +#include "network.h" #ifdef MSDOS extern unsigned char get_ascii(KeySym); @@ -205,7 +205,7 @@ void HandleMainMenu(int mx, int my, int dx, int dy, int button) { game_status = LEVELED; if (leveldir[leveldir_nr].readonly) - AreYouSure("This level is read only !",AYS_CONFIRM); + Request("This level is read only !",REQ_CONFIRM); DrawLevelEd(); } else if (y==7) @@ -218,8 +218,13 @@ void HandleMainMenu(int mx, int my, int dx, int dy, int button) if (autorecord_on) TapeStartRecording(); - game_status = PLAYING; - InitGame(); + if (network) + SendToServer_StartPlaying(); + else + { + game_status = PLAYING; + InitGame(); + } } else if (y==9) { @@ -229,7 +234,7 @@ void HandleMainMenu(int mx, int my, int dx, int dy, int button) else if (y==10) { SavePlayerInfo(PLAYER_LEVEL); - if (AreYouSure("Do you really want to quit ?",AYS_ASK|AYS_STAY_CLOSED)) + if (Request("Do you really want to quit ?", REQ_ASK | REQ_STAY_CLOSED)) game_status = EXITGAME; } @@ -680,7 +685,9 @@ void CheckCheat() { int old_handicap = local_player->handicap; +#if 0 if (!strcmp(local_player->alias_name,"Artsoft")) +#endif local_player->handicap = leveldir[leveldir_nr].levels-1; if (local_player->handicap != old_handicap) @@ -1299,7 +1306,7 @@ void CalibrateJoystick() DrawSetupScreen(); } -void HandleGameActions(int player_action) +void HandleGameActions(byte player_action) { if (game_status != PLAYING) return; @@ -1328,7 +1335,7 @@ void HandleVideoButtons(int mx, int my, int button) { LoadLevelTape(level_nr); if (TAPE_IS_EMPTY(tape)) - AreYouSure("No tape for this level !",AYS_CONFIRM); + Request("No tape for this level !",REQ_CONFIRM); } else { @@ -1338,18 +1345,27 @@ void HandleVideoButtons(int mx, int my, int button) } DrawCompleteVideoDisplay(); break; + case BUTTON_VIDEO_STOP: TapeStop(); break; + case BUTTON_VIDEO_PAUSE: TapeTogglePause(); break; + case BUTTON_VIDEO_REC: if (TAPE_IS_STOPPED(tape)) { TapeStartRecording(); - game_status = PLAYING; - InitGame(); + + if (network) + SendToServer_StartPlaying(); + else + { + game_status = PLAYING; + InitGame(); + } } else if (tape.pausing) { @@ -1366,6 +1382,7 @@ void HandleVideoButtons(int mx, int my, int button) TapeTogglePause(); } break; + case BUTTON_VIDEO_PLAY: if (TAPE_IS_EMPTY(tape)) break; @@ -1373,6 +1390,7 @@ void HandleVideoButtons(int mx, int my, int button) if (TAPE_IS_STOPPED(tape)) { TapeStartPlaying(); + game_status = PLAYING; InitGame(); } @@ -1398,6 +1416,7 @@ void HandleVideoButtons(int mx, int my, int button) } } break; + default: break; } @@ -1430,6 +1449,7 @@ void HandleSoundButtons(int mx, int my, int button) else DrawSoundDisplay(BUTTON_SOUND_MUSIC_OFF); break; + case BUTTON_SOUND_LOOPS: if (sound_loops_on) { @@ -1446,6 +1466,7 @@ void HandleSoundButtons(int mx, int my, int button) else DrawSoundDisplay(BUTTON_SOUND_LOOPS_OFF); break; + case BUTTON_SOUND_SIMPLE: if (sound_simple_on) { @@ -1462,6 +1483,7 @@ void HandleSoundButtons(int mx, int my, int button) else DrawSoundDisplay(BUTTON_SOUND_SIMPLE_OFF); break; + default: break; } @@ -1485,34 +1507,70 @@ void HandleGameButtons(int mx, int my, int button) break; } - if (AreYouSure("Do you really want to quit the game ?", - AYS_ASK | AYS_STAY_CLOSED)) + if (Request("Do you really want to quit the game ?", + REQ_ASK | REQ_STAY_CLOSED)) { - game_status = MAINMENU; - DrawMainMenu(); + if (network) + SendToServer_StopPlaying(); + else + { + game_status = MAINMENU; + DrawMainMenu(); + } } else OpenDoor(DOOR_OPEN_1 | DOOR_COPY_BACK); break; + case BUTTON_GAME_PAUSE: + if (network) + { + if (tape.pausing) + SendToServer_ContinuePlaying(); + else + SendToServer_PausePlaying(); + } + else + TapeTogglePause(); + + /* if (tape.pausing) { - tape.pausing = FALSE; - DrawVideoDisplay(VIDEO_STATE_PAUSE_OFF,0); + if (network) + SendToServer_ContinuePlaying(); + else + { + tape.pausing = FALSE; + DrawVideoDisplay(VIDEO_STATE_PAUSE_OFF,0); + } } else { - tape.pausing = TRUE; - DrawVideoDisplay(VIDEO_STATE_PAUSE_ON,0); + if (network) + SendToServer_PausePlaying(); + else + { + tape.pausing = TRUE; + DrawVideoDisplay(VIDEO_STATE_PAUSE_ON,0); + } } + */ + break; + case BUTTON_GAME_PLAY: if (tape.pausing) { - tape.pausing = FALSE; - DrawVideoDisplay(VIDEO_STATE_PAUSE_OFF,0); + if (network) + SendToServer_ContinuePlaying(); + else + { + tape.pausing = FALSE; + DrawVideoDisplay(VIDEO_STATE_PAUSE_OFF,0); + } } break; + default: break; }