rnd-20071001-1-src
[rocksndiamonds.git] / src / main.h
index 7e5ff0dfd85576818dd1419700137c3e64623620..763195b9b7aa6db58295ea39d476d1c243ba294f 100644 (file)
 
 /* 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
 
 /* 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
 /* program information and versioning definitions */
 #define PROGRAM_VERSION_MAJOR          3
 #define PROGRAM_VERSION_MINOR          2
-#define PROGRAM_VERSION_PATCH          4
-#define PROGRAM_VERSION_BUILD          2
+#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_GAME_BY_STRING         "A Game by Artsoft Entertainment"
 #define PROGRAM_UNIX_DATADIR_STRING    ".rocksndiamonds"
 
-#if CREATE_SPECIAL_EDITION_RND_JUE
+#if defined(CREATE_SPECIAL_EDITION_RND_JUE)
 #undef  PROGRAM_TITLE_STRING
-#define PROGRAM_TITLE_STRING           "R'n'D - Version Jue"
+#define PROGRAM_TITLE_STRING           "R'n'D jue"
 #undef  PROGRAM_UNIX_DATADIR_STRING
-#define PROGRAM_UNIX_DATADIR_STRING    ".rocksndiamonds-jue"
+#define PROGRAM_UNIX_DATADIR_STRING    ".rnd_jue"
 #endif
 
 #define ICON_TITLE_STRING              PROGRAM_TITLE_STRING
@@ -2152,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];
@@ -2400,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 */
 
@@ -2682,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;