added using masked drawing for player on walkable tiles in BD engine
[rocksndiamonds.git] / src / game_bd / bd_cave.h
index 9a0c52a720a228bd3ecbe4e18d49e6027816e5ad..3dede416f53f3dc8e5702baa67447e9057595568 100644 (file)
@@ -121,12 +121,14 @@ enum _element_property
   E_P_MOVED_BY_CONVEYOR_TOP,    // can be moved by conveyor belt
   E_P_MOVED_BY_CONVEYOR_BOTTOM, // can be moved UNDER the conveyor belt
 
+  E_P_WALKABLE,                 // can be walked
   E_P_DIGGABLE,                 // can be digged
   E_P_COLLECTIBLE,              // can be collected
   E_P_PUSHABLE,                 // can be pushed
   E_P_CAN_MOVE,                 // can move
   E_P_CAN_FALL,                 // can fall
   E_P_FALLING,                  // falling
+  E_P_GROWING,                  // growing (element birth)
 };
 
 // properties
@@ -159,12 +161,14 @@ enum _element_property
 #define P_MOVED_BY_CONVEYOR_TOP                (1 << E_P_MOVED_BY_CONVEYOR_TOP)
 #define P_MOVED_BY_CONVEYOR_BOTTOM     (1 << E_P_MOVED_BY_CONVEYOR_BOTTOM)
 
+#define P_WALKABLE                     (1 << E_P_WALKABLE)
 #define P_DIGGABLE                     (1 << E_P_DIGGABLE)
 #define P_COLLECTIBLE                  (1 << E_P_COLLECTIBLE)
 #define P_PUSHABLE                     (1 << E_P_PUSHABLE)
 #define P_CAN_MOVE                     (1 << E_P_CAN_MOVE)
 #define P_CAN_FALL                     (1 << E_P_CAN_FALL)
 #define P_FALLING                      (1 << E_P_FALLING)
+#define P_GROWING                      (1 << E_P_GROWING)
 
 // These are states of the magic wall.
 typedef enum _magic_wall_state
@@ -719,4 +723,7 @@ void gd_replay_store_movement(GdReplay *replay, GdDirection player_move, boolean
 unsigned int gd_cave_adler_checksum(GdCave *cave);
 void gd_cave_adler_checksum_more(GdCave *cave, unsigned int *a, unsigned int *b);
 
+boolean gd_cave_has_levels(GdCave *cave);
+boolean gd_caveset_has_levels(void);
+
 #endif // BD_CAVE_H