X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.h;h=af0b57cfd3ecf6ca0e297993b43ff2a5b9110401;hb=234748b5eb0bc4fe29a36fd25a1d25658f53858a;hp=7b82f5e3a138adc4801cf5273e064a22b90fad14;hpb=cd9add1d9479d1938d05ca9df4f31c3f99bd5f3e;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index 7b82f5e3..af0b57cf 100644 --- a/src/main.h +++ b/src/main.h @@ -161,11 +161,33 @@ #define TAPE_IS_STOPPED(x) (!(x).recording && !(x).playing) #define PLAYERINFO(x,y) (&stored_player[StorePlayer[x][y]-EL_PLAYER1]) -#define SHIELD_ON(p) ((p)->shield_passive_time_left > 0) +#define SHIELD_ON(p) ((p)->shield_normal_time_left > 0) #define PROTECTED_FIELD(x,y) (IS_TUBE(Feld[x][y])) #define PLAYER_PROTECTED(x,y) (SHIELD_ON(PLAYERINFO(x, y)) || \ PROTECTED_FIELD(x, y)) +#define PLAYER_NR_GFX(g,i) ((g) + i * (IMG_PLAYER2 - IMG_PLAYER1)) + + +#if 0 + +/* Bitmaps with graphic file */ +#define PIX_BACK 0 +#define PIX_DOOR 1 +#define PIX_TOONS 2 +#define PIX_FONT_BIG 3 +#define PIX_FONT_SMALL 4 +#define PIX_FONT_MEDIUM 5 +#define PIX_FONT_EM 6 +/* Bitmaps without graphic file */ +#define PIX_DB_DOOR 7 +#define PIX_DB_FIELD 8 + +#define NUM_PICTURES 7 +#define NUM_BITMAPS 9 + +#else + /* Bitmaps with graphic file */ #define PIX_BACK 0 #define PIX_ELEMENTS 1 @@ -186,6 +208,8 @@ #define NUM_PICTURES 12 #define NUM_BITMAPS 14 +#endif + /* boundaries of arrays etc. */ #define MAX_LEVEL_NAME_LEN 32 #define MAX_LEVEL_AUTHOR_LEN 32 @@ -255,9 +279,9 @@ #define MICRO_GFX_PER_LINE 16 #define MINI_FONT_STARTX 0 -#define MINI_FONT_STARTY 128 -#define MICRO_FONT_STARTX 408 -#define MICRO_FONT_STARTY 128 +#define MINI_FONT_STARTY 160 +#define MICRO_FONT_STARTX 384 +#define MICRO_FONT_STARTY 160 #define HEROES_PER_LINE 16 @@ -694,9 +718,9 @@ #define EL_BLOCKED (EL_FIRST_RUNTIME_UNREAL + 0) #define EL_EXPLOSION (EL_FIRST_RUNTIME_UNREAL + 1) -#define EL_CRACKINGNUT (EL_FIRST_RUNTIME_UNREAL + 2) -#define EL_ACID_SPLASHING_LEFT (EL_FIRST_RUNTIME_UNREAL + 3) -#define EL_ACID_SPLASHING_RIGHT (EL_FIRST_RUNTIME_UNREAL + 4) +#define EL_NUT_CRACKING (EL_FIRST_RUNTIME_UNREAL + 2) +#define EL_ACID_SPLASH_LEFT (EL_FIRST_RUNTIME_UNREAL + 3) +#define EL_ACID_SPLASH_RIGHT (EL_FIRST_RUNTIME_UNREAL + 4) #define EL_AMOEBA_CREATING (EL_FIRST_RUNTIME_UNREAL + 5) #define EL_AMOEBA_SHRINKING (EL_FIRST_RUNTIME_UNREAL + 6) #define EL_WALL_GROWING_ACTIVE (EL_FIRST_RUNTIME_UNREAL + 7) @@ -1344,13 +1368,14 @@ #define GFX_ARG_OFFSET 2 #define GFX_ARG_VERTICAL 3 #define GFX_ARG_FRAMES 4 -#define GFX_ARG_DELAY 5 -#define GFX_ARG_MODE_LOOP 6 -#define GFX_ARG_MODE_LINEAR 7 -#define GFX_ARG_MODE_PINGPONG 8 -#define GFX_ARG_MODE_PINGPONG2 9 -#define GFX_ARG_MODE_REVERSE 10 -#define GFX_ARG_GLOBAL_SYNC 11 +#define GFX_ARG_START_FRAME 5 +#define GFX_ARG_DELAY 6 +#define GFX_ARG_MODE_LOOP 7 +#define GFX_ARG_MODE_LINEAR 8 +#define GFX_ARG_MODE_PINGPONG 9 +#define GFX_ARG_MODE_PINGPONG2 10 +#define GFX_ARG_MODE_REVERSE 11 +#define GFX_ARG_GLOBAL_SYNC 12 /* values for sound configuration suffixes */ /* (currently none) */ @@ -1471,8 +1496,8 @@ struct PlayerInfo int key[4]; int dynamite; int dynabomb_count, dynabomb_size, dynabombs_left, dynabomb_xl; - int shield_passive_time_left; - int shield_active_time_left; + int shield_normal_time_left; + int shield_deadly_time_left; }; struct LevelInfo @@ -1586,6 +1611,7 @@ struct NewGraphicInfo int src_x, src_y; /* derived from (tile sized) .xpos/.ypos */ int offset_x, offset_y; /* x/y offset to next animation frame */ int anim_frames; + int anim_start_frame; int anim_delay; /* important: delay of 1 means "no delay"! */ int anim_mode; boolean anim_global_sync;