#define IS_INTERNAL_ELEMENT(e) ((e) >= EL_INTERNAL_START && \
(e) <= EL_INTERNAL_END)
+#define IS_MM_ELEMENT(e) ((e) >= EL_MM_START && \
+ (e) <= EL_MM_END)
+
+#define IS_DF_ELEMENT(e) ((e) >= EL_DF_START && \
+ (e) <= EL_DF_END)
+
+#define IS_MM_WALL(e) (((e) >= EL_MM_WALL_START && \
+ (e) <= EL_MM_WALL_END) || \
+ ((e) >= EL_DF_WALL_START && \
+ (e) <= EL_DF_WALL_END))
+
+#define IS_DF_WALL(e) (((e) >= EL_DF_WALL_START && \
+ (e) <= EL_DF_WALL_END))
+
#define IS_ENVELOPE(e) ((e) >= EL_ENVELOPE_1 && \
(e) <= EL_ENVELOPE_4)
#define EL_FROM_LEVEL_TEMPLATE 863
#define EL_MM_START 864
+#define EL_MM_START_1 EL_MM_START
+
#define EL_MM_EMPTY_SPACE (EL_MM_START + 0)
#define EL_MM_EMPTY EL_MM_EMPTY_SPACE
#define EL_MM_MIRROR_START (EL_MM_START + 1)
#define EL_MM_WOODEN_GRID_FIXED_END EL_MM_WOODEN_GRID_FIXED_03
#define EL_MM_FUEL_EMPTY (EL_MM_START + 155)
-#define EL_DF_START (EL_MM_START + 156)
+#define EL_MM_END_1 (EL_MM_START + 155)
+#define EL_MM_START_2 (EL_MM_START + 156)
+
+#define EL_DF_START EL_MM_START_2
#define EL_DF_START2 (EL_DF_START - 240)
#define EL_DF_MIRROR_START EL_DF_START
#define EL_DF_STEEL_WALL 1209
#define EL_DF_WOODEN_WALL 1210
-#define EL_MM_END (EL_DF_START2 + 430)
+#define EL_MM_END_2 (EL_DF_START2 + 430)
+#define EL_MM_END EL_MM_END_2
#define NUM_FILE_ELEMENTS 1211
#define EL_MM_GRAY_BALL_OPENING (EL_FIRST_RUNTIME_REAL + 74)
#define EL_MM_ICE_WALL_SHRINKING (EL_FIRST_RUNTIME_REAL + 75)
#define EL_MM_AMOEBA_WALL_GROWING (EL_FIRST_RUNTIME_REAL + 76)
+#define EL_MM_PACMAN_EATING_RIGHT (EL_FIRST_RUNTIME_REAL + 77)
+#define EL_MM_PACMAN_EATING_UP (EL_FIRST_RUNTIME_REAL + 78)
+#define EL_MM_PACMAN_EATING_LEFT (EL_FIRST_RUNTIME_REAL + 79)
+#define EL_MM_PACMAN_EATING_DOWN (EL_FIRST_RUNTIME_REAL + 80)
-#define NUM_DRAWABLE_ELEMENTS (EL_FIRST_RUNTIME_REAL + 77)
+#define NUM_DRAWABLE_ELEMENTS (EL_FIRST_RUNTIME_REAL + 81)
#define EL_MM_RUNTIME_START EL_MM_EXIT_OPENING
#define EL_MM_RUNTIME_END EL_MM_AMOEBA_WALL_GROWING
boolean use_custom_template; /* use custom properties from template file */
+ boolean file_has_custom_elements; /* set when level file contains CEs */
+
boolean no_valid_file; /* set when level file missing or invalid */
boolean no_level_file; /* set when falling back to level template */