X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.h;h=9ae8be8755859d1db69733f117162c43f50ae2e8;hb=0a4bbe85a69ae2fc05d05c2e1fee44f2b1c44134;hp=ab26aad533650a1b19010a500a4d249185d6b184;hpb=2fe139696892ee39f804b5c7315b8f0977ab01ec;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index ab26aad5..9ae8be87 100644 --- a/src/main.h +++ b/src/main.h @@ -191,6 +191,7 @@ typedef unsigned char byte; #define TAPE_IS_STOPPED(x) (!(x).recording && !(x).playing &&!(x).pausing) #define PLAYERINFO(x,y) (&stored_player[StorePlayer[x][y]-EL_SPIELER1]) +#define FORCE_FIELD_ON(p) ((p)->force_field_passive_time_left > 0) /* Pixmaps with graphic file */ #define PIX_BACK 0 @@ -353,6 +354,8 @@ struct PlayerInfo int key[4]; int dynamite; int dynabomb_count, dynabomb_size, dynabombs_left, dynabomb_xl; + int force_field_passive_time_left; + int force_field_active_time_left; }; struct LevelInfo @@ -589,12 +592,12 @@ extern char *element_info[]; #define MICRO_SP_PER_LINE 64 #define MINI_DC_STARTX 256 -#define MINI_DC_STARTY 0 -#define MICRO_DC_STARTX 256 +#define MINI_DC_STARTY 256 +#define MICRO_DC_STARTX 384 #define MICRO_DC_STARTY 384 -#define DC_PER_LINE 8 -#define MINI_DC_PER_LINE 8 -#define MICRO_DC_PER_LINE 8 +#define DC_PER_LINE 16 +#define MINI_DC_PER_LINE 16 +#define MICRO_DC_PER_LINE 16 #define FONT_CHARS_PER_LINE 16 #define FONT_LINES_PER_FONT 4 @@ -850,7 +853,7 @@ extern char *element_info[]; #define EL_DOOR_WHITE 260 #define EL_DOOR_WHITE_GRAY 261 #define EL_KEY_WHITE 262 -#define EL_FORCE_FIELD 263 +#define EL_FORCE_FIELD_PASSIVE 263 #define EL_EXTRA_TIME 264 #define EL_SWITCHGATE_OPEN 265 #define EL_SWITCHGATE_CLOSED 266 @@ -904,6 +907,11 @@ extern char *element_info[]; #define EL_MOLE_DOWN 314 #define EL_STEEL_SLANTED 315 #define EL_SAND_INVISIBLE 316 +#define EL_DX_UNKNOWN_15 317 +#define EL_DX_UNKNOWN_42 318 +#define EL_DX_UNKNOWN_229 319 +#define EL_DX_UNKNOWN_233 320 +#define EL_FORCE_FIELD_ACTIVE 321 /* "real" (and therefore drawable) runtime elements */ #define EL_SIEB_LEER 500 @@ -1320,6 +1328,10 @@ extern char *element_info[]; #define GFX_LANDMINE (GFX_START_ROCKSDC + 14 * DC_PER_LINE + 7) #define GFX_STEEL_SLANTED (GFX_START_ROCKSDC + 15 * DC_PER_LINE + 5) +#define GFX_EXTRA_TIME (GFX_START_ROCKSDC + 0 * DC_PER_LINE + 8) +#define GFX_FORCE_FIELD_PASSIVE (GFX_START_ROCKSDC + 1 * DC_PER_LINE + 8) +#define GFX_FORCE_FIELD_ACTIVE (GFX_START_ROCKSDC + 1 * DC_PER_LINE + 8) + /* graphics from "RocksFont" */ #define GFX_CHAR_START (GFX_START_ROCKSFONT) #define GFX_CHAR_ASCII0 (GFX_CHAR_START - 32) @@ -1360,8 +1372,6 @@ extern char *element_info[]; #define GFX_DOOR_WHITE GFX_CHAR_FRAGE #define GFX_DOOR_WHITE_GRAY GFX_CHAR_FRAGE #define GFX_KEY_WHITE GFX_CHAR_FRAGE -#define GFX_FORCE_FIELD GFX_CHAR_FRAGE -#define GFX_EXTRA_TIME GFX_CHAR_FRAGE #define GFX_TIME_GATE GFX_CHAR_FRAGE #define GFX_TIME_GATE_WHEEL GFX_CHAR_FRAGE #define GFX_SIGN_RADIOACTIVITY GFX_CHAR_FRAGE @@ -1378,6 +1388,10 @@ extern char *element_info[]; #define GFX_MOLE_RIGHT GFX_CHAR_FRAGE #define GFX_MOLE_UP GFX_CHAR_FRAGE #define GFX_MOLE_DOWN GFX_CHAR_FRAGE +#define GFX_DX_UNKNOWN_15 GFX_CHAR_FRAGE +#define GFX_DX_UNKNOWN_42 GFX_CHAR_FRAGE +#define GFX_DX_UNKNOWN_229 GFX_CHAR_FRAGE +#define GFX_DX_UNKNOWN_233 GFX_CHAR_FRAGE /* the names of the sounds */ #define SND_ALCHEMY 0