projects
/
rocksndiamonds.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rnd-20040822-3-src
[rocksndiamonds.git]
/
src
/
screens.c
diff --git
a/src/screens.c
b/src/screens.c
index 50c8685ab59f7116c9ba68ec9612545b50d0430c..425c35e86f014dfbc4c079166e7bb76c1d7ccdd7 100644
(file)
--- a/
src/screens.c
+++ b/
src/screens.c
@@
-495,7
+495,7
@@
void HandleMainMenu(int mx, int my, int dx, int dy, int button)
if (setup.autorecord)
TapeStartRecording();
if (setup.autorecord)
TapeStartRecording();
-#if defined(
PLATFORM_UNIX
)
+#if defined(
NETWORK_AVALIABLE
)
if (options.network)
SendToServer_StartPlaying();
else
if (options.network)
SendToServer_StartPlaying();
else
@@
-2409,6
+2409,8
@@
static void drawPlayerSetupInputInfo(int player_nr)
DrawText(mSX+11*32, mSY+2*32, int2str(player_nr +1, 1), FONT_INPUT_1_ACTIVE);
#if 1
DrawText(mSX+11*32, mSY+2*32, int2str(player_nr +1, 1), FONT_INPUT_1_ACTIVE);
#if 1
+ ClearRectangleOnBackground(drawto, mSX + 8 * TILEX, mSY + 2 * TILEY,
+ TILEX, TILEY);
DrawGraphicThruMaskExt(drawto, mSX + 8 * TILEX, mSY + 2 * TILEY,
PLAYER_NR_GFX(IMG_PLAYER_1, player_nr), 0);
#else
DrawGraphicThruMaskExt(drawto, mSX + 8 * TILEX, mSY + 2 * TILEY,
PLAYER_NR_GFX(IMG_PLAYER_1, player_nr), 0);
#else
@@
-2942,17
+2944,35
@@
void HandleGameActions()
if (game_status != GAME_MODE_PLAYING)
return;
if (game_status != GAME_MODE_PLAYING)
return;
- if (local_player->LevelSolved)
- GameWon();
+ /* !!! FIX THIS (START) !!! */
+ if (level.file_info.type == LEVEL_FILE_TYPE_EM)
+ {
+ byte summarized_player_action = 0;
+ int i;
-
if (AllPlayersGone && !TAPE_IS_STOPPED(tape)
)
-
TapeStop()
;
+
for (i = 0; i < MAX_PLAYERS; i++
)
+
summarized_player_action |= stored_player[i].action
;
- GameActions();
- BackToFront();
+ if (em_main_handle_game(summarized_player_action) != 0)
+ {
+ game_status = GAME_MODE_MAIN;
+ DrawMainMenu();
+ }
+ }
+ else
+ {
+ if (local_player->LevelSolved)
+ GameWon();
+
+ if (AllPlayersGone && !TAPE_IS_STOPPED(tape))
+ TapeStop();
- if (tape.auto_play && !tape.playing)
- AutoPlayTape(); /* continue automatically playing next tape */
+ GameActions();
+ BackToFront();
+
+ if (tape.auto_play && !tape.playing)
+ AutoPlayTape(); /* continue automatically playing next tape */
+ }
}
/* ---------- new screen button stuff -------------------------------------- */
}
/* ---------- new screen button stuff -------------------------------------- */