#define EP_DROPPABLE 22
#define EP_CAN_EXPLODE_1X1 23
#define EP_PUSHABLE 24
-#define EP_CAN_EXPLODE_DYNA 25
+#define EP_CAN_EXPLODE_CROSS 25
#define EP_PROTECTED 26
#define EP_CAN_MOVE_INTO_ACID 27
#define IS_DROPPABLE(e) HAS_PROPERTY(e, EP_DROPPABLE)
#define CAN_EXPLODE_1X1(e) HAS_PROPERTY(e, EP_CAN_EXPLODE_1X1)
#define IS_PUSHABLE(e) HAS_PROPERTY(e, EP_PUSHABLE)
-#define CAN_EXPLODE_DYNA(e) HAS_PROPERTY(e, EP_CAN_EXPLODE_DYNA)
+#define CAN_EXPLODE_CROSS(e) HAS_PROPERTY(e, EP_CAN_EXPLODE_CROSS)
#define IS_PROTECTED(e) HAS_PROPERTY(e, EP_PROTECTED)
#define CAN_MOVE_INTO_ACID(e) HAS_PROPERTY(e, EP_CAN_MOVE_INTO_ACID)
#define PROGRAM_VERSION_MAJOR 3
#define PROGRAM_VERSION_MINOR 1
#define PROGRAM_VERSION_PATCH 0
-#define PROGRAM_VERSION_BUILD 0
+#define PROGRAM_VERSION_BUILD 1
#define PROGRAM_TITLE_STRING "Rocks'n'Diamonds"
#define PROGRAM_AUTHOR_STRING "Holger Schemel"
boolean block_last_field; /* player blocks previous field while moving */
boolean sp_block_last_field; /* player blocks previous field while moving */
boolean use_spring_bug; /* for compatibility with old levels */
+ boolean instant_relocation; /* no visual delay when relocating player */
+ /* ('int' instead of 'boolean' because used as selectbox value in editor) */
int use_step_counter; /* count steps instead of seconds for level */
short field[MAX_LEV_FIELDX][MAX_LEV_FIELDY];
boolean explode; /* explode instead of change */
+ /* ---------- internal values used at runtime when playing ---------- */
+
/* functions that are called before, while and after the change of an
element -- currently only used for non-custom elements */
void (*pre_change_function)(int x, int y);
void (*change_function)(int x, int y);
void (*post_change_function)(int x, int y);
- /* ---------- internal values used at runtime when playing ---------- */
-
short actual_trigger_element; /* element that actually triggered change */
int actual_trigger_player; /* player which actually triggered change */