X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.h;h=1b877e7e31401e23a454b6a0b76bec2d27984ed7;hb=531605e2e684de4c30a4e9927f9c5107f468b163;hp=1e62cc61186a8ab658c32be77c43875a7ff6d2ab;hpb=4231c290a878b5fb95bffdf78b5486359ce1268f;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index 1e62cc61..1b877e7e 100644 --- a/src/main.h +++ b/src/main.h @@ -625,6 +625,18 @@ #define IS_OBSOLETE(e) HAS_PROPERTY(e, EP_OBSOLETE) /* special macros used in game engine */ +#define IS_FILE_ELEMENT(e) ((e) >= 0 && \ + (e) <= NUM_FILE_ELEMENTS) + +#define IS_DRAWABLE_ELEMENT(e) ((e) >= 0 && \ + (e) <= NUM_DRAWABLE_ELEMENTS) + +#define IS_RUNTIME_ELEMENT(e) ((e) >= 0 && \ + (e) <= NUM_RUNTIME_ELEMENTS) + +#define IS_VALID_ELEMENT(e) ((e) >= 0 && \ + (e) <= MAX_NUM_ELEMENTS) + #define IS_CUSTOM_ELEMENT(e) ((e) >= EL_CUSTOM_START && \ (e) <= EL_CUSTOM_END) @@ -1526,8 +1538,10 @@ #define EL_EMC_DRIPPER_ACTIVE (EL_FIRST_RUNTIME_REAL + 70) #define EL_EMC_SPRING_BUMPER_ACTIVE (EL_FIRST_RUNTIME_REAL + 71) +#define NUM_DRAWABLE_ELEMENTS (EL_FIRST_RUNTIME_REAL + 72) + /* "unreal" (and therefore not drawable) runtime elements */ -#define EL_FIRST_RUNTIME_UNREAL (EL_FIRST_RUNTIME_REAL + 72) +#define EL_FIRST_RUNTIME_UNREAL (NUM_DRAWABLE_ELEMENTS) #define EL_BLOCKED (EL_FIRST_RUNTIME_UNREAL + 0) #define EL_EXPLOSION (EL_FIRST_RUNTIME_UNREAL + 1)