added additional empty space elements to level editor
[rocksndiamonds.git] / src / main.h
index 83dc95df2d1b24be043d7eec1ca16f4cd551babb..9108054efe4fa91463d78b08e6198acc1645a9d0 100644 (file)
 #define CE_PRESSED_BY_MOUSE            45
 #define CE_MOUSE_CLICKED_ON_X          46
 #define CE_MOUSE_PRESSED_ON_X          47
+#define CE_NEXT_TO_PLAYER              48
+#define CE_NEXT_TO_X                   49
+#define CE_PLAYER_NEXT_TO_X            50
 
-#define NUM_CHANGE_EVENTS              48
+#define NUM_CHANGE_EVENTS              51
 
 #define NUM_CE_BITFIELDS               ((NUM_CHANGE_EVENTS + 31) / 32)
 
 #define EL_SPRING_LEFT                 1215
 #define EL_SPRING_RIGHT                        1216
 
-#define NUM_FILE_ELEMENTS              1217
+// ---------- begin of empty space elements section ---------------------------
+#define EL_EMPTY_SPACE_START           1217
+
+#include "conf_emp.h"  // include auto-generated data structure definitions
+
+#define NUM_EMPTY_SPACE_ELEMENTS       16
+#define EL_EMPTY_SPACE_END             1232
+// ---------- end of empty space elements section -----------------------------
+
+#define NUM_FILE_ELEMENTS              1233
 
 
 // "real" (and therefore drawable) runtime elements
 #define EL_INTERNAL_CASCADE_CE_ACTIVE          (EL_FIRST_INTERNAL + 29)
 #define EL_INTERNAL_CASCADE_GE                 (EL_FIRST_INTERNAL + 30)
 #define EL_INTERNAL_CASCADE_GE_ACTIVE          (EL_FIRST_INTERNAL + 31)
-#define EL_INTERNAL_CASCADE_REF                        (EL_FIRST_INTERNAL + 32)
-#define EL_INTERNAL_CASCADE_REF_ACTIVE         (EL_FIRST_INTERNAL + 33)
-#define EL_INTERNAL_CASCADE_USER               (EL_FIRST_INTERNAL + 34)
-#define EL_INTERNAL_CASCADE_USER_ACTIVE                (EL_FIRST_INTERNAL + 35)
-#define EL_INTERNAL_CASCADE_DYNAMIC            (EL_FIRST_INTERNAL + 36)
-#define EL_INTERNAL_CASCADE_DYNAMIC_ACTIVE     (EL_FIRST_INTERNAL + 37)
+#define EL_INTERNAL_CASCADE_ES                 (EL_FIRST_INTERNAL + 32)
+#define EL_INTERNAL_CASCADE_ES_ACTIVE          (EL_FIRST_INTERNAL + 33)
+#define EL_INTERNAL_CASCADE_REF                        (EL_FIRST_INTERNAL + 34)
+#define EL_INTERNAL_CASCADE_REF_ACTIVE         (EL_FIRST_INTERNAL + 35)
+#define EL_INTERNAL_CASCADE_USER               (EL_FIRST_INTERNAL + 36)
+#define EL_INTERNAL_CASCADE_USER_ACTIVE                (EL_FIRST_INTERNAL + 37)
+#define EL_INTERNAL_CASCADE_DYNAMIC            (EL_FIRST_INTERNAL + 38)
+#define EL_INTERNAL_CASCADE_DYNAMIC_ACTIVE     (EL_FIRST_INTERNAL + 39)
 
 #define EL_INTERNAL_CLIPBOARD_START    (EL_FIRST_INTERNAL + 0)
 #define EL_INTERNAL_CLIPBOARD_END      (EL_FIRST_INTERNAL + 2)
 #define EL_INTERNAL_START              (EL_FIRST_INTERNAL + 0)
-#define EL_INTERNAL_END                        (EL_FIRST_INTERNAL + 37)
+#define EL_INTERNAL_END                        (EL_FIRST_INTERNAL + 39)
 
-#define MAX_NUM_ELEMENTS               (EL_FIRST_INTERNAL + 38)
+#define MAX_NUM_ELEMENTS               (EL_FIRST_INTERNAL + 40)
 
 
 // values for graphics/sounds action types
@@ -2575,8 +2589,8 @@ enum
 // program information and versioning definitions
 #define PROGRAM_VERSION_SUPER          4
 #define PROGRAM_VERSION_MAJOR          3
-#define PROGRAM_VERSION_MINOR          0
-#define PROGRAM_VERSION_PATCH          3
+#define PROGRAM_VERSION_MINOR          1
+#define PROGRAM_VERSION_PATCH          0
 #define PROGRAM_VERSION_EXTRA          ""
 
 #define PROGRAM_TITLE_STRING           "Rocks'n'Diamonds"
@@ -3735,6 +3749,7 @@ extern int                        PlayerVisit[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
 
 extern int                     GfxFrame[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
 extern int                     GfxRandom[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
+extern int                     GfxRandomStatic[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
 extern int                     GfxElement[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
 extern int                     GfxAction[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
 extern int                     GfxDir[MAX_LEV_FIELDX][MAX_LEV_FIELDY];