struct LevelInfo
{
+ int file_version; /* version of file this level was stored with */
+ int game_version; /* version of game engine to play this level */
int fieldx;
int fieldy;
int time;
struct TapeInfo
{
+ int file_version; /* version of file this level tape was stored with */
+ int game_version; /* version of game engine to play this tapeĀ“s level */
+ int version;
int level_nr;
unsigned long random_seed;
unsigned long date;
struct GameInfo
{
+ int version;
int emulation;
int yam_content_nr;
boolean magic_wall_active;
int belt_dir_nr[4];
int switchgate_pos;
int balloon_dir;
+ boolean explosions_delayed;
};
struct GlobalInfo
extern short JustStopped[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
extern short AmoebaNr[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
extern short AmoebaCnt[MAX_NUM_AMOEBA], AmoebaCnt2[MAX_NUM_AMOEBA];
+extern short ExplodeField[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
extern unsigned long Elementeigenschaften1[MAX_ELEMENTS];
extern unsigned long Elementeigenschaften2[MAX_ELEMENTS];
#define EL_TRAP_ACTIVE 522
#define EL_SPRING_MOVING 523
#define EL_SP_MURPHY_CLONE 524
+#define EL_QUICKSAND_EMPTYING 525
+#define EL_MAGIC_WALL_EMPTYING 526
+#define EL_MAGIC_WALL_BD_EMPTYING 527
+#define EL_AMOEBA_DRIPPING 528
/* "unreal" (and therefore not drawable) runtime elements */
#define EL_BLOCKED 600
#define EL_MAUERND 607
#define EL_BURNING 608
#define EL_PLAYER_IS_LEAVING 609
+#define EL_QUICKSAND_FILLING 610
+#define EL_MAGIC_WALL_FILLING 611
+#define EL_MAGIC_WALL_BD_FILLING 612
/* game graphics:
** 0 - 255: graphics from "RocksScreen"
#define X11_ICONMASK_FILENAME "rocks_iconmask.xbm"
#define MSDOS_POINTER_FILENAME "mouse.pcx"
+/* file version numbers for resource files (levels, tapes, score, setup, etc.)
+** currently supported/known file version numbers:
+** 1.0 (old)
+** 1.2 (still in use)
+** 1.4 (still in use)
+** 2.0 (actual)
+*/
+#define FILE_VERSION_1_0 10
+#define FILE_VERSION_1_2 12
+#define FILE_VERSION_1_4 14
+#define FILE_VERSION_2_0 20
+#define FILE_VERSION_ACTUAL FILE_VERSION_2_0
+#define GAME_VERSION_1_0 FILE_VERSION_1_0
+#define GAME_VERSION_1_2 FILE_VERSION_1_2
+#define GAME_VERSION_1_4 FILE_VERSION_1_4
+#define GAME_VERSION_2_0 FILE_VERSION_2_0
+#define GAME_VERSION_ACTUAL GAME_VERSION_2_0
+
/* for DrawGraphicAnimation() [tools.c] and AnimateToon() [cartoons.c] */
#define ANIM_NORMAL 0
#define ANIM_OSCILLATE 1