#define EL_INVISIBLE_STEELWALL_HORIZONTAL (EL_FIRST_DUMMY + 10)
#define EL_INVISIBLE_STEELWALL_VERTICAL (EL_FIRST_DUMMY + 11)
#define EL_SAND_CRUMBLED (EL_FIRST_DUMMY + 12)
-#define EL_DYNABOMB_ACTIVE (EL_FIRST_DUMMY + 13)
-#define EL_SHIELD_NORMAL_ACTIVE (EL_FIRST_DUMMY + 14)
-#define EL_SHIELD_DEADLY_ACTIVE (EL_FIRST_DUMMY + 15)
-#define EL_DEFAULT (EL_FIRST_DUMMY + 16)
-#define EL_BD_DEFAULT (EL_FIRST_DUMMY + 17)
-#define EL_SP_DEFAULT (EL_FIRST_DUMMY + 18)
-#define EL_SB_DEFAULT (EL_FIRST_DUMMY + 19)
-
-#define MAX_NUM_ELEMENTS (EL_FIRST_DUMMY + 20)
+#define EL_DYNABOMB (EL_FIRST_DUMMY + 13)
+#define EL_DYNABOMB_ACTIVE (EL_FIRST_DUMMY + 14)
+#define EL_DYNABOMB_PLAYER_1 (EL_FIRST_DUMMY + 15)
+#define EL_DYNABOMB_PLAYER_2 (EL_FIRST_DUMMY + 16)
+#define EL_DYNABOMB_PLAYER_3 (EL_FIRST_DUMMY + 17)
+#define EL_DYNABOMB_PLAYER_4 (EL_FIRST_DUMMY + 18)
+#define EL_SHIELD_NORMAL_ACTIVE (EL_FIRST_DUMMY + 19)
+#define EL_SHIELD_DEADLY_ACTIVE (EL_FIRST_DUMMY + 20)
+#define EL_DEFAULT (EL_FIRST_DUMMY + 21)
+#define EL_BD_DEFAULT (EL_FIRST_DUMMY + 22)
+#define EL_SP_DEFAULT (EL_FIRST_DUMMY + 23)
+#define EL_SB_DEFAULT (EL_FIRST_DUMMY + 24)
+
+#define MAX_NUM_ELEMENTS (EL_FIRST_DUMMY + 25)
/* values for graphics/sounds action types */
#define PROGRAM_VERSION_MAJOR 2
#define PROGRAM_VERSION_MINOR 2
#define PROGRAM_VERSION_PATCH 0
-#define PROGRAM_VERSION_RELEASE 7
-#define PROGRAM_VERSION_STRING "2.2.0rc7"
+#define PROGRAM_VERSION_RELEASE 8
+#define PROGRAM_VERSION_STRING "2.2.0rc8"
#define PROGRAM_TITLE_STRING "Rocks'n'Diamonds"
#define PROGRAM_AUTHOR_STRING "Holger Schemel"
boolean gravity;
boolean em_slippery_gems; /* EM style "gems slip from wall" behaviour */
+ short field[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
+
boolean use_custom_template; /* use custom properties from template file */
boolean no_level_file;
extern int redraw_x1, redraw_y1;
extern short Feld[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
-extern short Ur[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
extern short MovPos[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
extern short MovDir[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
extern short MovDelay[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
extern short Back[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
extern boolean Stop[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
extern boolean Pushed[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
+extern boolean Changing[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
extern short JustStopped[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
extern short AmoebaNr[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
extern short AmoebaCnt[MAX_NUM_AMOEBA];
extern int graphics_action_mapping[];
-extern struct LevelInfo level;
+extern struct LevelInfo level, level_template;
extern struct PlayerInfo stored_player[], *local_player;
extern struct HiScore highscore[];
extern struct TapeInfo tape;