+2006-08-18
+ * fixed bug that caused broken tapes when manually appending to tapes
+ using the "pause before death" functionality, followed by recording
+ * added setup option to disable fading of screens for faster testing
+
2006-08-16
* code cleanup of new fading functions
-#define COMPILE_DATE_STRING "[2006-08-16 22:55]"
+#define COMPILE_DATE_STRING "[2006-08-18 21:12]"
si->direct_draw = !si->double_buffering;
si->scroll_delay = TRUE;
si->soft_scrolling = TRUE;
- si->fading = FALSE;
+ si->fading = TRUE;
si->autorecord = TRUE;
si->show_titlescreen = TRUE;
si->quick_doors = 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();
{
int i;
+#if 0
+ static int foo = -1;
+
+ if (action[0] == 0 && foo != 0)
+ printf("KEY RELEASED @ %05d\n", FrameCounter);
+
+ foo = action[0];
+#endif
+
+#if 0
+#if 1
+ if (FrameCounter % 10 == 0)
+#endif
+ printf("::: %05d: %lu, %d\n", FrameCounter, RandomEM, frame);
+#endif
+
game_animscreen();
#if 1
#if 0
{ TYPE_SWITCH, &setup.soft_scrolling, "Soft Scrolling:" },
{ TYPE_SWITCH, &setup.double_buffering,"Double-Buffering:" },
- { TYPE_SWITCH, &setup.fading, "Fading:" },
#endif
+ { TYPE_SWITCH, &setup.fading, "Fading:" },
{ TYPE_SWITCH, &setup.quick_switch, "Quick Player Focus Switch:" },
{ TYPE_SWITCH, &setup.quick_doors, "Quick Menu Doors:" },
{ TYPE_SWITCH, &setup.show_titlescreen,"Show Title Screens:" },
redraw_mask |= fade_mask;
- if (fade_delay == 0)
+ if (!setup.fading || fade_delay == 0)
{
if (fade_mode == FADE_MODE_FADE_OUT)
ClearRectangle(backbuffer, x, y, width, height);