X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.h;h=27acc1e1591a774482368562027d7a292482676d;hb=a35852e106072656e444202e672d050ebff03abb;hp=1dff3be74dff8872e0ed6ef5e3b9b8405564af80;hpb=d2587727d750fdf2aae4eb8f4acb487a5c211041;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index 1dff3be7..27acc1e1 100644 --- a/src/main.h +++ b/src/main.h @@ -200,22 +200,24 @@ typedef unsigned char byte; #define PIX_TOONS 3 #define PIX_SP 4 #define PIX_DC 5 -#define PIX_BIGFONT 6 -#define PIX_SMALLFONT 7 +#define PIX_MORE 6 +#define PIX_BIGFONT 7 +#define PIX_SMALLFONT 8 +#define PIX_MEDIUMFONT 9 /* Pixmaps without graphic file */ -#define PIX_DB_BACK 8 -#define PIX_DB_DOOR 9 -#define PIX_DB_FIELD 10 +#define PIX_DB_BACK 10 +#define PIX_DB_DOOR 11 +#define PIX_DB_FIELD 12 -#define NUM_PICTURES 8 -#define NUM_PIXMAPS 10 +#define NUM_PICTURES 10 +#define NUM_PIXMAPS 13 /* boundaries of arrays etc. */ #define MAX_PLAYER_NAME_LEN 10 #define MAX_LEVEL_NAME_LEN 32 #define MAX_LEVEL_AUTHOR_LEN 32 #define MAX_TAPELEN (1000 * 50) /* max. time * framerate */ -#define MAX_LEVDIR_ENTRIES 100 +#define MAX_LEVDIR_ENTRIES 250 /* max. level directories */ #define MAX_SCORE_ENTRIES 100 #define MAX_ELEMENTS 700 /* 500 static + 200 runtime */ #define MAX_NUM_AMOEBA 100 @@ -386,6 +388,7 @@ struct LevelDirInfo char *filename; /* level series sub-directory inside level directory */ char *name; /* level series name, as displayed on main screen */ char *name_short; /* optional short name for level selection screen */ + char *name_sorting; /* optional sorting name for correct level sorting */ char *author; /* level series author name levels without author */ char *imported_from; /* optional comment for imported level series */ int levels; /* number of levels in level series */ @@ -431,6 +434,7 @@ struct GameInfo int belt_dir[4]; int belt_dir_nr[4]; int switchgate_pos; + int balloon_dir; }; struct GlobalInfo @@ -574,6 +578,8 @@ extern char *element_info[]; #define FONT4_YSIZE 16 #define FONT5_XSIZE 10 #define FONT5_YSIZE 14 +#define FONT6_XSIZE 16 +#define FONT6_YSIZE 32 #define GFX_STARTX SX #define GFX_STARTY SY @@ -603,6 +609,14 @@ extern char *element_info[]; #define MINI_DC_PER_LINE 16 #define MICRO_DC_PER_LINE 16 +#define MINI_MORE_STARTX 256 +#define MINI_MORE_STARTY 256 +#define MICRO_MORE_STARTX 384 +#define MICRO_MORE_STARTY 384 +#define MORE_PER_LINE 16 +#define MINI_MORE_PER_LINE 16 +#define MICRO_MORE_PER_LINE 16 + #define FONT_CHARS_PER_LINE 16 #define FONT_LINES_PER_FONT 4 @@ -925,7 +939,30 @@ extern char *element_info[]; #define EL_TIMEGATE_SWITCH_ON 324 #define EL_TIMEGATE_SWITCH_OFF 325 +#define EL_BALLOON 326 +#define EL_BALLOON_SEND_LEFT 327 +#define EL_BALLOON_SEND_RIGHT 328 +#define EL_BALLOON_SEND_UP 329 +#define EL_BALLOON_SEND_DOWN 330 +#define EL_BALLOON_SEND_ANY 331 + +#define EL_EMC_STEEL_WALL_1 332 +#define EL_EMC_STEEL_WALL_2 333 +#define EL_EMC_STEEL_WALL_3 334 +#define EL_EMC_STEEL_WALL_4 335 +#define EL_EMC_WALL_1 336 +#define EL_EMC_WALL_2 337 +#define EL_EMC_WALL_3 338 +#define EL_EMC_WALL_4 339 +#define EL_EMC_WALL_5 340 +#define EL_EMC_WALL_6 341 +#define EL_EMC_WALL_7 342 +#define EL_EMC_WALL_8 343 + + /* "real" (and therefore drawable) runtime elements */ +#define EL_FIRST_RUNTIME_EL 500 + #define EL_SIEB_LEER 500 #define EL_SIEB2_LEER 501 #define EL_SIEB_VOLL 502 @@ -966,6 +1003,7 @@ extern char *element_info[]; ** 512 - 767: graphics from "RocksHeroes" ** 768 - 1023: graphics from "RocksSP" ** 1024 - 1279: graphics from "RocksDC" +** 1280 - 1535: graphics from "RocksMore" */ #define GFX_START_ROCKSSCREEN 0 @@ -978,8 +1016,10 @@ extern char *element_info[]; #define GFX_END_ROCKSSP 1023 #define GFX_START_ROCKSDC 1024 #define GFX_END_ROCKSDC 1279 +#define GFX_START_ROCKSMORE 1280 +#define GFX_END_ROCKSMORE 1535 -#define NUM_TILES 1280 +#define NUM_TILES 1536 /* graphics from "RocksScreen" */ /* Zeile 0 (0) */ @@ -1357,6 +1397,37 @@ extern char *element_info[]; #define GFX_SWITCHGATE_OPEN (GFX_START_ROCKSDC + 5 * DC_PER_LINE + 12) #define GFX_TIMEGATE_CLOSED (GFX_START_ROCKSDC + 6 * DC_PER_LINE + 8) #define GFX_TIMEGATE_OPEN (GFX_START_ROCKSDC + 6 * DC_PER_LINE + 12) +#define GFX_BALLOON_SEND_LEFT (GFX_START_ROCKSDC + 7 * DC_PER_LINE + 8) +#define GFX_BALLOON_SEND_RIGHT (GFX_START_ROCKSDC + 7 * DC_PER_LINE + 9) +#define GFX_BALLOON_SEND_UP (GFX_START_ROCKSDC + 7 * DC_PER_LINE + 10) +#define GFX_BALLOON_SEND_DOWN (GFX_START_ROCKSDC + 7 * DC_PER_LINE + 11) +#define GFX_BALLOON (GFX_START_ROCKSDC + 7 * DC_PER_LINE + 12) +#define GFX_BALLOON_SEND_ANY (GFX_START_ROCKSDC + 0 * DC_PER_LINE + 15) + +#define GFX_EMC_STEEL_WALL_1 (GFX_START_ROCKSDC + 0 * DC_PER_LINE + 14) +#define GFX_EMC_STEEL_WALL_2 (GFX_START_ROCKSDC + 0 * DC_PER_LINE + 14) +#define GFX_EMC_STEEL_WALL_3 (GFX_START_ROCKSDC + 0 * DC_PER_LINE + 14) +#define GFX_EMC_STEEL_WALL_4 (GFX_START_ROCKSDC + 0 * DC_PER_LINE + 14) +#define GFX_EMC_WALL_1 (GFX_START_ROCKSDC + 6 * DC_PER_LINE + 13) +#define GFX_EMC_WALL_2 (GFX_START_ROCKSDC + 6 * DC_PER_LINE + 14) +#define GFX_EMC_WALL_3 (GFX_START_ROCKSDC + 6 * DC_PER_LINE + 15) +#define GFX_EMC_WALL_4 (GFX_START_ROCKSDC + 1 * DC_PER_LINE + 14) +#define GFX_EMC_WALL_5 (GFX_START_ROCKSDC + 1 * DC_PER_LINE + 15) +#define GFX_EMC_WALL_6 (GFX_START_ROCKSDC + 2 * DC_PER_LINE + 14) +#define GFX_EMC_WALL_7 (GFX_START_ROCKSDC + 2 * DC_PER_LINE + 15) +#define GFX_EMC_WALL_8 (GFX_START_ROCKSDC + 1 * DC_PER_LINE + 14) + +/* graphics from "RocksMore" */ +#define GFX_ARROW_BLUE_LEFT (GFX_START_ROCKSMORE + 0 * MORE_PER_LINE + 0) +#define GFX_ARROW_BLUE_RIGHT (GFX_START_ROCKSMORE + 0 * MORE_PER_LINE + 1) +#define GFX_ARROW_BLUE_UP (GFX_START_ROCKSMORE + 0 * MORE_PER_LINE + 2) +#define GFX_ARROW_BLUE_DOWN (GFX_START_ROCKSMORE + 0 * MORE_PER_LINE + 3) +#define GFX_ARROW_RED_LEFT (GFX_START_ROCKSMORE + 1 * MORE_PER_LINE + 0) +#define GFX_ARROW_RED_RIGHT (GFX_START_ROCKSMORE + 1 * MORE_PER_LINE + 1) +#define GFX_ARROW_RED_UP (GFX_START_ROCKSMORE + 1 * MORE_PER_LINE + 2) +#define GFX_ARROW_RED_DOWN (GFX_START_ROCKSMORE + 1 * MORE_PER_LINE + 3) +#define GFX_SCROLLBAR_BLUE (GFX_START_ROCKSMORE + 2 * MORE_PER_LINE + 0) +#define GFX_SCROLLBAR_RED (GFX_START_ROCKSMORE + 2 * MORE_PER_LINE + 1) /* graphics from "RocksFont" */ #define GFX_CHAR_START (GFX_START_ROCKSFONT) @@ -1411,6 +1482,7 @@ extern char *element_info[]; #define GFX_DX_UNKNOWN_15 GFX_CHAR_FRAGE #define GFX_DX_UNKNOWN_42 GFX_CHAR_FRAGE + /* the names of the sounds */ #define SND_ALCHEMY 0 #define SND_AMOEBE 1 @@ -1498,6 +1570,7 @@ extern char *element_info[]; /* font types */ #define FS_SMALL 0 #define FS_BIG 1 +#define FS_MEDIUM 2 /* font colors */ #define FC_RED 0 #define FC_BLUE 1