rnd-20070320-3-src
[rocksndiamonds.git] / src / main.h
index 8ea489498008b535e0924fbe18a1cdd7623874bb..e400c20e7dfa7df68dbfa50ad63fe0c512891a3e 100644 (file)
 
 /* values for special image configuration suffixes (must match game mode) */
 #define GFX_SPECIAL_ARG_DEFAULT                0
-#define GFX_SPECIAL_ARG_TITLE          1
-#define GFX_SPECIAL_ARG_MESSAGE                2
+#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_ARG_POST_DELAY             40
 #define GFX_ARG_AUTO_DELAY             41
 #define GFX_ARG_ALIGN                  42
-#define GFX_ARG_SORT_PRIORITY          43
+#define GFX_ARG_VALIGN                 43
+#define GFX_ARG_SORT_PRIORITY          44
 
-#define NUM_GFX_ARGS                   44
+#define NUM_GFX_ARGS                   45
 
 
 /* values for sound configuration suffixes */
 
 /* values for game_status (must match special image configuration suffixes) */
 #define GAME_MODE_DEFAULT              0
-#define GAME_MODE_TITLE                        1
-#define GAME_MODE_MESSAGE              2
+#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
@@ -1992,15 +1993,6 @@ struct BorderInfo
   boolean draw_masked[NUM_SPECIAL_GFX_ARGS];
 };
 
-#if 0
-struct MenuPosInfo
-{
-  int x, y;
-  int width, height;
-  int align;
-};
-#endif
-
 struct MenuMainButtonInfo
 {
   struct MenuPosInfo name;
@@ -2055,31 +2047,30 @@ struct MenuMainInfo
   struct MenuMainInputInfo input;
 };
 
-struct TitleInfo
+struct TitleFadingInfo
 {
+  int anim_mode;
   int fade_delay;
   int post_delay;
   int auto_delay;
-
-  int fade_delay_final;
-  int post_delay_final;
-  int auto_delay_final;
 };
 
 struct TitleMessageInfo
 {
-  int x;
-  int y;
-  int width;
-  int height;
-  int chars;
-  int lines;
-  int align;
+  int x, y;
+  int width, height;
+  int chars, lines;
+  int align, valign;
   int font;
   boolean autowrap;
   boolean centered;
-  boolean skip_comments;
+  boolean parse_comments;
   int sort_priority;
+
+  int anim_mode;
+  int fade_delay;
+  int post_delay;
+  int auto_delay;
 };
 
 struct MenuInfo
@@ -2093,9 +2084,8 @@ struct MenuInfo
 
   int list_size[NUM_SPECIAL_GFX_ARGS];
 
-  int fade_delay;
-  int post_delay;
-  int auto_delay;
+  struct TitleFadingInfo navigation;
+  struct TitleFadingInfo destination;
 
   int sound[NUM_SPECIAL_GFX_ARGS];
   int music[NUM_SPECIAL_GFX_ARGS];
@@ -2115,7 +2105,7 @@ struct DoorInfo
 struct PreviewInfo
 {
   int x, y;
-  int align;
+  int align, valign;
   int xsize, ysize;
   int xoffset, yoffset;
   int tile_size;
@@ -2531,7 +2521,7 @@ struct GraphicInfo
   int fade_delay;              /* optional setting for drawing title screens */
   int post_delay;              /* optional setting for drawing title screens */
   int auto_delay;              /* optional setting for drawing title screens */
-  int align;                   /* optional setting for drawing title screens */
+  int align, valign;           /* optional setting for drawing title screens */
   int sort_priority;           /* optional setting for drawing title screens */
 
   boolean use_image_size;      /* use image size as default width and height */
@@ -2695,8 +2685,13 @@ extern struct HiScore            highscore[];
 extern struct TapeInfo         tape;
 extern struct GlobalInfo       global;
 extern struct BorderInfo       border;
-extern struct TitleInfo                title;
+extern struct TitleFadingInfo  fading;
+extern struct TitleFadingInfo  fading_none;
+extern struct TitleFadingInfo  title_initial_default;
+extern struct TitleFadingInfo  title_default;
+extern struct TitleMessageInfo titlemessage_initial_default;
 extern struct TitleMessageInfo titlemessage_initial[];
+extern struct TitleMessageInfo titlemessage_default;
 extern struct TitleMessageInfo titlemessage[];
 extern struct TitleMessageInfo readme;
 extern struct MenuInfo         menu;