#define CE_HITTING_SOMETHING 5
#define CE_IMPACT 6
#define CE_SMASHED 7
-#define CE_OTHER_IS_TOUCHING 8
-#define CE_OTHER_IS_CHANGING 9
-#define CE_OTHER_IS_EXPLODING 10
-#define CE_OTHER_GETS_TOUCHED 11
-#define CE_OTHER_GETS_PRESSED 12
-#define CE_OTHER_GETS_PUSHED 13
-#define CE_OTHER_GETS_COLLECTED 14
-#define CE_OTHER_GETS_DROPPED 15
+#define CE_TOUCHING_X 8
+#define CE_CHANGE_OF_X 9
+#define CE_EXPLOSION_OF_X 10
+#define CE_PLAYER_TOUCHES_X 11
+#define CE_PLAYER_PRESSES_X 12
+#define CE_PLAYER_PUSHES_X 13
+#define CE_PLAYER_COLLECTS_X 14
+#define CE_PLAYER_DROPS_X 15
#define CE_BY_PLAYER_OBSOLETE 16 /* obsolete; now CE_BY_DIRECT_ACTION */
#define CE_BY_COLLISION_OBSOLETE 17 /* obsolete; now CE_BY_DIRECT_ACTION */
#define CE_BY_OTHER_ACTION 18 /* activates other element events */
#define CE_BY_DIRECT_ACTION 19 /* activates direct element events */
-#define CE_OTHER_GETS_DIGGED 20
+#define CE_PLAYER_DIGS_X 20
#define CE_ENTERED_BY_PLAYER 21
#define CE_LEFT_BY_PLAYER 22
-#define CE_OTHER_GETS_ENTERED 23
-#define CE_OTHER_GETS_LEFT 24
+#define CE_PLAYER_ENTERS_X 23
+#define CE_PLAYER_LEAVES_X 24
#define CE_SWITCHED 25
-#define CE_OTHER_IS_SWITCHING 26
+#define CE_SWITCH_OF_X 26
#define CE_HIT_BY_SOMETHING 27
-#define CE_OTHER_IS_HITTING 28
-#define CE_OTHER_GETS_HIT 29
+#define CE_HITTING_X 28
+#define CE_HIT_BY_X 29
#define CE_BLOCKED 30
#define NUM_CHANGE_EVENTS 31
#define PLAYER_SWITCHING(p,x,y) ((p)->is_switching && \
(p)->switch_x == (x) && (p)->switch_y == (y))
+#define PLAYER_DROPPING(p,x,y) ((p)->is_dropping && \
+ (p)->drop_x == (x) && (p)->drop_y == (y))
+
#define PLAYER_NR_GFX(g,i) ((g) + i * (IMG_PLAYER_2 - IMG_PLAYER_1))
#define ANIM_FRAMES(g) (graphic_info[g].anim_frames)
/* program information and versioning definitions */
+#if 1
+#define PROGRAM_VERSION_MAJOR 3
+#define PROGRAM_VERSION_MINOR 1
+#define PROGRAM_VERSION_PATCH 1
+#define PROGRAM_VERSION_BUILD 0
+#else
#define PROGRAM_VERSION_MAJOR 3
#define PROGRAM_VERSION_MINOR 2
#define PROGRAM_VERSION_PATCH 0
#define PROGRAM_VERSION_BUILD 3
+#endif
#define PROGRAM_TITLE_STRING "Rocks'n'Diamonds"
#define PROGRAM_AUTHOR_STRING "Holger Schemel"
int num_special_action_sleeping;
int switch_x, switch_y;
+ int drop_x, drop_y;
int show_envelope;