StopAnimation();
- if (do_fading)
- FadeOutField(TITLE_SCREEN_FADE_DELAY, TITLE_SCREEN_POST_DELAY);
-
if (!game.restart_level)
CloseDoor(DOOR_CLOSE_1);
+ if (do_fading)
+ FadeOut(REDRAW_FIELD);
+
/* !!! FIX THIS (START) !!! */
if (level.game_engine_type == GAME_ENGINE_TYPE_EM)
{
/* !!! FIX THIS (END) !!! */
if (do_fading)
- FadeInField(TITLE_SCREEN_FADE_DELAY);
+ FadeIn(REDRAW_FIELD);
if (!game.restart_level)
{
if (!local_player->LevelSolved_SaveScore)
{
- FadeOutField(TITLE_SCREEN_FADE_DELAY, TITLE_SCREEN_POST_DELAY);
+ FadeOut(REDRAW_FIELD);
game_status = GAME_MODE_MAIN;
- DrawMainMenuExt(TITLE_SCREEN_FADE_DELAY, REDRAW_FIELD);
+ DrawAndFadeInMainMenu(REDRAW_FIELD);
return;
}
}
else
{
- FadeOutField(TITLE_SCREEN_FADE_DELAY, TITLE_SCREEN_POST_DELAY);
+ FadeOut(REDRAW_FIELD);
game_status = GAME_MODE_MAIN;
TapeErase();
}
- DrawMainMenuExt(TITLE_SCREEN_FADE_DELAY, REDRAW_FIELD);
+ DrawAndFadeInMainMenu(REDRAW_FIELD);
}
local_player->LevelSolved_SaveScore = FALSE;
network_player_action_received = FALSE;
#endif
+ /* when playing tape, read previously recorded player input from tape data */
recorded_player_action = (tape.playing ? TapePlayAction() : NULL);
+#if 1
+ /* TapePlayAction() may return NULL when toggling to "pause before death" */
+ if (tape.pausing)
+ return;
+#endif
+
+#if 0
+ if (tape.playing)
+ {
+ if (recorded_player_action == NULL)
+ printf("!!! THIS SHOULD NOT HAPPEN !!!\n");
+ else
+ printf("::: %05d: TAPE PLAYING: %08x\n",
+ FrameCounter, recorded_player_action[0]);
+ }
+#endif
+
if (tape.set_centered_player)
{
game.centered_player_nr_next = tape.centered_player_nr_next;
if (tape.recording)
TapeRecordAction(tape_action);
+#if 0
+ if (tape.recording)
+ printf("::: %05d: TAPE RECORDING: %08x\n",
+ FrameCounter, tape_action[0]);
+#endif
+
if (level.game_engine_type == GAME_ENGINE_TYPE_EM)
{
GameActions_EM_Main();
}
else
{
- FadeOutField(TITLE_SCREEN_FADE_DELAY, TITLE_SCREEN_POST_DELAY);
+ FadeOut(REDRAW_FIELD);
game_status = GAME_MODE_MAIN;
- DrawMainMenuExt(TITLE_SCREEN_FADE_DELAY, REDRAW_FIELD);
+ DrawAndFadeInMainMenu(REDRAW_FIELD);
}
}
}