X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fmain.h;h=763195b9b7aa6db58295ea39d476d1c243ba294f;hb=852a8eef1e8858a40da0be4093eba3deaf468f51;hp=23d1b49e680f576fb2c5cd8dcc593ba769be0e46;hpb=b33f14a8bdad5e3c9547c37b3854025daba761c7;p=rocksndiamonds.git diff --git a/src/main.h b/src/main.h index 23d1b49e..763195b9 100644 --- a/src/main.h +++ b/src/main.h @@ -1749,21 +1749,22 @@ /* values for special image configuration suffixes (must match game mode) */ #define GFX_SPECIAL_ARG_DEFAULT 0 -#define GFX_SPECIAL_ARG_TITLE_INITIAL 1 -#define GFX_SPECIAL_ARG_TITLE 2 -#define GFX_SPECIAL_ARG_MAIN 3 -#define GFX_SPECIAL_ARG_LEVELS 4 -#define GFX_SPECIAL_ARG_SCORES 5 -#define GFX_SPECIAL_ARG_EDITOR 6 -#define GFX_SPECIAL_ARG_INFO 7 -#define GFX_SPECIAL_ARG_SETUP 8 -#define GFX_SPECIAL_ARG_PLAYING 9 -#define GFX_SPECIAL_ARG_DOOR 10 -#define GFX_SPECIAL_ARG_PANEL 11 -#define GFX_SPECIAL_ARG_PREVIEW 12 -#define GFX_SPECIAL_ARG_CRUMBLED 13 - -#define NUM_SPECIAL_GFX_ARGS 14 +#define GFX_SPECIAL_ARG_LOADING 1 +#define GFX_SPECIAL_ARG_TITLE_INITIAL 2 +#define GFX_SPECIAL_ARG_TITLE 3 +#define GFX_SPECIAL_ARG_MAIN 4 +#define GFX_SPECIAL_ARG_LEVELS 5 +#define GFX_SPECIAL_ARG_SCORES 6 +#define GFX_SPECIAL_ARG_EDITOR 7 +#define GFX_SPECIAL_ARG_INFO 8 +#define GFX_SPECIAL_ARG_SETUP 9 +#define GFX_SPECIAL_ARG_PLAYING 10 +#define GFX_SPECIAL_ARG_DOOR 11 +#define GFX_SPECIAL_ARG_PANEL 12 +#define GFX_SPECIAL_ARG_PREVIEW 13 +#define GFX_SPECIAL_ARG_CRUMBLED 14 + +#define NUM_SPECIAL_GFX_ARGS 15 /* these additional definitions are currently only used for draw offsets */ #define GFX_SPECIAL_ARG_INFO_MAIN 0 @@ -1916,23 +1917,24 @@ /* values for game_status (must match special image configuration suffixes) */ #define GAME_MODE_DEFAULT 0 -#define GAME_MODE_TITLE_INITIAL 1 -#define GAME_MODE_TITLE 2 -#define GAME_MODE_MAIN 3 -#define GAME_MODE_LEVELS 4 -#define GAME_MODE_SCORES 5 -#define GAME_MODE_EDITOR 6 -#define GAME_MODE_INFO 7 -#define GAME_MODE_SETUP 8 -#define GAME_MODE_PLAYING 9 -#define GAME_MODE_PSEUDO_DOOR 10 -#define GAME_MODE_PSEUDO_PANEL 11 -#define GAME_MODE_PSEUDO_PREVIEW 12 -#define GAME_MODE_PSEUDO_CRUMBLED 13 +#define GAME_MODE_LOADING 1 +#define GAME_MODE_TITLE_INITIAL 2 +#define GAME_MODE_TITLE 3 +#define GAME_MODE_MAIN 4 +#define GAME_MODE_LEVELS 5 +#define GAME_MODE_SCORES 6 +#define GAME_MODE_EDITOR 7 +#define GAME_MODE_INFO 8 +#define GAME_MODE_SETUP 9 +#define GAME_MODE_PLAYING 10 +#define GAME_MODE_PSEUDO_DOOR 11 +#define GAME_MODE_PSEUDO_PANEL 12 +#define GAME_MODE_PSEUDO_PREVIEW 13 +#define GAME_MODE_PSEUDO_CRUMBLED 14 /* there are no special config file suffixes for these modes */ -#define GAME_MODE_PSEUDO_TYPENAME 14 -#define GAME_MODE_QUIT 15 +#define GAME_MODE_PSEUDO_TYPENAME 15 +#define GAME_MODE_QUIT 16 /* special definitions currently only used for custom artwork configuration */ #define MUSIC_PREFIX_BACKGROUND 0 @@ -1947,15 +1949,23 @@ /* program information and versioning definitions */ #define PROGRAM_VERSION_MAJOR 3 #define PROGRAM_VERSION_MINOR 2 -#define PROGRAM_VERSION_PATCH 4 -#define PROGRAM_VERSION_BUILD 1 +#define PROGRAM_VERSION_PATCH 5 +#define PROGRAM_VERSION_BUILD 0 #define PROGRAM_TITLE_STRING "Rocks'n'Diamonds" #define PROGRAM_AUTHOR_STRING "Holger Schemel" -#define PROGRAM_COPYRIGHT_STRING "Copyright ©1995-2006 by Holger Schemel" +#define PROGRAM_COPYRIGHT_STRING "Copyright ©1995-2007 by Holger Schemel" #define PROGRAM_EMAIL_STRING "info@artsoft.org" #define PROGRAM_WEBSITE_STRING "http://www.artsoft.org/" #define PROGRAM_GAME_BY_STRING "A Game by Artsoft Entertainment" +#define PROGRAM_UNIX_DATADIR_STRING ".rocksndiamonds" + +#if defined(CREATE_SPECIAL_EDITION_RND_JUE) +#undef PROGRAM_TITLE_STRING +#define PROGRAM_TITLE_STRING "R'n'D jue" +#undef PROGRAM_UNIX_DATADIR_STRING +#define PROGRAM_UNIX_DATADIR_STRING ".rnd_jue" +#endif #define ICON_TITLE_STRING PROGRAM_TITLE_STRING #define COOKIE_PREFIX "ROCKSNDIAMONDS" @@ -1963,7 +1973,7 @@ #define USERDATA_DIRECTORY_WIN32 PROGRAM_TITLE_STRING #define USERDATA_DIRECTORY_MACOSX PROGRAM_TITLE_STRING -#define USERDATA_DIRECTORY_UNIX ".rocksndiamonds" +#define USERDATA_DIRECTORY_UNIX PROGRAM_UNIX_DATADIR_STRING #define USERDATA_DIRECTORY_DOS "userdata" #if defined(PLATFORM_WIN32) @@ -2039,6 +2049,7 @@ struct BorderInfo { boolean draw_masked[NUM_SPECIAL_GFX_ARGS]; + boolean draw_masked_when_fading; }; struct MenuMainButtonInfo @@ -2121,6 +2132,11 @@ struct TitleMessageInfo int auto_delay; }; +struct InitInfo +{ + struct MenuPosInfo busy; +}; + struct MenuInfo { int draw_xoffset[NUM_SPECIAL_GFX_ARGS]; @@ -2138,6 +2154,7 @@ struct MenuInfo struct TitleFadingInfo leave_menu; struct TitleFadingInfo enter_screen[NUM_SPECIAL_GFX_ARGS]; struct TitleFadingInfo leave_screen[NUM_SPECIAL_GFX_ARGS]; + struct TitleFadingInfo next_screen; int sound[NUM_SPECIAL_GFX_ARGS]; int music[NUM_SPECIAL_GFX_ARGS]; @@ -2337,8 +2354,10 @@ struct GlobalInfo /* global values for fading screens and masking borders */ int border_status; +#if 0 int fading_status; int fading_type; +#endif }; struct ElementChangeInfo @@ -2384,6 +2403,7 @@ struct ElementChangeInfo short actual_trigger_element; /* element that actually triggered change */ int actual_trigger_side; /* element side that triggered the change */ int actual_trigger_player; /* player which actually triggered change */ + int actual_trigger_player_bits; /* player bits of triggering players */ int actual_trigger_ce_value; /* CE value of element that triggered change */ int actual_trigger_ce_score; /* CE score of element that triggered change */ @@ -2666,6 +2686,7 @@ extern Bitmap *bitmap_db_cross; extern Bitmap *bitmap_db_field; extern Bitmap *bitmap_db_panel; extern Bitmap *bitmap_db_door; +extern Bitmap *bitmap_db_toons; extern Pixmap tile_clipmask[]; extern DrawBuffer *fieldbuffer; extern DrawBuffer *drawto_field; @@ -2760,6 +2781,7 @@ extern struct TitleMessageInfo titlemessage_initial[]; extern struct TitleMessageInfo titlemessage_default; extern struct TitleMessageInfo titlemessage[]; extern struct TitleMessageInfo readme; +extern struct InitInfo init; extern struct MenuInfo menu; extern struct DoorInfo door_1, door_2; extern struct PreviewInfo preview; @@ -2777,6 +2799,10 @@ extern struct MusicInfo *music_info; extern struct MusicFileInfo *music_file_info; extern struct HelpAnimInfo *helpanim_info; extern SetupFileHash *helptext_info; +extern SetupFileHash *image_config_hash; +extern SetupFileHash *element_token_hash; +extern SetupFileHash *graphic_token_hash; +extern SetupFileHash *font_token_hash; extern struct ConfigTypeInfo image_config_suffix[]; extern struct ConfigTypeInfo sound_config_suffix[]; extern struct ConfigTypeInfo music_config_suffix[];