X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.h;h=774c97c73a10b1e3d9221549410b4dc8cc914427;hb=6d7ebf6db8a9a57f2e3e398da1d2f7d8d084523f;hp=b2a69ad38a745709d4696a1b926322075a625e1a;hpb=c4dd9e14b72b528e82bc018fe2fa76b784221584;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index b2a69ad3..774c97c7 100644 --- a/src/main.h +++ b/src/main.h @@ -221,8 +221,10 @@ #define CE_MOVE_OF_X 35 #define CE_DIGGING_X 36 #define CE_CREATION_OF_X 37 +#define CE_SCORE_GETS_ZERO 38 +#define CE_SCORE_GETS_ZERO_OF_X 39 -#define NUM_CHANGE_EVENTS 38 +#define NUM_CHANGE_EVENTS 40 #define CE_BITMASK_DEFAULT 0 @@ -381,13 +383,16 @@ #define CA_ARG_ELEMENT_RESET (CA_ARG_ELEMENT + 0) #define CA_ARG_ELEMENT_TARGET (CA_ARG_ELEMENT + 1) #define CA_ARG_ELEMENT_TRIGGER (CA_ARG_ELEMENT + 2) -#define CA_ARG_ELEMENT_HEADLINE (CA_ARG_ELEMENT + 998) +#define CA_ARG_ELEMENT_HEADLINE (CA_ARG_ELEMENT + 997) #define CA_ARG_ELEMENT_CV_TARGET (CA_ARG_ELEMENT_TARGET) #define CA_ARG_ELEMENT_CV_TRIGGER (CA_ARG_ELEMENT_TRIGGER) #define CA_ARG_ELEMENT_CV_HEADLINE (CA_ARG_ELEMENT_HEADLINE) #define CA_ARG_ELEMENT_NR_TARGET (CA_ARG_ELEMENT + 3) #define CA_ARG_ELEMENT_NR_TRIGGER (CA_ARG_ELEMENT + 4) -#define CA_ARG_ELEMENT_NR_HEADLINE (CA_ARG_ELEMENT + 999) +#define CA_ARG_ELEMENT_NR_HEADLINE (CA_ARG_ELEMENT + 998) +#define CA_ARG_ELEMENT_CS_TARGET (CA_ARG_ELEMENT + 5) +#define CA_ARG_ELEMENT_CS_TRIGGER (CA_ARG_ELEMENT + 6) +#define CA_ARG_ELEMENT_CS_HEADLINE (CA_ARG_ELEMENT + 999) #define CA_ARG_SPEED 13000 #define CA_ARG_SPEED_NOT_MOVING (CA_ARG_SPEED + STEPSIZE_NOT_MOVING) #define CA_ARG_SPEED_VERY_SLOW (CA_ARG_SPEED + STEPSIZE_VERY_SLOW) @@ -667,6 +672,7 @@ #define GFX_ELEMENT(e) (element_info[e].use_gfx_element ? \ element_info[e].gfx_element : e) +/* !!! CHECK THIS !!! */ #if 1 #define TILE_GFX_ELEMENT(x, y) \ (GfxElement[x][y] != EL_UNDEFINED && \ @@ -774,12 +780,16 @@ #define MAX_ELEMENT_NAME_LEN 32 #define MAX_TAPES_PER_SET 1024 #define MAX_SCORE_ENTRIES 100 +#define MAX_NUM_TITLE_SCREENS 5 + #define MAX_NUM_AMOEBA 100 + #if 0 /* game.h */ #define MAX_INVENTORY_SIZE 1000 #define STD_NUM_KEYS 4 #define MAX_NUM_KEYS 8 #endif + #define NUM_BELTS 4 #define NUM_BELT_PARTS 3 #define MIN_ENVELOPE_XSIZE 1 @@ -1265,13 +1275,16 @@ #define EL_EMC_DRIPPER 704 #define EL_TRIGGER_CE_VALUE 705 +#define EL_TRIGGER_CE_SCORE 706 +#define EL_CURRENT_CE_VALUE 707 +#define EL_CURRENT_CE_SCORE 708 -#define EL_YAMYAM_LEFT 706 -#define EL_YAMYAM_RIGHT 707 -#define EL_YAMYAM_UP 708 -#define EL_YAMYAM_DOWN 709 +#define EL_YAMYAM_LEFT 709 +#define EL_YAMYAM_RIGHT 710 +#define EL_YAMYAM_UP 711 +#define EL_YAMYAM_DOWN 712 -#define NUM_FILE_ELEMENTS 710 +#define NUM_FILE_ELEMENTS 713 /* "real" (and therefore drawable) runtime elements */ @@ -1534,18 +1547,19 @@ /* values for special image configuration suffixes (must match game mode) */ #define GFX_SPECIAL_ARG_DEFAULT 0 -#define GFX_SPECIAL_ARG_MAIN 1 -#define GFX_SPECIAL_ARG_LEVELS 2 -#define GFX_SPECIAL_ARG_SCORES 3 -#define GFX_SPECIAL_ARG_EDITOR 4 -#define GFX_SPECIAL_ARG_INFO 5 -#define GFX_SPECIAL_ARG_SETUP 6 -#define GFX_SPECIAL_ARG_PLAYING 7 -#define GFX_SPECIAL_ARG_DOOR 8 -#define GFX_SPECIAL_ARG_PREVIEW 9 -#define GFX_SPECIAL_ARG_CRUMBLED 10 +#define GFX_SPECIAL_ARG_TITLE 1 +#define GFX_SPECIAL_ARG_MAIN 2 +#define GFX_SPECIAL_ARG_LEVELS 3 +#define GFX_SPECIAL_ARG_SCORES 4 +#define GFX_SPECIAL_ARG_EDITOR 5 +#define GFX_SPECIAL_ARG_INFO 6 +#define GFX_SPECIAL_ARG_SETUP 7 +#define GFX_SPECIAL_ARG_PLAYING 8 +#define GFX_SPECIAL_ARG_DOOR 9 +#define GFX_SPECIAL_ARG_PREVIEW 10 +#define GFX_SPECIAL_ARG_CRUMBLED 11 -#define NUM_SPECIAL_GFX_ARGS 11 +#define NUM_SPECIAL_GFX_ARGS 12 /* values for image configuration suffixes */ @@ -1636,29 +1650,31 @@ #define FONT_VALUE_1 26 #define FONT_VALUE_2 27 #define FONT_VALUE_OLD 28 -#define FONT_LEVEL_NUMBER 29 -#define FONT_TAPE_RECORDER 30 -#define FONT_GAME_INFO 31 +#define FONT_LEVEL_NUMBER_ACTIVE 29 +#define FONT_LEVEL_NUMBER 30 +#define FONT_TAPE_RECORDER 31 +#define FONT_GAME_INFO 32 -#define NUM_FONTS 32 +#define NUM_FONTS 33 #define NUM_INITIAL_FONTS 4 /* values for game_status (must match special image configuration suffixes) */ #define GAME_MODE_DEFAULT 0 -#define GAME_MODE_MAIN 1 -#define GAME_MODE_LEVELS 2 -#define GAME_MODE_SCORES 3 -#define GAME_MODE_EDITOR 4 -#define GAME_MODE_INFO 5 -#define GAME_MODE_SETUP 6 -#define GAME_MODE_PLAYING 7 -#define GAME_MODE_PSEUDO_DOOR 8 -#define GAME_MODE_PSEUDO_PREVIEW 9 -#define GAME_MODE_PSEUDO_CRUMBLED 10 +#define GAME_MODE_TITLE 1 +#define GAME_MODE_MAIN 2 +#define GAME_MODE_LEVELS 3 +#define GAME_MODE_SCORES 4 +#define GAME_MODE_EDITOR 5 +#define GAME_MODE_INFO 6 +#define GAME_MODE_SETUP 7 +#define GAME_MODE_PLAYING 8 +#define GAME_MODE_PSEUDO_DOOR 9 +#define GAME_MODE_PSEUDO_PREVIEW 10 +#define GAME_MODE_PSEUDO_CRUMBLED 11 /* there are no special config file suffixes for these modes */ -#define GAME_MODE_PSEUDO_TYPENAME 11 -#define GAME_MODE_QUIT 12 +#define GAME_MODE_PSEUDO_TYPENAME 12 +#define GAME_MODE_QUIT 13 /* special definitions currently only used for custom artwork configuration */ #define MUSIC_PREFIX_BACKGROUND 0 @@ -1674,7 +1690,7 @@ #define PROGRAM_VERSION_MAJOR 3 #define PROGRAM_VERSION_MINOR 2 #define PROGRAM_VERSION_PATCH 0 -#define PROGRAM_VERSION_BUILD 7 +#define PROGRAM_VERSION_BUILD 8 #define PROGRAM_TITLE_STRING "Rocks'n'Diamonds" #define PROGRAM_AUTHOR_STRING "Holger Schemel" @@ -1970,6 +1986,7 @@ struct ElementChangeInfo int actual_trigger_side; /* element side that triggered the change */ int actual_trigger_player; /* player which actually triggered change */ int actual_trigger_ce_value; /* CE value of element that triggered change */ + int actual_trigger_ce_score; /* CE score of element that triggered change */ boolean can_change_or_has_action; /* can_change | has_action */ @@ -2147,7 +2164,8 @@ struct GraphicInfo int step_offset; /* optional step offset of toon animations */ int step_delay; /* optional step delay of toon animations */ - int draw_x, draw_y; /* optional offset for drawing fonts chars */ + int draw_xoffset; /* optional offset for drawing font chars */ + int draw_yoffset; /* optional offset for drawing font chars */ int draw_masked; /* optional setting for drawing envelope gfx */ @@ -2225,10 +2243,12 @@ struct HelpAnimInfo }; -extern Bitmap *bitmap_db_field, *bitmap_db_door; +extern Bitmap *bitmap_db_title; +extern Bitmap *bitmap_db_field; +extern Bitmap *bitmap_db_door; extern Pixmap tile_clipmask[]; -extern DrawBuffer *fieldbuffer; -extern DrawBuffer *drawto_field; +extern DrawBuffer *fieldbuffer; +extern DrawBuffer *drawto_field; extern int game_status; extern boolean level_editor_test_game;