+2007-04-14
+ * added additional configuration directives for setup screen draw offset
+ menu.draw_xoffset.SETUP[XXX] and menu.draw_yoffset.SETUP[XXX] with XXX
+ in GAME, EDITOR, GRAPHICS, SOUND, ARTWORK, INPUT, SHORTCUTS_1,
+ SHORTCUTS_2, CHOOSE_ARTWORK, CHOOSE_OTHER (where "CHOOSE_ARTWORK" is
+ used to define draw offset on custom artwork selection screens and
+ "CHOOSE_OTHER" is used on all other list style selection screens, like
+ choosing game speed or screen mode for fullscreen mode)
+
2007-04-08
* added support for accessing native Diamond Caves II level packages
* fixed displaying of game panel values for Emerald Mine game engine
FONT_TEXT_1, GFX_SPECIAL_ARG_LEVELS,
IMG_FONT_TEXT_1_LEVELS
},
+ {
+ FONT_TEXT_1, GFX_SPECIAL_ARG_SETUP,
+ IMG_FONT_TEXT_1_SETUP
+ },
{
FONT_TEXT_1, GFX_SPECIAL_ARG_PREVIEW,
IMG_FONT_TEXT_1_PREVIEW
FONT_TEXT_2, GFX_SPECIAL_ARG_LEVELS,
IMG_FONT_TEXT_2_LEVELS
},
+ {
+ FONT_TEXT_2, GFX_SPECIAL_ARG_SETUP,
+ IMG_FONT_TEXT_2_SETUP
+ },
{
FONT_TEXT_2, GFX_SPECIAL_ARG_PREVIEW,
IMG_FONT_TEXT_2_PREVIEW
FONT_TEXT_3, GFX_SPECIAL_ARG_LEVELS,
IMG_FONT_TEXT_3_LEVELS
},
+ {
+ FONT_TEXT_3, GFX_SPECIAL_ARG_SETUP,
+ IMG_FONT_TEXT_3_SETUP
+ },
{
FONT_TEXT_3, GFX_SPECIAL_ARG_PREVIEW,
IMG_FONT_TEXT_3_PREVIEW
FONT_TEXT_4, GFX_SPECIAL_ARG_LEVELS,
IMG_FONT_TEXT_4_LEVELS
},
+ {
+ FONT_TEXT_4, GFX_SPECIAL_ARG_SETUP,
+ IMG_FONT_TEXT_4_SETUP
+ },
{
FONT_TEXT_4, GFX_SPECIAL_ARG_SCORES,
IMG_FONT_TEXT_4_SCORES
{ "font.text_1.LEVELS.y", "0" },
{ "font.text_1.LEVELS.width", "16" },
{ "font.text_1.LEVELS.height", "32" },
+ { "font.text_1.SETUP", UNDEFINED_FILENAME },
+ { "font.text_1.SETUP.clone_from", "font.text_1.LEVELS" },
{ "font.text_1.PREVIEW", "RocksFontEM.pcx" },
{ "font.text_1.PREVIEW.x", "0" },
{ "font.text_1.PREVIEW.y", "160" },
{ "font.text_2.LEVELS.y", "160" },
{ "font.text_2.LEVELS.width", "16" },
{ "font.text_2.LEVELS.height", "32" },
+ { "font.text_2.SETUP", UNDEFINED_FILENAME },
+ { "font.text_2.SETUP.clone_from", "font.text_2.LEVELS" },
{ "font.text_2.PREVIEW", "RocksFontEM.pcx" },
{ "font.text_2.PREVIEW.x", "0" },
{ "font.text_2.PREVIEW.y", "160" },
{ "font.text_3.LEVELS.y", "320" },
{ "font.text_3.LEVELS.width", "16" },
{ "font.text_3.LEVELS.height", "32" },
+ { "font.text_3.SETUP", UNDEFINED_FILENAME },
+ { "font.text_3.SETUP.clone_from", "font.text_3.LEVELS" },
{ "font.text_3.PREVIEW", "RocksFontEM.pcx" },
{ "font.text_3.PREVIEW.x", "0" },
{ "font.text_3.PREVIEW.y", "160" },
{ "font.text_4.LEVELS.y", "480" },
{ "font.text_4.LEVELS.width", "16" },
{ "font.text_4.LEVELS.height", "32" },
+ { "font.text_4.SETUP", UNDEFINED_FILENAME },
+ { "font.text_4.SETUP.clone_from", "font.text_4.LEVELS" },
{ "font.text_4.SCORES", "RocksFontMedium.pcx" },
{ "font.text_4.SCORES.x", "0" },
{ "font.text_4.SCORES.y", "480" },
{ "menu.draw_yoffset.INFO[LEVELSET]", "0" },
{ "menu.draw_xoffset.SETUP", "0" },
{ "menu.draw_yoffset.SETUP", "0" },
+ { "menu.draw_xoffset.SETUP[GAME]", "0" },
+ { "menu.draw_yoffset.SETUP[GAME]", "0" },
+ { "menu.draw_xoffset.SETUP[EDITOR]", "0" },
+ { "menu.draw_yoffset.SETUP[EDITOR]", "0" },
+ { "menu.draw_xoffset.SETUP[GRAPHICS]", "0" },
+ { "menu.draw_yoffset.SETUP[GRAPHICS]", "0" },
+ { "menu.draw_xoffset.SETUP[SOUND]", "0" },
+ { "menu.draw_yoffset.SETUP[SOUND]", "0" },
+ { "menu.draw_xoffset.SETUP[ARTWORK]", "0" },
+ { "menu.draw_yoffset.SETUP[ARTWORK]", "0" },
+ { "menu.draw_xoffset.SETUP[INPUT]", "0" },
+ { "menu.draw_yoffset.SETUP[INPUT]", "0" },
+ { "menu.draw_xoffset.SETUP[SHORTCUTS_1]", "0" },
+ { "menu.draw_yoffset.SETUP[SHORTCUTS_1]", "0" },
+ { "menu.draw_xoffset.SETUP[SHORTCUTS_2]", "0" },
+ { "menu.draw_yoffset.SETUP[SHORTCUTS_2]", "0" },
+ { "menu.draw_xoffset.SETUP[CHOOSE_ARTWORK]", "0" },
+ { "menu.draw_yoffset.SETUP[CHOOSE_ARTWORK]", "0" },
+ { "menu.draw_xoffset.SETUP[CHOOSE_OTHER]", "0" },
+ { "menu.draw_yoffset.SETUP[CHOOSE_OTHER]", "0" },
{ "menu.scrollbar_xoffset", "0" },
{ "menu.list_size.LEVELS", "-1" },
{ "menu.list_size.SCORES", "-1" },
{ "menu.list_size.INFO", "-1" },
+ { "menu.list_size.SETUP", "-1" },
{ "main.button.name.x", "0" },
{ "main.button.name.y", "64" },
#define IMG_FONT_TEXT_1 1660
#define IMG_FONT_TEXT_1_MAIN 1661
#define IMG_FONT_TEXT_1_LEVELS 1662
-#define IMG_FONT_TEXT_1_PREVIEW 1663
-#define IMG_FONT_TEXT_1_SCORES 1664
-#define IMG_FONT_TEXT_1_ACTIVE_SCORES 1665
-#define IMG_FONT_TEXT_1_PANEL 1666
-#define IMG_FONT_TEXT_1_DOOR 1667
-#define IMG_FONT_TEXT_2 1668
-#define IMG_FONT_TEXT_2_MAIN 1669
-#define IMG_FONT_TEXT_2_LEVELS 1670
-#define IMG_FONT_TEXT_2_PREVIEW 1671
-#define IMG_FONT_TEXT_2_SCORES 1672
-#define IMG_FONT_TEXT_2_ACTIVE_SCORES 1673
-#define IMG_FONT_TEXT_3 1674
-#define IMG_FONT_TEXT_3_LEVELS 1675
-#define IMG_FONT_TEXT_3_PREVIEW 1676
-#define IMG_FONT_TEXT_3_SCORES 1677
-#define IMG_FONT_TEXT_3_ACTIVE_SCORES 1678
-#define IMG_FONT_TEXT_4 1679
-#define IMG_FONT_TEXT_4_MAIN 1680
-#define IMG_FONT_TEXT_4_LEVELS 1681
-#define IMG_FONT_TEXT_4_SCORES 1682
-#define IMG_FONT_TEXT_4_ACTIVE_SCORES 1683
-#define IMG_FONT_ENVELOPE_1 1684
-#define IMG_FONT_ENVELOPE_2 1685
-#define IMG_FONT_ENVELOPE_3 1686
-#define IMG_FONT_ENVELOPE_4 1687
-#define IMG_FONT_INPUT_1 1688
-#define IMG_FONT_INPUT_1_MAIN 1689
-#define IMG_FONT_INPUT_1_ACTIVE 1690
-#define IMG_FONT_INPUT_1_ACTIVE_MAIN 1691
-#define IMG_FONT_INPUT_1_ACTIVE_SETUP 1692
-#define IMG_FONT_INPUT_2 1693
-#define IMG_FONT_INPUT_2_ACTIVE 1694
-#define IMG_FONT_OPTION_OFF 1695
-#define IMG_FONT_OPTION_ON 1696
-#define IMG_FONT_VALUE_1 1697
-#define IMG_FONT_VALUE_2 1698
-#define IMG_FONT_VALUE_OLD 1699
-#define IMG_FONT_LEVEL_NUMBER 1700
-#define IMG_FONT_LEVEL_NUMBER_ACTIVE 1701
-#define IMG_FONT_TAPE_RECORDER 1702
-#define IMG_FONT_GAME_INFO 1703
-#define IMG_FONT_INFO_ELEMENTS 1704
-#define IMG_FONT_INFO_LEVELSET 1705
-#define IMG_GLOBAL_BORDER 1706
-#define IMG_GLOBAL_DOOR 1707
-#define IMG_EDITOR_ELEMENT_BORDER 1708
-#define IMG_EDITOR_ELEMENT_BORDER_INPUT 1709
-#define IMG_EDITOR_CASCADE_LIST 1710
-#define IMG_EDITOR_CASCADE_LIST_ACTIVE 1711
-#define IMG_BACKGROUND 1712
-#define IMG_BACKGROUND_TITLE_INITIAL 1713
-#define IMG_BACKGROUND_TITLE 1714
-#define IMG_BACKGROUND_MAIN 1715
-#define IMG_BACKGROUND_LEVELS 1716
-#define IMG_BACKGROUND_SCORES 1717
-#define IMG_BACKGROUND_EDITOR 1718
-#define IMG_BACKGROUND_INFO 1719
-#define IMG_BACKGROUND_INFO_ELEMENTS 1720
-#define IMG_BACKGROUND_INFO_MUSIC 1721
-#define IMG_BACKGROUND_INFO_CREDITS 1722
-#define IMG_BACKGROUND_INFO_PROGRAM 1723
-#define IMG_BACKGROUND_INFO_VERSION 1724
-#define IMG_BACKGROUND_INFO_LEVELSET 1725
-#define IMG_BACKGROUND_SETUP 1726
-#define IMG_BACKGROUND_DOOR 1727
-#define IMG_BACKGROUND_TITLESCREEN_INITIAL_1 1728
-#define IMG_BACKGROUND_TITLESCREEN_INITIAL_2 1729
-#define IMG_BACKGROUND_TITLESCREEN_INITIAL_3 1730
-#define IMG_BACKGROUND_TITLESCREEN_INITIAL_4 1731
-#define IMG_BACKGROUND_TITLESCREEN_INITIAL_5 1732
-#define IMG_BACKGROUND_TITLESCREEN_1 1733
-#define IMG_BACKGROUND_TITLESCREEN_2 1734
-#define IMG_BACKGROUND_TITLESCREEN_3 1735
-#define IMG_BACKGROUND_TITLESCREEN_4 1736
-#define IMG_BACKGROUND_TITLESCREEN_5 1737
-#define IMG_BACKGROUND_TITLEMESSAGE_INITIAL_1 1738
-#define IMG_BACKGROUND_TITLEMESSAGE_INITIAL_2 1739
-#define IMG_BACKGROUND_TITLEMESSAGE_INITIAL_3 1740
-#define IMG_BACKGROUND_TITLEMESSAGE_INITIAL_4 1741
-#define IMG_BACKGROUND_TITLEMESSAGE_INITIAL_5 1742
-#define IMG_BACKGROUND_TITLEMESSAGE_1 1743
-#define IMG_BACKGROUND_TITLEMESSAGE_2 1744
-#define IMG_BACKGROUND_TITLEMESSAGE_3 1745
-#define IMG_BACKGROUND_TITLEMESSAGE_4 1746
-#define IMG_BACKGROUND_TITLEMESSAGE_5 1747
-#define IMG_BACKGROUND_ENVELOPE_1 1748
-#define IMG_BACKGROUND_ENVELOPE_2 1749
-#define IMG_BACKGROUND_ENVELOPE_3 1750
-#define IMG_BACKGROUND_ENVELOPE_4 1751
-#define IMG_TITLESCREEN_INITIAL_1 1752
-#define IMG_TITLESCREEN_INITIAL_2 1753
-#define IMG_TITLESCREEN_INITIAL_3 1754
-#define IMG_TITLESCREEN_INITIAL_4 1755
-#define IMG_TITLESCREEN_INITIAL_5 1756
-#define IMG_TITLESCREEN_1 1757
-#define IMG_TITLESCREEN_2 1758
-#define IMG_TITLESCREEN_3 1759
-#define IMG_TITLESCREEN_4 1760
-#define IMG_TITLESCREEN_5 1761
+#define IMG_FONT_TEXT_1_SETUP 1663
+#define IMG_FONT_TEXT_1_PREVIEW 1664
+#define IMG_FONT_TEXT_1_SCORES 1665
+#define IMG_FONT_TEXT_1_ACTIVE_SCORES 1666
+#define IMG_FONT_TEXT_1_PANEL 1667
+#define IMG_FONT_TEXT_1_DOOR 1668
+#define IMG_FONT_TEXT_2 1669
+#define IMG_FONT_TEXT_2_MAIN 1670
+#define IMG_FONT_TEXT_2_LEVELS 1671
+#define IMG_FONT_TEXT_2_SETUP 1672
+#define IMG_FONT_TEXT_2_PREVIEW 1673
+#define IMG_FONT_TEXT_2_SCORES 1674
+#define IMG_FONT_TEXT_2_ACTIVE_SCORES 1675
+#define IMG_FONT_TEXT_3 1676
+#define IMG_FONT_TEXT_3_LEVELS 1677
+#define IMG_FONT_TEXT_3_SETUP 1678
+#define IMG_FONT_TEXT_3_PREVIEW 1679
+#define IMG_FONT_TEXT_3_SCORES 1680
+#define IMG_FONT_TEXT_3_ACTIVE_SCORES 1681
+#define IMG_FONT_TEXT_4 1682
+#define IMG_FONT_TEXT_4_MAIN 1683
+#define IMG_FONT_TEXT_4_LEVELS 1684
+#define IMG_FONT_TEXT_4_SETUP 1685
+#define IMG_FONT_TEXT_4_SCORES 1686
+#define IMG_FONT_TEXT_4_ACTIVE_SCORES 1687
+#define IMG_FONT_ENVELOPE_1 1688
+#define IMG_FONT_ENVELOPE_2 1689
+#define IMG_FONT_ENVELOPE_3 1690
+#define IMG_FONT_ENVELOPE_4 1691
+#define IMG_FONT_INPUT_1 1692
+#define IMG_FONT_INPUT_1_MAIN 1693
+#define IMG_FONT_INPUT_1_ACTIVE 1694
+#define IMG_FONT_INPUT_1_ACTIVE_MAIN 1695
+#define IMG_FONT_INPUT_1_ACTIVE_SETUP 1696
+#define IMG_FONT_INPUT_2 1697
+#define IMG_FONT_INPUT_2_ACTIVE 1698
+#define IMG_FONT_OPTION_OFF 1699
+#define IMG_FONT_OPTION_ON 1700
+#define IMG_FONT_VALUE_1 1701
+#define IMG_FONT_VALUE_2 1702
+#define IMG_FONT_VALUE_OLD 1703
+#define IMG_FONT_LEVEL_NUMBER 1704
+#define IMG_FONT_LEVEL_NUMBER_ACTIVE 1705
+#define IMG_FONT_TAPE_RECORDER 1706
+#define IMG_FONT_GAME_INFO 1707
+#define IMG_FONT_INFO_ELEMENTS 1708
+#define IMG_FONT_INFO_LEVELSET 1709
+#define IMG_GLOBAL_BORDER 1710
+#define IMG_GLOBAL_DOOR 1711
+#define IMG_EDITOR_ELEMENT_BORDER 1712
+#define IMG_EDITOR_ELEMENT_BORDER_INPUT 1713
+#define IMG_EDITOR_CASCADE_LIST 1714
+#define IMG_EDITOR_CASCADE_LIST_ACTIVE 1715
+#define IMG_BACKGROUND 1716
+#define IMG_BACKGROUND_TITLE_INITIAL 1717
+#define IMG_BACKGROUND_TITLE 1718
+#define IMG_BACKGROUND_MAIN 1719
+#define IMG_BACKGROUND_LEVELS 1720
+#define IMG_BACKGROUND_SCORES 1721
+#define IMG_BACKGROUND_EDITOR 1722
+#define IMG_BACKGROUND_INFO 1723
+#define IMG_BACKGROUND_INFO_ELEMENTS 1724
+#define IMG_BACKGROUND_INFO_MUSIC 1725
+#define IMG_BACKGROUND_INFO_CREDITS 1726
+#define IMG_BACKGROUND_INFO_PROGRAM 1727
+#define IMG_BACKGROUND_INFO_VERSION 1728
+#define IMG_BACKGROUND_INFO_LEVELSET 1729
+#define IMG_BACKGROUND_SETUP 1730
+#define IMG_BACKGROUND_DOOR 1731
+#define IMG_BACKGROUND_TITLESCREEN_INITIAL_1 1732
+#define IMG_BACKGROUND_TITLESCREEN_INITIAL_2 1733
+#define IMG_BACKGROUND_TITLESCREEN_INITIAL_3 1734
+#define IMG_BACKGROUND_TITLESCREEN_INITIAL_4 1735
+#define IMG_BACKGROUND_TITLESCREEN_INITIAL_5 1736
+#define IMG_BACKGROUND_TITLESCREEN_1 1737
+#define IMG_BACKGROUND_TITLESCREEN_2 1738
+#define IMG_BACKGROUND_TITLESCREEN_3 1739
+#define IMG_BACKGROUND_TITLESCREEN_4 1740
+#define IMG_BACKGROUND_TITLESCREEN_5 1741
+#define IMG_BACKGROUND_TITLEMESSAGE_INITIAL_1 1742
+#define IMG_BACKGROUND_TITLEMESSAGE_INITIAL_2 1743
+#define IMG_BACKGROUND_TITLEMESSAGE_INITIAL_3 1744
+#define IMG_BACKGROUND_TITLEMESSAGE_INITIAL_4 1745
+#define IMG_BACKGROUND_TITLEMESSAGE_INITIAL_5 1746
+#define IMG_BACKGROUND_TITLEMESSAGE_1 1747
+#define IMG_BACKGROUND_TITLEMESSAGE_2 1748
+#define IMG_BACKGROUND_TITLEMESSAGE_3 1749
+#define IMG_BACKGROUND_TITLEMESSAGE_4 1750
+#define IMG_BACKGROUND_TITLEMESSAGE_5 1751
+#define IMG_BACKGROUND_ENVELOPE_1 1752
+#define IMG_BACKGROUND_ENVELOPE_2 1753
+#define IMG_BACKGROUND_ENVELOPE_3 1754
+#define IMG_BACKGROUND_ENVELOPE_4 1755
+#define IMG_TITLESCREEN_INITIAL_1 1756
+#define IMG_TITLESCREEN_INITIAL_2 1757
+#define IMG_TITLESCREEN_INITIAL_3 1758
+#define IMG_TITLESCREEN_INITIAL_4 1759
+#define IMG_TITLESCREEN_INITIAL_5 1760
+#define IMG_TITLESCREEN_1 1761
+#define IMG_TITLESCREEN_2 1762
+#define IMG_TITLESCREEN_3 1763
+#define IMG_TITLESCREEN_4 1764
+#define IMG_TITLESCREEN_5 1765
-#define NUM_IMAGE_FILES 1762
+#define NUM_IMAGE_FILES 1766
#endif /* CONF_GFX_H */
"menu.draw_yoffset.SETUP",
&menu.draw_yoffset[GFX_SPECIAL_ARG_SETUP]
},
+ {
+ "menu.draw_xoffset.SETUP[GAME]",
+ &menu.draw_xoffset_setup[GFX_SPECIAL_ARG_SETUP_GAME]
+ },
+ {
+ "menu.draw_yoffset.SETUP[GAME]",
+ &menu.draw_yoffset_setup[GFX_SPECIAL_ARG_SETUP_GAME]
+ },
+ {
+ "menu.draw_xoffset.SETUP[EDITOR]",
+ &menu.draw_xoffset_setup[GFX_SPECIAL_ARG_SETUP_EDITOR]
+ },
+ {
+ "menu.draw_yoffset.SETUP[EDITOR]",
+ &menu.draw_yoffset_setup[GFX_SPECIAL_ARG_SETUP_EDITOR]
+ },
+ {
+ "menu.draw_xoffset.SETUP[GRAPHICS]",
+ &menu.draw_xoffset_setup[GFX_SPECIAL_ARG_SETUP_GRAPHICS]
+ },
+ {
+ "menu.draw_yoffset.SETUP[GRAPHICS]",
+ &menu.draw_yoffset_setup[GFX_SPECIAL_ARG_SETUP_GRAPHICS]
+ },
+ {
+ "menu.draw_xoffset.SETUP[SOUND]",
+ &menu.draw_xoffset_setup[GFX_SPECIAL_ARG_SETUP_SOUND]
+ },
+ {
+ "menu.draw_yoffset.SETUP[SOUND]",
+ &menu.draw_yoffset_setup[GFX_SPECIAL_ARG_SETUP_SOUND]
+ },
+ {
+ "menu.draw_xoffset.SETUP[ARTWORK]",
+ &menu.draw_xoffset_setup[GFX_SPECIAL_ARG_SETUP_ARTWORK]
+ },
+ {
+ "menu.draw_yoffset.SETUP[ARTWORK]",
+ &menu.draw_yoffset_setup[GFX_SPECIAL_ARG_SETUP_ARTWORK]
+ },
+ {
+ "menu.draw_xoffset.SETUP[INPUT]",
+ &menu.draw_xoffset_setup[GFX_SPECIAL_ARG_SETUP_INPUT]
+ },
+ {
+ "menu.draw_yoffset.SETUP[INPUT]",
+ &menu.draw_yoffset_setup[GFX_SPECIAL_ARG_SETUP_INPUT]
+ },
+ {
+ "menu.draw_xoffset.SETUP[SHORTCUTS_1]",
+ &menu.draw_xoffset_setup[GFX_SPECIAL_ARG_SETUP_SHORTCUTS_1]
+ },
+ {
+ "menu.draw_yoffset.SETUP[SHORTCUTS_1]",
+ &menu.draw_yoffset_setup[GFX_SPECIAL_ARG_SETUP_SHORTCUTS_1]
+ },
+ {
+ "menu.draw_xoffset.SETUP[SHORTCUTS_2]",
+ &menu.draw_xoffset_setup[GFX_SPECIAL_ARG_SETUP_SHORTCUTS_2]
+ },
+ {
+ "menu.draw_yoffset.SETUP[SHORTCUTS_2]",
+ &menu.draw_yoffset_setup[GFX_SPECIAL_ARG_SETUP_SHORTCUTS_2]
+ },
+ {
+ "menu.draw_xoffset.SETUP[CHOOSE_ARTWORK]",
+ &menu.draw_xoffset_setup[GFX_SPECIAL_ARG_SETUP_CHOOSE_ARTWORK]
+ },
+ {
+ "menu.draw_yoffset.SETUP[CHOOSE_ARTWORK]",
+ &menu.draw_yoffset_setup[GFX_SPECIAL_ARG_SETUP_CHOOSE_ARTWORK]
+ },
+ {
+ "menu.draw_xoffset.SETUP[CHOOSE_OTHER]",
+ &menu.draw_xoffset_setup[GFX_SPECIAL_ARG_SETUP_CHOOSE_OTHER]
+ },
+ {
+ "menu.draw_yoffset.SETUP[CHOOSE_OTHER]",
+ &menu.draw_yoffset_setup[GFX_SPECIAL_ARG_SETUP_CHOOSE_OTHER]
+ },
{
"menu.scrollbar_xoffset",
&menu.scrollbar_xoffset
"menu.list_size.INFO",
&menu.list_size[GFX_SPECIAL_ARG_INFO]
},
+ {
+ "menu.list_size.SETUP",
+ &menu.list_size[GFX_SPECIAL_ARG_SETUP]
+ },
{
"main.button.name.x",
&menu.main.button.name.x
-#define COMPILE_DATE_STRING "2007-04-13 22:02"
+#define COMPILE_DATE_STRING "2007-04-14 20:11"
}
/* special case: initialize with default values that may be overwritten */
- /* (eg, init "menu.draw_xoffset.INFO[MUSIC]" from "menu.draw_xoffset.INFO") */
+ /* (eg, init "menu.draw_xoffset.INFO[XXX]" from "menu.draw_xoffset.INFO") */
for (i = 0; i < NUM_SPECIAL_GFX_INFO_ARGS; i++)
{
char *value_1 = getHashEntry(setup_file_hash, "menu.draw_xoffset.INFO");
menu.draw_yoffset_info[i] = get_integer_from_string(value_2);
}
+ /* special case: initialize with default values that may be overwritten */
+ /* (eg, init "menu.draw_xoffset.SETUP[XXX]" from "menu.draw_xoffset.SETUP") */
+ for (i = 0; i < NUM_SPECIAL_GFX_SETUP_ARGS; i++)
+ {
+ char *value_1 = getHashEntry(setup_file_hash, "menu.draw_xoffset.SETUP");
+ char *value_2 = getHashEntry(setup_file_hash, "menu.draw_yoffset.SETUP");
+
+ if (value_1 != NULL)
+ menu.draw_xoffset_setup[i] = get_integer_from_string(value_1);
+ if (value_2 != NULL)
+ menu.draw_yoffset_setup[i] = get_integer_from_string(value_2);
+ }
+
/* special case: initialize with default values that may be overwritten */
/* (eg, init "menu.enter_screen.SCORES.xyz" from "menu.enter_screen.xyz") */
for (i = 0; i < NUM_SPECIAL_GFX_ARGS; i++)
freeSetupFileHash(setup_file_hash);
}
-void LoadSpecialMenuDesignSettings()
+static void LoadSpecialMenuDesignSettings_SpecialPreProcessing()
{
- char *filename_base = UNDEFINED_FILENAME, *filename_local;
- int i, j;
-
- /* always start with reliable default values from static default config */
- for (i = 0; image_config_vars[i].token != NULL; i++)
- for (j = 0; image_config[j].token != NULL; j++)
- if (strEqual(image_config_vars[i].token, image_config[j].token))
- *image_config_vars[i].value =
- get_token_parameter_value(image_config_vars[i].token,
- image_config[j].value);
+ int i;
/* the following initializes hierarchical values from static configuration */
menu.enter_screen[i] = menu.enter_screen[GFX_SPECIAL_ARG_DEFAULT];
menu.leave_screen[i] = menu.leave_screen[GFX_SPECIAL_ARG_DEFAULT];
}
+}
+
+static void LoadSpecialMenuDesignSettings_SpecialPostProcessing()
+{
+ /* special case: initialize later added SETUP list size from LEVELS value */
+ if (menu.list_size[GAME_MODE_SETUP] == -1)
+ menu.list_size[GAME_MODE_SETUP] = menu.list_size[GAME_MODE_LEVELS];
+}
+
+void LoadSpecialMenuDesignSettings()
+{
+ char *filename_base = UNDEFINED_FILENAME, *filename_local;
+ int i, j;
+
+ /* always start with reliable default values from static default config */
+ for (i = 0; image_config_vars[i].token != NULL; i++)
+ for (j = 0; image_config[j].token != NULL; j++)
+ if (strEqual(image_config_vars[i].token, image_config[j].token))
+ *image_config_vars[i].value =
+ get_token_parameter_value(image_config_vars[i].token,
+ image_config[j].value);
+
+ LoadSpecialMenuDesignSettings_SpecialPreProcessing();
if (!SETUP_OVERRIDE_ARTWORK(setup, ARTWORK_TYPE_GRAPHICS))
{
if (filename_local != NULL && !strEqual(filename_base, filename_local))
LoadSpecialMenuDesignSettingsFromFilename(filename_local);
+
+ LoadSpecialMenuDesignSettings_SpecialPostProcessing();
}
void LoadUserDefinedEditorElementList(int **elements, int *num_elements)
#define NUM_SPECIAL_GFX_INFO_ARGS 8
+/* these additional definitions are currently only used for draw offsets */
+#define GFX_SPECIAL_ARG_SETUP_MAIN 0
+#define GFX_SPECIAL_ARG_SETUP_GAME 1
+#define GFX_SPECIAL_ARG_SETUP_EDITOR 2
+#define GFX_SPECIAL_ARG_SETUP_GRAPHICS 3
+#define GFX_SPECIAL_ARG_SETUP_SOUND 4
+#define GFX_SPECIAL_ARG_SETUP_ARTWORK 5
+#define GFX_SPECIAL_ARG_SETUP_INPUT 6
+#define GFX_SPECIAL_ARG_SETUP_SHORTCUTS_1 7
+#define GFX_SPECIAL_ARG_SETUP_SHORTCUTS_2 8
+#define GFX_SPECIAL_ARG_SETUP_CHOOSE_ARTWORK 9
+#define GFX_SPECIAL_ARG_SETUP_CHOOSE_OTHER 10
+
+#define NUM_SPECIAL_GFX_SETUP_ARGS 11
+
/* values for image configuration suffixes */
#define GFX_ARG_X 0
int draw_yoffset[NUM_SPECIAL_GFX_ARGS];
int draw_xoffset_info[NUM_SPECIAL_GFX_INFO_ARGS];
int draw_yoffset_info[NUM_SPECIAL_GFX_INFO_ARGS];
+ int draw_xoffset_setup[NUM_SPECIAL_GFX_SETUP_ARGS];
+ int draw_yoffset_setup[NUM_SPECIAL_GFX_SETUP_ARGS];
int scrollbar_xoffset;
#include "init.h"
#include "config.h"
-/* screens in the setup menu */
-#define SETUP_MODE_MAIN 0
-#define SETUP_MODE_GAME 1
-#define SETUP_MODE_CHOOSE_GAME_SPEED 2
-#define SETUP_MODE_EDITOR 3
-#define SETUP_MODE_INPUT 4
-#define SETUP_MODE_SHORTCUT_1 5
-#define SETUP_MODE_SHORTCUT_2 6
-#define SETUP_MODE_GRAPHICS 7
-#define SETUP_MODE_CHOOSE_SCREEN_MODE 8
-#define SETUP_MODE_CHOOSE_SCROLL_DELAY 9
-#define SETUP_MODE_SOUND 10
-#define SETUP_MODE_ARTWORK 11
-#define SETUP_MODE_CHOOSE_GRAPHICS 12
-#define SETUP_MODE_CHOOSE_SOUNDS 13
-#define SETUP_MODE_CHOOSE_MUSIC 14
-
-#define MAX_SETUP_MODES 15
-
-/* for input setup functions */
-#define SETUPINPUT_SCREEN_POS_START 0
-#define SETUPINPUT_SCREEN_POS_END (SCR_FIELDY - 4)
-#define SETUPINPUT_SCREEN_POS_EMPTY1 (SETUPINPUT_SCREEN_POS_START + 3)
-#define SETUPINPUT_SCREEN_POS_EMPTY2 (SETUPINPUT_SCREEN_POS_END - 1)
-
/* screens on the info screen */
#define INFO_MODE_MAIN 0
#define INFO_MODE_TITLE 1
#define MAX_INFO_MODES 8
+/* screens on the setup screen */
+#define SETUP_MODE_MAIN 0
+#define SETUP_MODE_GAME 1
+#define SETUP_MODE_EDITOR 2
+#define SETUP_MODE_GRAPHICS 3
+#define SETUP_MODE_SOUND 4
+#define SETUP_MODE_ARTWORK 5
+#define SETUP_MODE_INPUT 6
+#define SETUP_MODE_SHORTCUTS_1 7
+#define SETUP_MODE_SHORTCUTS_2 8
+
+/* sub-screens on the setup screen (generic) */
+#define SETUP_MODE_CHOOSE_ARTWORK 9
+#define SETUP_MODE_CHOOSE_OTHER 10
+
+/* sub-screens on the setup screen (specific) */
+#define SETUP_MODE_CHOOSE_GAME_SPEED 11
+#define SETUP_MODE_CHOOSE_SCREEN_MODE 12
+#define SETUP_MODE_CHOOSE_SCROLL_DELAY 13
+#define SETUP_MODE_CHOOSE_GRAPHICS 14
+#define SETUP_MODE_CHOOSE_SOUNDS 15
+#define SETUP_MODE_CHOOSE_MUSIC 16
+
+#define MAX_SETUP_MODES 17
+
+/* for input setup functions */
+#define SETUPINPUT_SCREEN_POS_START 0
+#define SETUPINPUT_SCREEN_POS_END (SCR_FIELDY - 4)
+#define SETUPINPUT_SCREEN_POS_EMPTY1 (SETUPINPUT_SCREEN_POS_START + 3)
+#define SETUPINPUT_SCREEN_POS_EMPTY2 (SETUPINPUT_SCREEN_POS_END - 1)
+
/* for various menu stuff */
#define MENU_SCREEN_START_XPOS 1
#define MENU_SCREEN_START_YPOS 2
static struct GadgetInfo *screen_gadget[NUM_SCREEN_GADGETS];
-static int setup_mode = SETUP_MODE_MAIN;
static int info_mode = INFO_MODE_MAIN;
+static int setup_mode = SETUP_MODE_MAIN;
static TreeInfo *screen_modes = NULL;
static TreeInfo *screen_mode_current = NULL;
(s) == GAME_MODE_PSEUDO_TYPENAME ? \
GAME_MODE_MAIN : GAME_MODE_DEFAULT)
+/* (there are no draw offset definitions needed for INFO_MODE_TITLE) */
#define DRAW_MODE_INFO(i) ((i) >= INFO_MODE_ELEMENTS && \
(i) <= INFO_MODE_LEVELSET ? (i) : \
INFO_MODE_MAIN)
+#define DRAW_MODE_SETUP(i) ((i) >= SETUP_MODE_MAIN && \
+ (i) <= SETUP_MODE_SHORTCUTS_2 ? (i) : \
+ (i) >= SETUP_MODE_CHOOSE_GRAPHICS && \
+ (i) <= SETUP_MODE_CHOOSE_MUSIC ? \
+ SETUP_MODE_CHOOSE_ARTWORK : \
+ SETUP_MODE_CHOOSE_OTHER)
+
#define DRAW_XOFFSET_INFO(i) (DRAW_MODE_INFO(i) == INFO_MODE_MAIN ? \
menu.draw_xoffset[GAME_MODE_INFO] : \
menu.draw_xoffset_info[DRAW_MODE_INFO(i)])
menu.draw_yoffset[GAME_MODE_INFO] : \
menu.draw_yoffset_info[DRAW_MODE_INFO(i)])
+#define DRAW_XOFFSET_SETUP(i) (DRAW_MODE_SETUP(i) == SETUP_MODE_MAIN ? \
+ menu.draw_xoffset[GAME_MODE_SETUP] : \
+ menu.draw_xoffset_setup[DRAW_MODE_SETUP(i)])
+#define DRAW_YOFFSET_SETUP(i) (DRAW_MODE_SETUP(i) == SETUP_MODE_MAIN ? \
+ menu.draw_yoffset[GAME_MODE_SETUP] : \
+ menu.draw_yoffset_setup[DRAW_MODE_SETUP(i)])
+
#define DRAW_XOFFSET(s) ((s) == GAME_MODE_INFO ? \
DRAW_XOFFSET_INFO(info_mode) : \
+ (s) == GAME_MODE_SETUP ? \
+ DRAW_XOFFSET_SETUP(setup_mode) : \
menu.draw_xoffset[DRAW_MODE(s)])
#define DRAW_YOFFSET(s) ((s) == GAME_MODE_INFO ? \
DRAW_YOFFSET_INFO(info_mode) : \
+ (s) == GAME_MODE_SETUP ? \
+ DRAW_YOFFSET_SETUP(setup_mode) : \
menu.draw_yoffset[DRAW_MODE(s)])
#define mSX (SX + DRAW_XOFFSET(game_status))
{
int last_game_status = game_status; /* save current game status */
+#if 0
/* force LEVELS draw offset on artwork setup screen */
game_status = GAME_MODE_LEVELS;
+#endif
drawCursorExt(0, ypos, active, -1);
if (leveldir_first)
{
game_status = GAME_MODE_LEVELS;
+
SaveLevelSetup_LastSeries();
SaveLevelSetup_SeriesInfo();
DrawTextSCentered(mSY - SY + yoffset, FONT_TITLE_1, title_string);
+#if 0
/* force LEVELS font on artwork setup screen */
game_status = GAME_MODE_LEVELS;
+#endif
#if 1
/* clear tree list area, but not title or scrollbar */
int last_game_status = game_status; /* save current game status */
boolean position_set_by_scrollbar = (dx == 999);
+#if 0
/* force LEVELS draw offset on choose level and artwork setup screen */
game_status = GAME_MODE_LEVELS;
+#endif
if (num_entries <= NUM_MENU_ENTRIES_ON_SCREEN)
num_page_entries = num_entries;
{
int last_game_status = game_status; /* save current game status */
+#if 0
/* force LEVELS draw offset on artwork setup screen */
game_status = GAME_MODE_LEVELS;
+#endif
x = (mx - mSX) / 32;
y = (my - mSY) / 32 - MENU_SCREEN_START_YPOS;
DrawSetupScreen();
}
-static void execSetupShortcut1()
+static void execSetupShortcuts1()
{
#if 0
FadeSetEnterMenu();
#endif
- setup_mode = SETUP_MODE_SHORTCUT_1;
+ setup_mode = SETUP_MODE_SHORTCUTS_1;
DrawSetupScreen();
}
-static void execSetupShortcut2()
+static void execSetupShortcuts2()
{
#if 0
FadeSetEnterMenu();
#endif
- setup_mode = SETUP_MODE_SHORTCUT_2;
+ setup_mode = SETUP_MODE_SHORTCUTS_2;
DrawSetupScreen();
}
{ TYPE_ENTER_MENU, execSetupSound, "Sound & Music" },
{ TYPE_ENTER_MENU, execSetupArtwork, "Custom Artwork" },
{ TYPE_ENTER_MENU, execSetupInput, "Input Devices" },
- { TYPE_ENTER_MENU, execSetupShortcut1, "Key Shortcuts 1" },
- { TYPE_ENTER_MENU, execSetupShortcut2, "Key Shortcuts 2" },
+ { TYPE_ENTER_MENU, execSetupShortcuts1, "Key Shortcuts 1" },
+ { TYPE_ENTER_MENU, execSetupShortcuts2, "Key Shortcuts 2" },
{ TYPE_EMPTY, NULL, "" },
{ TYPE_LEAVE_MENU, execExitSetup, "Exit" },
{ TYPE_LEAVE_MENU, execSaveAndExitSetup, "Save and Exit" },
{ 0, NULL, NULL }
};
-static struct TokenInfo setup_info_shortcut_1[] =
+static struct TokenInfo setup_info_shortcuts_1[] =
{
{ TYPE_KEYTEXT, NULL, "Quick Save Game to Tape:", },
{ TYPE_KEY, &setup.shortcut.save_game, "" },
{ 0, NULL, NULL }
};
-static struct TokenInfo setup_info_shortcut_2[] =
+static struct TokenInfo setup_info_shortcuts_2[] =
{
{ TYPE_KEYTEXT, NULL, "Set Focus to Player 1:", },
{ TYPE_KEY, &setup.shortcut.focus_player[0], "" },
setup_info = setup_info_artwork;
title_string = "Custom Artwork";
}
- else if (setup_mode == SETUP_MODE_SHORTCUT_1)
+ else if (setup_mode == SETUP_MODE_SHORTCUTS_1)
{
- setup_info = setup_info_shortcut_1;
+ setup_info = setup_info_shortcuts_1;
title_string = "Setup Shortcuts";
}
- else if (setup_mode == SETUP_MODE_SHORTCUT_2)
+ else if (setup_mode == SETUP_MODE_SHORTCUTS_2)
{
- setup_info = setup_info_shortcut_2;
+ setup_info = setup_info_shortcuts_2;
title_string = "Setup Shortcuts";
}
CreateScreenMenubuttons();
+#if 0
/* force LEVELS draw offset for scrollbar / scrollbutton gadgets */
game_status = GAME_MODE_LEVELS;
+#endif
CreateScreenScrollbuttons();
CreateScreenScrollbars();