rnd-20080125-2-src
[rocksndiamonds.git] / src / main.h
index b497dae284fda288be1260fc1a18f0df0099dfb3..fbd89b278cf005a760fdea16059174e6c420e030 100644 (file)
 #define EP_THROWABLE                   28
 #define EP_CAN_EXPLODE                 29
 #define EP_GRAVITY_REACHABLE           30
+#define EP_DONT_GET_HIT_BY             31
 
 /* values for pre-defined properties */
 /* (from here on, values can be changed by inserting new values) */
 #define IS_THROWABLE(e)                HAS_PROPERTY(e, EP_THROWABLE)
 #define CAN_EXPLODE(e)         HAS_PROPERTY(e, EP_CAN_EXPLODE)
 #define IS_GRAVITY_REACHABLE(e)        HAS_PROPERTY(e, EP_GRAVITY_REACHABLE)
+#define DONT_GET_HIT_BY(e)     HAS_PROPERTY(e, EP_DONT_GET_HIT_BY)
 
 /* macros for special configurable properties */
 #define IS_EM_SLIPPERY_WALL(e) HAS_PROPERTY(e, EP_EM_SLIPPERY_WALL)
                                 (e) <= EL_EM_GATE_4)
 #define IS_EMC_GATE(e)         ((e) >= EL_EMC_GATE_5 &&                \
                                 (e) <= EL_EMC_GATE_8)
+#define IS_DC_GATE(e)          ((e) == EL_DC_GATE_WHITE)
 #define IS_GATE(e)             (IS_RND_GATE(e) ||                      \
                                 IS_EM_GATE(e) ||                       \
-                                IS_EMC_GATE(e))
+                                IS_EMC_GATE(e) ||                      \
+                                IS_DC_GATE(e))
 #define RND_GATE_NR(e)         ((e) - EL_GATE_1)
 #define EM_GATE_NR(e)          ((e) - EL_EM_GATE_1)
 #define EMC_GATE_NR(e)         ((e) - EL_EMC_GATE_5 + 4)
                                 (e) <= EL_EMC_GATE_8_GRAY)
 #define IS_EMC_GATE_GRAY_ACTIVE(e) ((e) >= EL_EMC_GATE_5_GRAY_ACTIVE &&        \
                                 (e) <= EL_EMC_GATE_8_GRAY_ACTIVE)
+#define IS_DC_GATE_GRAY(e)     ((e) == EL_DC_GATE_WHITE_GRAY)
+#define IS_DC_GATE_GRAY_ACTIVE(e) ((e) == EL_DC_GATE_WHITE_GRAY_ACTIVE)
+
 #define IS_GATE_GRAY(e)                (IS_RND_GATE_GRAY(e) ||                 \
                                 IS_EM_GATE_GRAY(e) ||                  \
-                                IS_EMC_GATE_GRAY(e))
+                                IS_EMC_GATE_GRAY(e) ||                 \
+                                IS_DC_GATE_GRAY(e))
 #define IS_GATE_GRAY_ACTIVE(e) (IS_RND_GATE_GRAY_ACTIVE(e) ||          \
                                 IS_EM_GATE_GRAY_ACTIVE(e) ||           \
-                                IS_EMC_GATE_GRAY_ACTIVE(e))
+                                IS_EMC_GATE_GRAY_ACTIVE(e) ||          \
+                                IS_DC_GATE_GRAY_ACTIVE(e))
 #define RND_GATE_GRAY_NR(e)    ((e) - EL_GATE_1_GRAY)
 #define RND_GATE_GRAY_ACTIVE_NR(e) ((e) - EL_GATE_1_GRAY_ACTIVE)
 #define EM_GATE_GRAY_NR(e)     ((e) - EL_EM_GATE_1_GRAY)
 
 #define PROGRAM_TITLE_STRING           "Rocks'n'Diamonds"
 #define PROGRAM_AUTHOR_STRING          "Holger Schemel"
-#define PROGRAM_COPYRIGHT_STRING       "Copyright ©1995-2007 by Holger Schemel"
+#define PROGRAM_COPYRIGHT_STRING       "Copyright ©1995-2008 by Holger Schemel"
 #define PROGRAM_EMAIL_STRING           "info@artsoft.org"
 #define PROGRAM_WEBSITE_STRING         "http://www.artsoft.org/"
 #define PROGRAM_GAME_BY_STRING         "A Game by Artsoft Entertainment"