#define SC_SCHLUESSEL 9
#define SC_ZEITBONUS 10
-/* values for game_emulation */
-#define EMU_NONE 0
-#define EMU_BOULDERDASH 1
-#define EMU_SOKOBAN 2
-#define EMU_SUPAPLEX 3
-
-/* to control special behaviour of certain game elements */
-int game_emulation = EMU_NONE;
-
phase = 7 - phase;
}
- if (Store[x][y])
+ if (game_emulation == EMU_SUPAPLEX)
+ DrawGraphic(sx, sy, GFX_SP_DISK_RED);
+ else if (Store[x][y])
DrawGraphicThruMask(sx, sy, graphic + phase);
else
DrawGraphic(sx, sy, graphic + phase);
DrawText(DX_DYNAMITE, DY_DYNAMITE, int2str(local_player->dynamite, 3),
FS_SMALL, FC_YELLOW);
if (IN_SCR_FIELD(SCREENX(jx), SCREENY(jy)))
- DrawGraphicThruMask(SCREENX(jx), SCREENY(jy), GFX_DYNAMIT);
+ {
+ if (game_emulation == EMU_SUPAPLEX)
+ DrawGraphic(SCREENX(jx), SCREENY(jy), GFX_SP_DISK_RED);
+ else
+ DrawGraphicThruMask(SCREENX(jx), SCREENY(jy), GFX_DYNAMIT);
+ }
}
else
{
boolean SiebAktiv;
int SiebCount;
+int game_emulation = EMU_NONE;
+
boolean network_player_action_received = FALSE;
struct LevelDirInfo leveldir[MAX_LEVDIR_ENTRIES];
extern boolean SiebAktiv;
extern int SiebCount;
+extern int game_emulation;
+
extern boolean network_player_action_received;
extern struct LevelDirInfo leveldir[];
#define ANIM_OSCILLATE 1
#define ANIM_REVERSE 2
+/* values for game_emulation */
+#define EMU_NONE 0
+#define EMU_BOULDERDASH 1
+#define EMU_SOKOBAN 2
+#define EMU_SUPAPLEX 3
+
#endif /* MAIN_H */
void TapeTogglePause()
{
+ unsigned long state;
+
if (!tape.recording && !tape.playing)
return;
tape.pausing = !tape.pausing;
tape.fast_forward = FALSE;
tape.pause_before_death = FALSE;
- DrawVideoDisplay((tape.pausing ?
- VIDEO_STATE_PAUSE_ON :
- VIDEO_STATE_PAUSE_OFF) | VIDEO_STATE_PBEND_OFF,
- 0);
+
+ state = (tape.pausing ? VIDEO_STATE_PAUSE_ON : VIDEO_STATE_PAUSE_OFF);
+ if (tape.playing)
+ state |= VIDEO_STATE_PBEND_OFF;
+
+ DrawVideoDisplay(state, 0);
}
void TapeStartPlaying()
phase = 7 - phase;
}
- DrawGraphicThruMask(sx, sy, graphic + phase);
+ if (game_emulation == EMU_SUPAPLEX)
+ DrawGraphic(sx, sy, GFX_SP_DISK_RED);
+ else
+ DrawGraphicThruMask(sx, sy, graphic + phase);
}
if ((last_jx != jx || last_jy != jy) &&