IMG_FONT_INITIAL_4
},
{
- FONT_BIG_1, -1,
- IMG_FONT_BIG_1
+ FONT_TITLE_1, -1,
+ IMG_FONT_TITLE_1
},
{
- FONT_BIG_2, -1,
- IMG_FONT_BIG_2
+ FONT_TITLE_1, GFX_SPECIAL_ARG_LEVELS,
+ IMG_FONT_TITLE_1_LEVELS
},
{
- FONT_BIG_3, -1,
- IMG_FONT_BIG_3
+ FONT_TITLE_2, -1,
+ IMG_FONT_TITLE_2
},
{
- FONT_BIG_4, -1,
- IMG_FONT_BIG_4
+ FONT_MENU_1, -1,
+ IMG_FONT_MENU_1
},
{
- FONT_MEDIUM_1, -1,
- IMG_FONT_MEDIUM_1
+ FONT_MENU_2, -1,
+ IMG_FONT_MENU_2
},
{
- FONT_MEDIUM_2, -1,
- IMG_FONT_MEDIUM_2
+ FONT_TEXT_1, -1,
+ IMG_FONT_TEXT_1
},
{
- FONT_MEDIUM_3, -1,
- IMG_FONT_MEDIUM_3
+ FONT_TEXT_1, GFX_SPECIAL_ARG_LEVELS,
+ IMG_FONT_TEXT_1_LEVELS
},
{
- FONT_MEDIUM_4, -1,
- IMG_FONT_MEDIUM_4
+ FONT_TEXT_1, GFX_SPECIAL_ARG_SCORES,
+ IMG_FONT_TEXT_1_SCORES
},
{
- FONT_SMALL_1, -1,
- IMG_FONT_SMALL_1
+ FONT_TEXT_1, GFX_SPECIAL_ARG_PREVIEW,
+ IMG_FONT_TEXT_1_PREVIEW
},
{
- FONT_SMALL_2, -1,
- IMG_FONT_SMALL_2
+ FONT_TEXT_2, -1,
+ IMG_FONT_TEXT_2
},
{
- FONT_SMALL_3, -1,
- IMG_FONT_SMALL_3
+ FONT_TEXT_2, GFX_SPECIAL_ARG_LEVELS,
+ IMG_FONT_TEXT_2_LEVELS
},
{
- FONT_SMALL_4, -1,
- IMG_FONT_SMALL_4
+ FONT_TEXT_2, GFX_SPECIAL_ARG_SCORES,
+ IMG_FONT_TEXT_2_SCORES
},
{
- FONT_TAPE, -1,
- IMG_FONT_TAPE
+ FONT_TEXT_2, GFX_SPECIAL_ARG_PREVIEW,
+ IMG_FONT_TEXT_2_PREVIEW
},
{
- FONT_GAME, -1,
- IMG_FONT_GAME
+ FONT_TEXT_3, -1,
+ IMG_FONT_TEXT_3
},
{
- FONT_NARROW, -1,
- IMG_FONT_NARROW
+ FONT_TEXT_3, GFX_SPECIAL_ARG_LEVELS,
+ IMG_FONT_TEXT_3_LEVELS
+ },
+ {
+ FONT_TEXT_3, GFX_SPECIAL_ARG_SCORES,
+ IMG_FONT_TEXT_3_SCORES
+ },
+ {
+ FONT_TEXT_3, GFX_SPECIAL_ARG_PREVIEW,
+ IMG_FONT_TEXT_3_PREVIEW
+ },
+ {
+ FONT_TEXT_4, -1,
+ IMG_FONT_TEXT_4
+ },
+ {
+ FONT_TEXT_4, GFX_SPECIAL_ARG_LEVELS,
+ IMG_FONT_TEXT_4_LEVELS
+ },
+ {
+ FONT_TEXT_4, GFX_SPECIAL_ARG_SCORES,
+ IMG_FONT_TEXT_4_SCORES
+ },
+ {
+ FONT_INPUT, -1,
+ IMG_FONT_INPUT
+ },
+ {
+ FONT_INPUT, GFX_SPECIAL_ARG_MAIN,
+ IMG_FONT_INPUT_MAIN
+ },
+ {
+ FONT_INPUT_ACTIVE, -1,
+ IMG_FONT_INPUT_ACTIVE
+ },
+ {
+ FONT_INPUT_ACTIVE, GFX_SPECIAL_ARG_MAIN,
+ IMG_FONT_INPUT_ACTIVE_MAIN
+ },
+ {
+ FONT_INPUT_ACTIVE, GFX_SPECIAL_ARG_SETUP,
+ IMG_FONT_INPUT_ACTIVE_SETUP
+ },
+ {
+ FONT_OPTION_OFF, -1,
+ IMG_FONT_OPTION_OFF
+ },
+ {
+ FONT_OPTION_ON, -1,
+ IMG_FONT_OPTION_ON
+ },
+ {
+ FONT_VALUE_1, -1,
+ IMG_FONT_VALUE_1
+ },
+ {
+ FONT_VALUE_2, -1,
+ IMG_FONT_VALUE_2
+ },
+ {
+ FONT_VALUE_OLD, -1,
+ IMG_FONT_VALUE_OLD
+ },
+ {
+ FONT_LEVEL_NUMBER, -1,
+ IMG_FONT_LEVEL_NUMBER
+ },
+ {
+ FONT_TAPE_RECORDER, -1,
+ IMG_FONT_TAPE_RECORDER
},
{
-1, -1,
{ "font.initial_4.width", "14" },
{ "font.initial_4.height", "14" },
- { "font.big_1", "RocksFontBig.pcx" },
- { "font.big_1.x", "0" },
- { "font.big_1.y", "0" },
- { "font.big_1.width", "32" },
- { "font.big_1.height", "32" },
- { "font.big_2", "RocksFontBig.pcx" },
- { "font.big_2.x", "0" },
- { "font.big_2.y", "128" },
- { "font.big_2.width", "32" },
- { "font.big_2.height", "32" },
- { "font.big_3", "RocksFontBig.pcx" },
- { "font.big_3.x", "0" },
- { "font.big_3.y", "256" },
- { "font.big_3.width", "32" },
- { "font.big_3.height", "32" },
- { "font.big_4", "RocksFontBig.pcx" },
- { "font.big_4.x", "0" },
- { "font.big_4.y", "384" },
- { "font.big_4.width", "32" },
- { "font.big_4.height", "32" },
-
- { "font.medium_1", "RocksFontMedium.pcx" },
- { "font.medium_1.x", "0" },
- { "font.medium_1.y", "0" },
- { "font.medium_1.width", "16" },
- { "font.medium_1.height", "32" },
- { "font.medium_2", "RocksFontMedium.pcx" },
- { "font.medium_2.x", "0" },
- { "font.medium_2.y", "128" },
- { "font.medium_2.width", "16" },
- { "font.medium_2.height", "32" },
- { "font.medium_3", "RocksFontMedium.pcx" },
- { "font.medium_3.x", "0" },
- { "font.medium_3.y", "256" },
- { "font.medium_3.width", "16" },
- { "font.medium_3.height", "32" },
- { "font.medium_4", "RocksFontMedium.pcx" },
- { "font.medium_4.x", "0" },
- { "font.medium_4.y", "384" },
- { "font.medium_4.width", "16" },
- { "font.medium_4.height", "32" },
-
- { "font.small_1", "RocksFontSmall.pcx" },
- { "font.small_1.x", "0" },
- { "font.small_1.y", "0" },
- { "font.small_1.width", "14" },
- { "font.small_1.height", "14" },
- { "font.small_2", "RocksFontSmall.pcx" },
- { "font.small_2.x", "0" },
- { "font.small_2.y", "56" },
- { "font.small_2.width", "14" },
- { "font.small_2.height", "14" },
- { "font.small_3", "RocksFontSmall.pcx" },
- { "font.small_3.x", "0" },
- { "font.small_3.y", "112" },
- { "font.small_3.width", "14" },
- { "font.small_3.height", "14" },
- { "font.small_4", "RocksFontSmall.pcx" },
- { "font.small_4.x", "0" },
- { "font.small_4.y", "168" },
- { "font.small_4.width", "14" },
- { "font.small_4.height", "14" },
-
- { "font.tape", "RocksFontSmall.pcx" },
- { "font.tape.x", "0" },
- { "font.tape.y", "224" },
- { "font.tape.width", "11" },
- { "font.tape.height", "14" },
-
- { "font.game", "RocksFontEM.pcx" },
- { "font.game.x", "0" },
- { "font.game.y", "160" },
- { "font.game.width", "16" },
- { "font.game.height", "16" },
-
- { "font.narrow", "RocksFontSmall.pcx" },
- { "font.narrow.x", "0" },
- { "font.narrow.y", "280" },
- { "font.narrow.width", "10" },
- { "font.narrow.height", "14" },
+ { "font.title_1", "RocksFontBig.pcx" },
+ { "font.title_1.x", "0" },
+ { "font.title_1.y", "384" },
+ { "font.title_1.width", "32" },
+ { "font.title_1.height", "32" },
+ { "font.title_1.LEVELS", "RocksFontBig.pcx" },
+ { "font.title_1.LEVELS.x", "0" },
+ { "font.title_1.LEVELS.y", "256" },
+ { "font.title_1.LEVELS.width", "32" },
+ { "font.title_1.LEVELS.height", "32" },
+ { "font.title_2", "RocksFontSmall.pcx" },
+ { "font.title_2.x", "0" },
+ { "font.title_2.y", "0" },
+ { "font.title_2.width", "14" },
+ { "font.title_2.height", "14" },
+
+ { "font.menu_1", "RocksFontBig.pcx" },
+ { "font.menu_1.x", "0" },
+ { "font.menu_1.y", "256" },
+ { "font.menu_1.width", "32" },
+ { "font.menu_1.height", "32" },
+ { "font.menu_2", "RocksFontMedium.pcx" },
+ { "font.menu_2.x", "0" },
+ { "font.menu_2.y", "256" },
+ { "font.menu_2.width", "16" },
+ { "font.menu_2.height", "32" },
+
+ { "font.text_1", "RocksFontSmall.pcx" },
+ { "font.text_1.x", "0" },
+ { "font.text_1.y", "112" },
+ { "font.text_1.width", "14" },
+ { "font.text_1.height", "14" },
+ { "font.text_1.LEVELS", "RocksFontMedium.pcx" },
+ { "font.text_1.LEVELS.x", "0" },
+ { "font.text_1.LEVELS.y", "0" },
+ { "font.text_1.LEVELS.width", "16" },
+ { "font.text_1.LEVELS.height", "32" },
+ { "font.text_1.SCORES", "RocksFontBig.pcx" },
+ { "font.text_1.SCORES.x", "0" },
+ { "font.text_1.SCORES.y", "256" },
+ { "font.text_1.SCORES.width", "32" },
+ { "font.text_1.SCORES.height", "32" },
+ { "font.text_1.PREVIEW", "RocksFontEM.pcx" },
+ { "font.text_1.PREVIEW.x", "0" },
+ { "font.text_1.PREVIEW.y", "160" },
+ { "font.text_1.PREVIEW.width", "16" },
+ { "font.text_1.PREVIEW.height", "16" },
+ { "font.text_2", "RocksFontSmall.pcx" },
+ { "font.text_2.x", "0" },
+ { "font.text_2.y", "168" },
+ { "font.text_2.width", "14" },
+ { "font.text_2.height", "14" },
+ { "font.text_2.LEVELS", "RocksFontMedium.pcx" },
+ { "font.text_2.LEVELS.x", "0" },
+ { "font.text_2.LEVELS.y", "128" },
+ { "font.text_2.LEVELS.width", "16" },
+ { "font.text_2.LEVELS.height", "32" },
+ { "font.text_2.SCORES", "RocksFontMedium.pcx" },
+ { "font.text_2.SCORES.x", "0" },
+ { "font.text_2.SCORES.y", "384" },
+ { "font.text_2.SCORES.width", "16" },
+ { "font.text_2.SCORES.height", "32" },
+ { "font.text_2.PREVIEW", "RocksFontEM.pcx" },
+ { "font.text_2.PREVIEW.x", "0" },
+ { "font.text_2.PREVIEW.y", "160" },
+ { "font.text_2.PREVIEW.width", "16" },
+ { "font.text_2.PREVIEW.height", "16" },
+ { "font.text_3", "RocksFontSmall.pcx" },
+ { "font.text_3.x", "0" },
+ { "font.text_3.y", "0" },
+ { "font.text_3.width", "14" },
+ { "font.text_3.height", "14" },
+ { "font.text_3.LEVELS", "RocksFontMedium.pcx" },
+ { "font.text_3.LEVELS.x", "0" },
+ { "font.text_3.LEVELS.y", "256" },
+ { "font.text_3.LEVELS.width", "16" },
+ { "font.text_3.LEVELS.height", "32" },
+ { "font.text_3.SCORES", "RocksFontBig.pcx" },
+ { "font.text_3.SCORES.x", "0" },
+ { "font.text_3.SCORES.y", "0" },
+ { "font.text_3.SCORES.width", "32" },
+ { "font.text_3.SCORES.height", "32" },
+ { "font.text_3.PREVIEW", "RocksFontEM.pcx" },
+ { "font.text_3.PREVIEW.x", "0" },
+ { "font.text_3.PREVIEW.y", "160" },
+ { "font.text_3.PREVIEW.width", "16" },
+ { "font.text_3.PREVIEW.height", "16" },
+ { "font.text_4", "RocksFontSmall.pcx" },
+ { "font.text_4.x", "0" },
+ { "font.text_4.y", "56" },
+ { "font.text_4.width", "14" },
+ { "font.text_4.height", "14" },
+ { "font.text_4.LEVELS", "RocksFontMedium.pcx" },
+ { "font.text_4.LEVELS.x", "0" },
+ { "font.text_4.LEVELS.y", "384" },
+ { "font.text_4.LEVELS.width", "16" },
+ { "font.text_4.LEVELS.height", "32" },
+ { "font.text_4.SCORES", "RocksFontMedium.pcx" },
+ { "font.text_4.SCORES.x", "0" },
+ { "font.text_4.SCORES.y", "0" },
+ { "font.text_4.SCORES.width", "16" },
+ { "font.text_4.SCORES.height", "32" },
+
+ { "font.input", "RocksFontSmall.pcx" },
+ { "font.input.x", "0" },
+ { "font.input.y", "168" },
+ { "font.input.width", "14" },
+ { "font.input.height", "14" },
+ { "font.input.MAIN", "RocksFontBig.pcx" },
+ { "font.input.MAIN.x", "0" },
+ { "font.input.MAIN.y", "0" },
+ { "font.input.MAIN.width", "32" },
+ { "font.input.MAIN.height", "32" },
+ { "font.input.active", "RocksFontSmall.pcx" },
+ { "font.input.active.x", "0" },
+ { "font.input.active.y", "0" },
+ { "font.input.active.width", "14" },
+ { "font.input.active.height", "14" },
+ { "font.input.active.MAIN", "RocksFontBig.pcx" },
+ { "font.input.active.MAIN.x", "0" },
+ { "font.input.active.MAIN.y", "384" },
+ { "font.input.active.MAIN.width", "32" },
+ { "font.input.active.MAIN.height", "32" },
+ { "font.input.active.SETUP", "RocksFontBig.pcx" },
+ { "font.input.active.SETUP.x", "0" },
+ { "font.input.active.SETUP.y", "0" },
+ { "font.input.active.SETUP.width", "32" },
+ { "font.input.active.SETUP.height", "32" },
+
+ { "font.option_off", "RocksFontBig.pcx" },
+ { "font.option_off.x", "0" },
+ { "font.option_off.y", "128" },
+ { "font.option_off.width", "32" },
+ { "font.option_off.height", "32" },
+ { "font.option_on", "RocksFontBig.pcx" },
+ { "font.option_on.x", "0" },
+ { "font.option_on.y", "384" },
+ { "font.option_on.width", "32" },
+ { "font.option_on.height", "32" },
+
+ { "font.value_1", "RocksFontBig.pcx" },
+ { "font.value_1.x", "0" },
+ { "font.value_1.y", "384" },
+ { "font.value_1.width", "32" },
+ { "font.value_1.height", "32" },
+ { "font.value_2", "RocksFontMedium.pcx" },
+ { "font.value_2.x", "0" },
+ { "font.value_2.y", "384" },
+ { "font.value_2.width", "16" },
+ { "font.value_2.height", "32" },
+ { "font.value_old", "RocksFontBig.pcx" },
+ { "font.value_old.x", "0" },
+ { "font.value_old.y", "128" },
+ { "font.value_old.width", "32" },
+ { "font.value_old.height", "32" },
+
+ { "font.level_number", "RocksFontSmall.pcx" },
+ { "font.level_number.x", "0" },
+ { "font.level_number.y", "280" },
+ { "font.level_number.width", "10" },
+ { "font.level_number.height", "14" },
+
+ { "font.tape_recorder", "RocksFontSmall.pcx" },
+ { "font.tape_recorder.x", "0" },
+ { "font.tape_recorder.y", "224" },
+ { "font.tape_recorder.width", "11" },
+ { "font.tape_recorder.height", "14" },
{ "global.border", "RocksScreen.pcx" },
{ "global.door", "RocksDoor.pcx" },
{ "background", UNDEFINED_FILENAME },
- { "background.main", UNDEFINED_FILENAME },
- { "background.levels", UNDEFINED_FILENAME },
- { "background.scores", UNDEFINED_FILENAME },
- { "background.editor", UNDEFINED_FILENAME },
- { "background.info", UNDEFINED_FILENAME },
- { "background.setup", UNDEFINED_FILENAME },
- { "background.door", UNDEFINED_FILENAME },
+ { "background.MAIN", UNDEFINED_FILENAME },
+ { "background.LEVELS", UNDEFINED_FILENAME },
+ { "background.SCORES", UNDEFINED_FILENAME },
+ { "background.EDITOR", UNDEFINED_FILENAME },
+ { "background.INFO", UNDEFINED_FILENAME },
+ { "background.SETUP", UNDEFINED_FILENAME },
+ { "background.DOOR", UNDEFINED_FILENAME },
{ "info.font_em_1", "RocksFontEM.pcx" },
{ "info.font_em_1.xpos", "0" },
#define IMG_FONT_INITIAL_2 788
#define IMG_FONT_INITIAL_3 789
#define IMG_FONT_INITIAL_4 790
-#define IMG_FONT_BIG_1 791
-#define IMG_FONT_BIG_2 792
-#define IMG_FONT_BIG_3 793
-#define IMG_FONT_BIG_4 794
-#define IMG_FONT_MEDIUM_1 795
-#define IMG_FONT_MEDIUM_2 796
-#define IMG_FONT_MEDIUM_3 797
-#define IMG_FONT_MEDIUM_4 798
-#define IMG_FONT_SMALL_1 799
-#define IMG_FONT_SMALL_2 800
-#define IMG_FONT_SMALL_3 801
-#define IMG_FONT_SMALL_4 802
-#define IMG_FONT_TAPE 803
-#define IMG_FONT_GAME 804
-#define IMG_FONT_NARROW 805
-#define IMG_GLOBAL_BORDER 806
-#define IMG_GLOBAL_DOOR 807
-#define IMG_BACKGROUND 808
-#define IMG_BACKGROUND_MAIN 809
-#define IMG_BACKGROUND_LEVELS 810
-#define IMG_BACKGROUND_SCORES 811
-#define IMG_BACKGROUND_EDITOR 812
-#define IMG_BACKGROUND_INFO 813
-#define IMG_BACKGROUND_SETUP 814
-#define IMG_BACKGROUND_DOOR 815
-#define IMG_INFO_FONT_EM_1 816
-#define IMG_INFO_FONT_EM_2 817
-#define IMG_INFO_FONT_EM_3 818
-#define IMG_INFO_FONT_EM_4 819
-#define IMG_INFO_FONT_EM_5 820
+#define IMG_FONT_TITLE_1 791
+#define IMG_FONT_TITLE_1_LEVELS 792
+#define IMG_FONT_TITLE_2 793
+#define IMG_FONT_MENU_1 794
+#define IMG_FONT_MENU_2 795
+#define IMG_FONT_TEXT_1 796
+#define IMG_FONT_TEXT_1_LEVELS 797
+#define IMG_FONT_TEXT_1_SCORES 798
+#define IMG_FONT_TEXT_1_PREVIEW 799
+#define IMG_FONT_TEXT_2 800
+#define IMG_FONT_TEXT_2_LEVELS 801
+#define IMG_FONT_TEXT_2_SCORES 802
+#define IMG_FONT_TEXT_2_PREVIEW 803
+#define IMG_FONT_TEXT_3 804
+#define IMG_FONT_TEXT_3_LEVELS 805
+#define IMG_FONT_TEXT_3_SCORES 806
+#define IMG_FONT_TEXT_3_PREVIEW 807
+#define IMG_FONT_TEXT_4 808
+#define IMG_FONT_TEXT_4_LEVELS 809
+#define IMG_FONT_TEXT_4_SCORES 810
+#define IMG_FONT_INPUT 811
+#define IMG_FONT_INPUT_MAIN 812
+#define IMG_FONT_INPUT_ACTIVE 813
+#define IMG_FONT_INPUT_ACTIVE_MAIN 814
+#define IMG_FONT_INPUT_ACTIVE_SETUP 815
+#define IMG_FONT_OPTION_OFF 816
+#define IMG_FONT_OPTION_ON 817
+#define IMG_FONT_VALUE_1 818
+#define IMG_FONT_VALUE_2 819
+#define IMG_FONT_VALUE_OLD 820
+#define IMG_FONT_LEVEL_NUMBER 821
+#define IMG_FONT_TAPE_RECORDER 822
+#define IMG_GLOBAL_BORDER 823
+#define IMG_GLOBAL_DOOR 824
+#define IMG_BACKGROUND 825
+#define IMG_BACKGROUND_MAIN 826
+#define IMG_BACKGROUND_LEVELS 827
+#define IMG_BACKGROUND_SCORES 828
+#define IMG_BACKGROUND_EDITOR 829
+#define IMG_BACKGROUND_INFO 830
+#define IMG_BACKGROUND_SETUP 831
+#define IMG_BACKGROUND_DOOR 832
+#define IMG_INFO_FONT_EM_1 833
+#define IMG_INFO_FONT_EM_2 834
+#define IMG_INFO_FONT_EM_3 835
+#define IMG_INFO_FONT_EM_4 836
+#define IMG_INFO_FONT_EM_5 837
-#define NUM_IMAGE_FILES 821
+#define NUM_IMAGE_FILES 838
#endif /* CONF_GFX_H */
-#define COMPILE_DATE_STRING "[2003-02-28 22:35]"
+#define COMPILE_DATE_STRING "[2003-03-04 02:56]"
static int getCounterGadgetWidth()
{
- return (DXSIZE + getFontWidth(FONT_DEFAULT_SMALL) - 2 * ED_GADGET_DISTANCE);
+ return (DXSIZE + getFontWidth(FONT_INPUT) - 2 * ED_GADGET_DISTANCE);
}
static int getMaxInfoTextLength()
{
- return (SXSIZE / getFontWidth(FONT_DEFAULT_SMALL));
+ return (SXSIZE / getFontWidth(FONT_TEXT_2));
}
static char *getElementInfoText(int element)
if (j == 0)
{
- int font_type = FONT_DEFAULT_SMALL;
+ int font_type = FONT_INPUT;
int gd_width = ED_WIN_COUNT_XSIZE;
id = counterbutton_info[i].gadget_id_text;
if (i == ED_COUNTER_ID_SELECT_LEVEL)
{
- font_type = FONT_SPECIAL_NARROW;
+ font_type = FONT_LEVEL_NUMBER;
xpos += 2 * ED_GADGET_DISTANCE;
ypos -= ED_GADGET_DISTANCE;
GDI_TYPE, GD_TYPE_TEXTINPUT_ALPHANUMERIC,
GDI_TEXT_VALUE, textinput_info[i].value,
GDI_TEXT_SIZE, textinput_info[i].size,
- GDI_TEXT_FONT, FONT_DEFAULT_SMALL,
+ GDI_TEXT_FONT, FONT_INPUT,
GDI_DESIGN_UNPRESSED, gd_bitmap, gd_x, gd_y,
GDI_DESIGN_PRESSED, gd_bitmap, gd_x, gd_y,
GDI_BORDER_SIZE, ED_BORDER_SIZE,
int yoffset_right = ED_BORDER_SIZE;
int xoffset_right2 = ED_CHECKBUTTON_XSIZE + 2 * ED_GADGET_DISTANCE;
int yoffset_right2 = ED_BORDER_SIZE;
- int font_color = FONT(FS_SMALL, FC_GREEN);
int i, x, y;
SetMainBackgroundImage(IMG_BACKGROUND_EDITOR);
UnmapLevelEditorWindowGadgets();
DrawText(SX + ED_SETTINGS2_XPOS, SY + ED_SETTINGS_YPOS,
- "Level Settings", FONT_DEFAULT_BIG);
+ "Level Settings", FONT_TITLE_1);
DrawText(SX + ED_SETTINGS2_XPOS, SY + ED_SETTINGS2_YPOS,
- "Editor Settings", FONT_DEFAULT_BIG);
+ "Editor Settings", FONT_TITLE_1);
/* draw counter gadgets */
for (i=ED_COUNTER_ID_LEVEL_FIRST; i<=ED_COUNTER_ID_LEVEL_LAST; i++)
sprintf(infotext, "%s:", counterbutton_info[i].infotext_above);
infotext[max_infotext_len] = '\0';
- DrawTextF(x, y, font_color, infotext);
+ DrawTextF(x, y, FONT_TEXT_1, infotext);
}
if (counterbutton_info[i].infotext_right)
sprintf(infotext, "%s", counterbutton_info[i].infotext_right);
infotext[max_infotext_len] = '\0';
- DrawTextF(x, y, font_color, infotext);
+ DrawTextF(x, y, FONT_TEXT_1, infotext);
}
ModifyEditorCounter(i, *counterbutton_info[i].value);
sprintf(infotext, "%s:", textinput_info[i].infotext);
infotext[max_infotext_len] = '\0';
- DrawTextF(x, y, font_color, infotext);
+ DrawTextF(x, y, FONT_TEXT_1, infotext);
ModifyEditorTextInput(i, textinput_info[i].value);
MapTextInputGadget(i);
}
x = radiobutton_info[i].x + xoffset_right2;
y = radiobutton_info[i].y + yoffset_right2;
- DrawTextF(x, y, font_color, radiobutton_info[i].text);
+ DrawTextF(x, y, FONT_TEXT_1, radiobutton_info[i].text);
ModifyGadget(level_editor_gadget[radiobutton_info[i].gadget_id],
GDI_CHECKED, checked, GDI_END);
MapRadiobuttonGadget(i);
x = checkbutton_info[i].x + xoffset_right2;
y = checkbutton_info[i].y + yoffset_right2;
- DrawTextF(x, y, font_color, checkbutton_info[i].text);
+ DrawTextF(x, y, FONT_TEXT_1, checkbutton_info[i].text);
ModifyGadget(level_editor_gadget[checkbutton_info[i].gadget_id],
GDI_CHECKED, *checkbutton_info[i].value, GDI_END);
MapCheckbuttonGadget(i);
int area_y = ED_AREA_ELEM_CONTENT_YPOS / MINI_TILEY;
int area_sx = SX + ED_AREA_ELEM_CONTENT_XPOS;
int area_sy = SY + ED_AREA_ELEM_CONTENT_YPOS;
- int font_color = FONT(FS_SMALL, FC_GREEN);
ElementContent[0][0][0] = level.amoeba_content;
DrawElementBorder(area_sx, area_sy, MINI_TILEX, MINI_TILEY);
DrawMiniElement(area_x, area_y, ElementContent[0][0][0]);
- DrawText(area_sx + TILEX, area_sy + 1, "Content of amoeba", font_color);
+ DrawText(area_sx + TILEX, area_sy + 1, "Content of amoeba", FONT_TEXT_1);
MapDrawingArea(GADGET_ID_AMOEBA_CONTENT);
}
int area_sy = SY + ED_AREA_ELEM_CONTENT_YPOS;
int xoffset_right = getCounterGadgetWidth();
int yoffset_right = ED_BORDER_SIZE;
- int font_color = FONT(FS_SMALL, FC_GREEN);
int i, x, y;
for (i=0; i<MAX_ELEMENT_CONTENTS; i++)
/* display counter to choose number of element content areas */
x = counterbutton_info[counter_id].x + xoffset_right;
y = counterbutton_info[counter_id].y + yoffset_right;
- DrawTextF(x, y, font_color, "number of content areas");
+ DrawTextF(x, y, FONT_TEXT_1, "number of content areas");
ModifyEditorCounter(counter_id, *counterbutton_info[counter_id].value);
MapCounterButtons(counter_id);
3 * MINI_TILEX, 3 * MINI_TILEY);
DrawText(area_sx + (5 * 4 - 1) * MINI_TILEX, area_sy + 0 * MINI_TILEY + 1,
- "Content", font_color);
+ "Content", FONT_TEXT_1);
DrawText(area_sx + (5 * 4 - 1) * MINI_TILEX, area_sy + 1 * MINI_TILEY + 1,
- "when", font_color);
+ "when", FONT_TEXT_1);
DrawText(area_sx + (5 * 4 - 1) * MINI_TILEX, area_sy + 2 * MINI_TILEY + 1,
- "smashed", font_color);
+ "smashed", FONT_TEXT_1);
for (i=0; i<level.num_yam_contents; i++)
{
DrawTextF(area_sx - SX + 5 * (i % 4) * MINI_TILEX + MINI_TILEX + 1,
area_sy - SY + 6 * (i / 4) * MINI_TILEY + 4 * MINI_TILEY - 4,
- font_color, "%d", i + 1);
+ FONT_TEXT_1, "%d", i + 1);
}
for (i=0; i<level.num_yam_contents; i++)
int yoffset_right2 = ED_BORDER_SIZE;
int xstart = 2;
int ystart = 4;
- int font_color = FONT(FS_SMALL, FC_GREEN);
int i, x, y;
static struct
{
UnmapLevelEditorWindowGadgets();
DrawText(SX + ED_SETTINGS2_XPOS, SY + ED_SETTINGS_YPOS,
- "Element Settings", FONT_DEFAULT_BIG);
+ "Element Settings", FONT_TITLE_1);
DrawElementBorder(SX + xstart * MINI_TILEX,
SY + ystart * MINI_TILEY + MINI_TILEY / 2,
FrameCounter = 0; /* restart animation frame counter */
DrawTextF((xstart + 3) * MINI_TILEX, (ystart + 1) * MINI_TILEY,
- font_color, getElementInfoText(properties_element));
+ FONT_TEXT_1, getElementInfoText(properties_element));
num_elements_in_level = 0;
for (y=0; y<lev_fieldy; y++)
num_elements_in_level++;
percentage = num_elements_in_level * 100.0 / (lev_fieldx * lev_fieldy);
- DrawTextF(ED_SETTINGS_XPOS, 5 * TILEY, font_color, "In this level:");
- DrawTextF(ED_SETTINGS_XPOS + 15 * getFontWidth(font_color), 5 * TILEY,
- FONT(FS_SMALL, FC_YELLOW), "%d (%.2f%%)", num_elements_in_level,
+ DrawTextF(ED_SETTINGS_XPOS, 5 * TILEY, FONT_TEXT_1, "In this level:");
+ DrawTextF(ED_SETTINGS_XPOS + 15 * getFontWidth(FONT_TEXT_1), 5 * TILEY,
+ FONT_TEXT_2, "%d (%.2f%%)", num_elements_in_level,
percentage);
/* check if there are elements where a score can be chosen for */
int y = counterbutton_info[counter_id].y + yoffset_right;
counterbutton_info[counter_id].value = elements_with_counter[i].value;
- DrawTextF(x, y, font_color, elements_with_counter[i].text);
+ DrawTextF(x, y, FONT_TEXT_1, elements_with_counter[i].text);
ModifyEditorCounter(counter_id, *counterbutton_info[counter_id].value);
MapCounterButtons(counter_id);
x = checkbutton_info[i].x + xoffset_right2;
y = checkbutton_info[i].y + yoffset_right2;
- DrawTextF(x, y, font_color, checkbutton_info[i].text);
+ DrawTextF(x, y, FONT_TEXT_1, checkbutton_info[i].text);
ModifyGadget(level_editor_gadget[checkbutton_info[i].gadget_id],
GDI_CHECKED, *checkbutton_info[i].value, GDI_END);
MapCheckbuttonGadget(i);
x = checkbutton_info[i].x + xoffset_right2;
y = checkbutton_info[i].y + yoffset_right2;
- DrawTextF(x, y, font_color, checkbutton_info[i].text);
+ DrawTextF(x, y, FONT_TEXT_1, checkbutton_info[i].text);
ModifyGadget(level_editor_gadget[checkbutton_info[i].gadget_id],
GDI_CHECKED, *checkbutton_info[i].value, GDI_END);
MapCheckbuttonGadget(i);
checkbutton_info[i].value = &custom_element_properties[nr].indestructible;
- DrawTextF(x, y, font_color, checkbutton_info[i].text);
+ DrawTextF(x, y, FONT_TEXT_1, checkbutton_info[i].text);
ModifyGadget(level_editor_gadget[checkbutton_info[i].gadget_id],
GDI_CHECKED, *checkbutton_info[i].value, GDI_END);
MapCheckbuttonGadget(i);
checkbutton_info[i].value = &custom_element_properties[nr].can_fall;
- DrawTextF(x, y, font_color, checkbutton_info[i].text);
+ DrawTextF(x, y, FONT_TEXT_1, checkbutton_info[i].text);
ModifyGadget(level_editor_gadget[checkbutton_info[i].gadget_id],
GDI_CHECKED, *checkbutton_info[i].value, GDI_END);
MapCheckbuttonGadget(i);
checkbutton_info[i].value = &custom_element_properties[nr].can_smash;
- DrawTextF(x, y, font_color, checkbutton_info[i].text);
+ DrawTextF(x, y, FONT_TEXT_1, checkbutton_info[i].text);
ModifyGadget(level_editor_gadget[checkbutton_info[i].gadget_id],
GDI_CHECKED, *checkbutton_info[i].value, GDI_END);
MapCheckbuttonGadget(i);
checkbutton_info[i].value = &custom_element_properties[nr].pushable;
- DrawTextF(x, y, font_color, checkbutton_info[i].text);
+ DrawTextF(x, y, FONT_TEXT_1, checkbutton_info[i].text);
ModifyGadget(level_editor_gadget[checkbutton_info[i].gadget_id],
GDI_CHECKED, *checkbutton_info[i].value, GDI_END);
MapCheckbuttonGadget(i);
checkbutton_info[i].value = &custom_element_properties[nr].slippery;
- DrawTextF(x, y, font_color, checkbutton_info[i].text);
+ DrawTextF(x, y, FONT_TEXT_1, checkbutton_info[i].text);
ModifyGadget(level_editor_gadget[checkbutton_info[i].gadget_id],
GDI_CHECKED, *checkbutton_info[i].value, GDI_END);
MapCheckbuttonGadget(i);
}
}
- DrawText(INFOTEXT_XPOS, INFOTEXT_YPOS, infotext, FONT_DEFAULT_SMALL);
+ DrawText(INFOTEXT_XPOS, INFOTEXT_YPOS, infotext, FONT_TEXT_2);
}
static void HandleDrawingAreaInfo(struct GadgetInfo *gi)
}
if (drawing_function == GADGET_ID_PICK_ELEMENT)
- DrawTextF(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY, FONT_DEFAULT_SMALL,
+ DrawTextF(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY, FONT_TEXT_2,
"%s: %d, %d", infotext, lx, ly);
else
- DrawTextF(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY, FONT_DEFAULT_SMALL,
+ DrawTextF(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY, FONT_TEXT_2,
"%s: %d, %d", infotext,
ABS(lx - start_lx) + 1, ABS(ly - start_ly) + 1);
}
else if (drawing_function == GADGET_ID_PICK_ELEMENT)
- DrawTextF(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY, FONT_DEFAULT_SMALL,
+ DrawTextF(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY, FONT_TEXT_2,
"%s", getElementInfoText(Feld[lx][ly]));
else
- DrawTextF(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY, FONT_DEFAULT_SMALL,
+ DrawTextF(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY, FONT_TEXT_2,
"Level position: %d, %d", lx, ly);
}
}
}
else if (id == GADGET_ID_AMOEBA_CONTENT)
- DrawTextF(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY, FONT_DEFAULT_SMALL,
+ DrawTextF(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY, FONT_TEXT_2,
"Amoeba content");
else if (id == GADGET_ID_RANDOM_BACKGROUND)
- DrawTextF(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY, FONT_DEFAULT_SMALL,
+ DrawTextF(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY, FONT_TEXT_2,
"Random placement background");
else
- DrawTextF(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY, FONT_DEFAULT_SMALL,
+ DrawTextF(INFOTEXT_XPOS - SX, INFOTEXT_YPOS - SY, FONT_TEXT_2,
"Content area %d position: %d, %d",
id - GADGET_ID_ELEM_CONTENT_0 + 1, sx, sy);
}
el2edimg(EL_KEY1 + j));
DrawText(DX + XX_EMERALDS, DY + YY_EMERALDS,
- int2str(local_player->gems_still_needed, 3), FONT_DEFAULT_SMALL);
+ int2str(local_player->gems_still_needed, 3), FONT_TEXT_2);
DrawText(DX + XX_DYNAMITE, DY + YY_DYNAMITE,
- int2str(local_player->dynamite, 3), FONT_DEFAULT_SMALL);
+ int2str(local_player->dynamite, 3), FONT_TEXT_2);
DrawText(DX + XX_SCORE, DY + YY_SCORE,
- int2str(local_player->score, 5), FONT_DEFAULT_SMALL);
+ int2str(local_player->score, 5), FONT_TEXT_2);
DrawText(DX + XX_TIME, DY + YY_TIME,
- int2str(TimeLeft, 3), FONT_DEFAULT_SMALL);
+ int2str(TimeLeft, 3), FONT_TEXT_2);
}
DOOR_GFX_PAGEX5, DOOR_GFX_PAGEY1, DXSIZE, DYSIZE, DX, DY);
if (level_nr < 100)
- DrawText(DX + XX_LEVEL, DY + YY_LEVEL,
- int2str(level_nr, 2), FONT_DEFAULT_SMALL);
+ DrawText(DX + XX_LEVEL, DY + YY_LEVEL, int2str(level_nr, 2), FONT_TEXT_2);
else
{
DrawTextExt(drawto, DX + XX_EMERALDS, DY + YY_EMERALDS,
- int2str(level_nr, 3), FONT_SPECIAL_NARROW, FONT_OPAQUE);
+ int2str(level_nr, 3), FONT_LEVEL_NUMBER, FONT_OPAQUE);
BlitBitmap(drawto, drawto,
DX + XX_EMERALDS, DY + YY_EMERALDS + 1,
- getFontWidth(FONT_SPECIAL_NARROW) * 3,
- getFontHeight(FONT_SPECIAL_NARROW) - 1,
+ getFontWidth(FONT_LEVEL_NUMBER) * 3,
+ getFontHeight(FONT_LEVEL_NUMBER) - 1,
DX + XX_LEVEL - 1, DY + YY_LEVEL + 1);
}
TimeLeft -= 10;
else
TimeLeft--;
- DrawText(DX_TIME, DY_TIME, int2str(TimeLeft, 3), FONT_DEFAULT_SMALL);
+ DrawText(DX_TIME, DY_TIME, int2str(TimeLeft, 3), FONT_TEXT_2);
BackToFront();
if (!tape.playing)
TimePlayed += 10;
else
TimePlayed++;
- DrawText(DX_TIME, DY_TIME, int2str(TimePlayed, 3), FONT_DEFAULT_SMALL);
+ DrawText(DX_TIME, DY_TIME, int2str(TimePlayed, 3), FONT_TEXT_2);
BackToFront();
if (!tape.playing)
if (TimeLeft <= 10 && setup.time_limit)
PlaySoundStereo(SND_GAME_RUNNING_OUT_OF_TIME, SOUND_MAX_RIGHT);
- DrawText(DX_TIME, DY_TIME, int2str(TimeLeft, 3), FONT_DEFAULT_SMALL);
+ DrawText(DX_TIME, DY_TIME, int2str(TimeLeft, 3), FONT_TEXT_2);
if (!TimeLeft && setup.time_limit)
for (i=0; i<MAX_PLAYERS; i++)
KillHero(&stored_player[i]);
}
else if (level.time == 0 && !AllPlayersGone) /* level without time limit */
- DrawText(DX_TIME, DY_TIME, int2str(TimePlayed, 3), FONT_DEFAULT_SMALL);
+ DrawText(DX_TIME, DY_TIME, int2str(TimePlayed, 3), FONT_TEXT_2);
}
DrawAllPlayers();
local_player->gems_still_needed = 0;
RaiseScoreElement(element);
DrawText(DX_EMERALDS, DY_EMERALDS,
- int2str(local_player->gems_still_needed, 3),
- FONT_DEFAULT_SMALL);
+ int2str(local_player->gems_still_needed, 3), FONT_TEXT_2);
PlaySoundLevelElementAction(x, y, element, ACTION_COLLECTING);
break;
if (level.time > 0)
{
TimeLeft += 10;
- DrawText(DX_TIME, DY_TIME, int2str(TimeLeft, 3), FONT_DEFAULT_SMALL);
+ DrawText(DX_TIME, DY_TIME, int2str(TimeLeft, 3), FONT_TEXT_2);
}
PlaySoundStereo(SND_EXTRA_TIME_COLLECTING, SOUND_MAX_RIGHT);
break;
player->dynamite++;
player->use_disk_red_graphic = (element == EL_SP_DISK_RED);
RaiseScoreElement(EL_DYNAMITE);
- DrawText(DX_DYNAMITE, DY_DYNAMITE,
- int2str(local_player->dynamite, 3), FONT_DEFAULT_SMALL);
+ DrawText(DX_DYNAMITE, DY_DYNAMITE, int2str(local_player->dynamite, 3),
+ FONT_TEXT_2);
PlaySoundLevelElementAction(x, y, element, ACTION_COLLECTING);
break;
case EL_TIME_ORB_FULL:
Feld[x][y] = EL_TIME_ORB_EMPTY;
TimeLeft += 10;
- DrawText(DX_TIME, DY_TIME, int2str(TimeLeft, 3), FONT_DEFAULT_SMALL);
+ DrawText(DX_TIME, DY_TIME, int2str(TimeLeft, 3), FONT_TEXT_2);
DrawLevelField(x, y);
PlaySoundStereo(SND_TIME_ORB_FULL_COLLECTING, SOUND_MAX_RIGHT);
return MF_ACTION;
player->dynamite--;
DrawText(DX_DYNAMITE, DY_DYNAMITE, int2str(local_player->dynamite, 3),
- FONT_DEFAULT_SMALL);
+ FONT_TEXT_2);
if (IN_SCR_FIELD(SCREENX(jx), SCREENY(jy)))
{
#if 1
void RaiseScore(int value)
{
local_player->score += value;
- DrawText(DX_SCORE, DY_SCORE, int2str(local_player->score, 5),
- FONT_DEFAULT_SMALL);
+ DrawText(DX_SCORE, DY_SCORE, int2str(local_player->score, 5), FONT_TEXT_2);
}
void RaiseScoreElement(int element)
return;
}
+ game_status = MAINMENU;
+
DrawMainMenu();
InitNetworkServer();
static int getFontBitmapID(int font_nr)
{
- if (game_status == LEVELED)
- return font_info[font_nr].special_bitmap_id[GFX_SPECIAL_ARG_EDITOR];
+ int special = -1;
+
+ if (game_status == MAINMENU || game_status == TYPENAME)
+ special = GFX_SPECIAL_ARG_MAIN;
+ else if (game_status == CHOOSELEVEL)
+ special = GFX_SPECIAL_ARG_LEVELS;
+ else if (game_status == HALLOFFAME)
+ special = GFX_SPECIAL_ARG_SCORES;
+ else if (game_status == LEVELED)
+ special = GFX_SPECIAL_ARG_EDITOR;
+ else if (game_status == HELPSCREEN)
+ special = GFX_SPECIAL_ARG_INFO;
+ else if (game_status == SETUP)
+ special = GFX_SPECIAL_ARG_SETUP;
+ else if (game_status == PSEUDO_PREVIEW)
+ special = GFX_SPECIAL_ARG_PREVIEW;
+ else if (game_status == PLAYING || game_status == PSEUDO_DOOR)
+ special = GFX_SPECIAL_ARG_DOOR;
+
+ if (special != -1)
+ return font_info[font_nr].special_bitmap_id[special];
else
return font_nr;
}
string_has_parameter(value, "pingpong") ? ANIM_PINGPONG :
string_has_parameter(value, "pingpong2") ? ANIM_PINGPONG2 :
string_has_parameter(value, "random") ? ANIM_RANDOM :
- ANIM_NONE);
+ ANIM_LOOP);
if (string_has_parameter(value, "reverse"))
result |= ANIM_REVERSE;
int getFontWidth(int font_nr)
{
- return gfx.font_bitmap_info[font_nr].width;
+ int font_bitmap_id = gfx.select_font_function(font_nr);
+
+ return gfx.font_bitmap_info[font_bitmap_id].width;
}
int getFontHeight(int font_nr)
{
- return gfx.font_bitmap_info[font_nr].height;
+ int font_bitmap_id = gfx.select_font_function(font_nr);
+
+ return gfx.font_bitmap_info[font_bitmap_id].height;
}
void DrawInitText(char *text, int ypos, int font_nr)
#include "system.h"
-/* font types */
-#define FS_INITIAL 0
-#define FS_BIG 1
-#define FS_MEDIUM 2
-#define FS_SMALL 3
+/* default fonts */
+#define FONT_INITIAL_1 0
+#define FONT_INITIAL_2 1
+#define FONT_INITIAL_3 2
+#define FONT_INITIAL_4 3
/* font colors */
-#define FC_RED 0
-#define FC_BLUE 1
-#define FC_GREEN 2
-#define FC_YELLOW 3
-
-/* special fonts */
-#define FC_SPECIAL_TAPE 4
-#define FC_SPECIAL_GAME 5
-#define FC_SPECIAL_NARROW 6
-
-#define FONT(fs, fc) (( (fs) == FS_INITIAL ? \
- IMG_FONT_INITIAL_1 + (fc) : \
- (fs) == FS_BIG ? \
- IMG_FONT_BIG_1 + (fc) : \
- (fs) == FS_MEDIUM ? \
- IMG_FONT_MEDIUM_1 + (fc) : \
- (fs) == FS_SMALL ? \
- IMG_FONT_SMALL_1 + (fc) : \
- IMG_FONT_SMALL_1 \
- ) - FIRST_IMG_FONT)
-
-#define FONT_DEFAULT_BIG FONT(FS_BIG, FC_YELLOW)
-#define FONT_DEFAULT_SMALL FONT(FS_SMALL, FC_YELLOW)
-#define FONT_SPECIAL_TAPE FONT(FS_SMALL, FC_SPECIAL_TAPE)
-#define FONT_SPECIAL_GAME FONT(FS_SMALL, FC_SPECIAL_GAME)
-#define FONT_SPECIAL_NARROW FONT(FS_SMALL, FC_SPECIAL_NARROW)
+#define FC_RED FONT_INITIAL_1
+#define FC_BLUE FONT_INITIAL_2
+#define FC_GREEN FONT_INITIAL_3
+#define FC_YELLOW FONT_INITIAL_4
#define FONT_CHARS_PER_LINE 16
#define FONT_LINES_PER_FONT 4
DrawBuffer *fieldbuffer;
DrawBuffer *drawto_field;
-int game_status = MAINMENU;
+int game_status = -1;
boolean level_editor_test_game = FALSE;
boolean network_playing = FALSE;
struct SpecialSuffixInfo special_suffix_info[NUM_SPECIAL_GFX_ARGS + 1] =
{
+ { ".MAIN", 0, },
+ { ".LEVELS", 0, },
+ { ".SCORES", 0, },
{ ".EDITOR", 0, },
+ { ".INFO", 0, },
+ { ".SETUP", 0, },
+ { ".DOOR", 0, },
{ ".PREVIEW", 0, },
{ NULL, 0, }
struct FontInfo font_info[NUM_FONTS + 1] =
{
- { "font.initial_1" },
- { "font.initial_2" },
- { "font.initial_3" },
- { "font.initial_4" },
- { "font.big_1" },
- { "font.big_2" },
- { "font.big_3" },
- { "font.big_4" },
- { "font.medium_1" },
- { "font.medium_2" },
- { "font.medium_3" },
- { "font.medium_4" },
- { "font.small_1" },
- { "font.small_2" },
- { "font.small_3" },
- { "font.small_4" },
- { "font.tape" },
- { "font.game" },
- { "font.narrow" },
+ { "font.initial_1" },
+ { "font.initial_2" },
+ { "font.initial_3" },
+ { "font.initial_4" },
+ { "font.title_1" },
+ { "font.title_2" },
+ { "font.menu_1" },
+ { "font.menu_2" },
+ { "font.text_1" },
+ { "font.text_2" },
+ { "font.text_3" },
+ { "font.text_4" },
+ { "font.input" },
+ { "font.input.active" },
+ { "font.option_off" },
+ { "font.option_on" },
+ { "font.value_1" },
+ { "font.value_2" },
+ { "font.value_old" },
+ { "font.tape_recorder" },
+ { "font.level_number" },
};
#define NUM_ACTIONS 21
/* values for special image configuration suffixes */
-#define GFX_SPECIAL_ARG_EDITOR 0
-#define GFX_SPECIAL_ARG_PREVIEW 1
+#define GFX_SPECIAL_ARG_MAIN 0
+#define GFX_SPECIAL_ARG_LEVELS 1
+#define GFX_SPECIAL_ARG_SCORES 2
+#define GFX_SPECIAL_ARG_EDITOR 3
+#define GFX_SPECIAL_ARG_INFO 4
+#define GFX_SPECIAL_ARG_SETUP 5
+#define GFX_SPECIAL_ARG_DOOR 6
+#define GFX_SPECIAL_ARG_PREVIEW 7
-#define NUM_SPECIAL_GFX_ARGS 2
+#define NUM_SPECIAL_GFX_ARGS 8
/* values for image configuration suffixes */
#define FONT_INITIAL_2 1
#define FONT_INITIAL_3 2
#define FONT_INITIAL_4 3
-#define FONT_BIG_1 4
-#define FONT_BIG_2 5
-#define FONT_BIG_3 6
-#define FONT_BIG_4 7
-#define FONT_MEDIUM_1 8
-#define FONT_MEDIUM_2 9
-#define FONT_MEDIUM_3 10
-#define FONT_MEDIUM_4 11
-#define FONT_SMALL_1 12
-#define FONT_SMALL_2 13
-#define FONT_SMALL_3 14
-#define FONT_SMALL_4 15
-#define FONT_TAPE 16
-#define FONT_GAME 17
-#define FONT_NARROW 18
-
-#define NUM_FONTS 19
+#define FONT_TITLE_1 4
+#define FONT_TITLE_2 5
+#define FONT_MENU_1 6
+#define FONT_MENU_2 7
+#define FONT_TEXT_1 8
+#define FONT_TEXT_2 9
+#define FONT_TEXT_3 10
+#define FONT_TEXT_4 11
+#define FONT_INPUT 12
+#define FONT_INPUT_ACTIVE 13
+#define FONT_OPTION_OFF 14
+#define FONT_OPTION_ON 15
+#define FONT_VALUE_1 16
+#define FONT_VALUE_2 17
+#define FONT_VALUE_OLD 18
+#define FONT_TAPE_RECORDER 19
+#define FONT_LEVEL_NUMBER 20
+
+#define NUM_FONTS 21
#define NUM_INITIAL_FONTS 4
-#define FIRST_IMG_FONT IMG_FONT_INITIAL_1
-#define LAST_IMG_FONT IMG_FONT_NARROW
-
-#define NUM_IMG_FONTS (LAST_IMG_FONT - \
- FIRST_IMG_FONT + 1)
-
/* values for game_status */
#define EXITGAME 0
#define TYPENAME 6
#define HALLOFFAME 7
#define SETUP 8
+#define PSEUDO_PREVIEW 9
+#define PSEUDO_DOOR 10
#define PROGRAM_VERSION_MAJOR 2
#define PROGRAM_VERSION_MINOR 2
void DrawHeadline()
{
- int font1_xsize = getFontWidth(FONT(FS_BIG, FC_YELLOW));
- int font2_xsize = getFontWidth(FONT(FS_SMALL, FC_RED));
+ int font1_xsize = getFontWidth(FONT_TITLE_1);
+ int font2_xsize = getFontWidth(FONT_TITLE_2);
int x1 = SX + (SXSIZE - strlen(PROGRAM_TITLE_STRING) * font1_xsize) / 2;
int x2 = SX + (SXSIZE - strlen(WINDOW_SUBTITLE_STRING) * font2_xsize) / 2;
- DrawTextStatic(x1, SY + 8, PROGRAM_TITLE_STRING, FONT(FS_BIG, FC_YELLOW));
- DrawTextStatic(x2, SY + 46, WINDOW_SUBTITLE_STRING, FONT(FS_SMALL, FC_RED));
+ DrawTextStatic(x1, SY + 8, PROGRAM_TITLE_STRING, FONT_TITLE_1);
+ DrawTextStatic(x2, SY + 46, WINDOW_SUBTITLE_STRING, FONT_TITLE_2);
}
static void ToggleFullscreenIfNeeded()
{
static LevelDirTree *leveldir_last_valid = NULL;
char *name_text = (!options.network && setup.team_mode ? "Team:" : "Name:");
- int name_width = getFontWidth(FONT(FS_BIG, FC_GREEN)) * strlen("Name:");
+ int name_width = getFontWidth(FONT_MENU_1) * strlen("Name:");
int i;
UnmapAllGadgets();
DrawHeadline();
- DrawTextStatic(SX + 32, SY + 2*32, name_text, FONT(FS_BIG, FC_GREEN));
- DrawText(SX + 32 + name_width, SY + 2*32, setup.player_name,
- FONT(FS_BIG, FC_RED));
- DrawTextStatic(SX + 32, SY + 3*32, "Level:", FONT(FS_BIG, FC_GREEN));
- DrawText(SX + 11 * 32, SY + 3*32, int2str(level_nr,3), FONT(FS_BIG,
- (leveldir_current->readonly ? FC_RED : FC_YELLOW)));
- DrawTextStatic(SX + 32, SY + 4*32, "Hall Of Fame", FONT(FS_BIG,FC_GREEN));
- DrawTextStatic(SX + 32, SY + 5*32, "Level Creator",FONT(FS_BIG,FC_GREEN));
- DrawTextStatic(SY + 32, SY + 6*32, "Info Screen", FONT(FS_BIG, FC_GREEN));
- DrawTextStatic(SX + 32, SY + 7*32, "Start Game", FONT(FS_BIG, FC_GREEN));
- DrawTextStatic(SX + 32, SY + 8*32, "Setup", FONT(FS_BIG, FC_GREEN));
- DrawTextStatic(SX + 32, SY + 9*32, "Quit", FONT(FS_BIG, FC_GREEN));
+ DrawTextStatic(SX + 32, SY + 2*32, name_text, FONT_MENU_1);
+ DrawText(SX + 32 + name_width, SY + 2*32, setup.player_name, FONT_INPUT);
+ DrawTextStatic(SX + 32, SY + 3*32, "Level:", FONT_MENU_1);
+ DrawText(SX + 11 * 32, SY + 3*32, int2str(level_nr,3), FONT_VALUE_1);
+ DrawTextStatic(SX + 32, SY + 4*32, "Hall Of Fame", FONT_MENU_1);
+ DrawTextStatic(SX + 32, SY + 5*32, "Level Creator", FONT_MENU_1);
+ DrawTextStatic(SY + 32, SY + 6*32, "Info Screen", FONT_MENU_1);
+ DrawTextStatic(SX + 32, SY + 7*32, "Start Game", FONT_MENU_1);
+ DrawTextStatic(SX + 32, SY + 8*32, "Setup", FONT_MENU_1);
+ DrawTextStatic(SX + 32, SY + 9*32, "Quit", FONT_MENU_1);
DrawMicroLevel(MICROLEV_XPOS, MICROLEV_YPOS, TRUE);
- DrawTextF(7*32 + 6, 3*32 + 9, FONT(FS_SMALL, FC_RED), "%d-%d",
+ DrawTextF(7*32 + 6, 3*32 + 9, FONT_TEXT_3, "%d-%d",
leveldir_current->first_level,
leveldir_current->last_level);
if (leveldir_current->readonly)
{
- DrawTextF(15*32 + 6, 3*32 + 9 - 7, FONT(FS_SMALL, FC_RED), "READ");
- DrawTextF(15*32 + 6, 3*32 + 9 + 7, FONT(FS_SMALL, FC_RED), "ONLY");
+ DrawTextF(15*32 + 6, 3*32 + 9 - 7, FONT_TEXT_3, "READ");
+ DrawTextF(15*32 + 6, 3*32 + 9 + 7, FONT_TEXT_3, "ONLY");
}
for(i=0; i<8; i++)
#endif
DrawTextStatic(SX + 56, SY + 326, "A Game by Artsoft Entertainment",
- FONT(FS_SMALL, FC_RED));
-
- if (leveldir_current->name)
- {
- int len = strlen(leveldir_current->name);
- int lxpos = SX + (SXSIZE - len * getFontWidth(FONT_SPECIAL_GAME)) / 2;
- int lypos = SY + 352;
-
- DrawText(lxpos, lypos, leveldir_current->name, FONT_SPECIAL_GAME);
- }
+ FONT_TEXT_3);
FadeToFront();
InitAnimation();
static unsigned long level_delay = 0;
int step = (button == 1 ? 1 : button == 2 ? 5 : 10);
int new_level_nr, old_level_nr = level_nr;
- int font_color = (leveldir_current->readonly ? FC_RED : FC_YELLOW);
new_level_nr = level_nr + (x == 10 ? -step : +step);
if (new_level_nr < leveldir_current->first_level)
level_nr = new_level_nr;
- DrawText(SX + 11 * 32, SY + 3 * 32, int2str(level_nr, 3),
- FONT(FS_BIG, font_color));
+ DrawText(SX + 11 * 32, SY + 3 * 32, int2str(level_nr, 3), FONT_VALUE_1);
LoadLevel(level_nr);
DrawMicroLevel(MICROLEV_XPOS, MICROLEV_YPOS, TRUE);
ClearWindow();
DrawHeadline();
- DrawTextFCentered(100, FONT(FS_SMALL, FC_GREEN), "The game elements:");
+ DrawTextFCentered(100, FONT_TEXT_1, "The game elements:");
for(i=start; i < start + MAX_HELPSCREEN_ELS && i < num_helpscreen_els; i++)
{
DrawText(xstart,
ystart + (i - start) * ystep + (*helpscreen_eltext[i][1] ? 0 : 8),
- helpscreen_eltext[i][0], FONT_DEFAULT_SMALL);
+ helpscreen_eltext[i][0], FONT_TEXT_2);
DrawText(xstart, ystart + (i - start) * ystep + 16,
- helpscreen_eltext[i][1], FONT_DEFAULT_SMALL);
+ helpscreen_eltext[i][1], FONT_TEXT_2);
}
- DrawTextFCentered(ybottom, FONT(FS_SMALL, FC_BLUE),
+ DrawTextFCentered(ybottom, FONT_TEXT_4,
"Press any key or button for next page");
}
ClearWindow();
DrawHeadline();
- DrawTextFCentered(100, FONT(FS_SMALL, FC_GREEN),
- "The game background music loops:");
+ DrawTextFCentered(100, FONT_TEXT_1, "The game background music loops:");
- DrawTextFCentered(ystart + 0 * ystep, FONT(FS_SMALL, FC_YELLOW),
- "Excerpt from");
- DrawTextFCentered(ystart + 1 * ystep, FONT(FS_SMALL, FC_RED),
+ DrawTextFCentered(ystart + 0 * ystep, FONT_TEXT_2, "Excerpt from");
+ DrawTextFCentered(ystart + 1 * ystep, FONT_TEXT_3,
"\"%s\"", helpscreen_music[num][0]);
- DrawTextFCentered(ystart + 2 * ystep, FONT(FS_SMALL, FC_YELLOW),
- "by");
- DrawTextFCentered(ystart + 3 * ystep, FONT(FS_SMALL, FC_RED),
+ DrawTextFCentered(ystart + 2 * ystep, FONT_TEXT_2, "by");
+ DrawTextFCentered(ystart + 3 * ystep, FONT_TEXT_3,
"%s", helpscreen_music[num][1]);
- DrawTextFCentered(ystart + 4 * ystep, FONT(FS_SMALL, FC_YELLOW),
- "from the album");
- DrawTextFCentered(ystart + 5 * ystep, FONT(FS_SMALL, FC_RED),
+ DrawTextFCentered(ystart + 4 * ystep, FONT_TEXT_2, "from the album");
+ DrawTextFCentered(ystart + 5 * ystep, FONT_TEXT_3,
"\"%s\"", helpscreen_music[num][2]);
- DrawTextFCentered(ybottom, FONT(FS_SMALL, FC_BLUE),
+ DrawTextFCentered(ybottom, FONT_TEXT_4,
"Press any key or button for next page");
#if 0
ClearWindow();
DrawHeadline();
- DrawTextFCentered(100, FONT(FS_SMALL, FC_GREEN),
- "Credits:");
- DrawTextFCentered(ystart + 0 * ystep, FONT(FS_SMALL, FC_YELLOW),
- "DOS port of the game:");
- DrawTextFCentered(ystart + 1 * ystep, FONT(FS_SMALL, FC_RED),
- "Guido Schulz");
- DrawTextFCentered(ystart + 2 * ystep, FONT(FS_SMALL, FC_YELLOW),
- "Additional toons:");
- DrawTextFCentered(ystart + 3 * ystep, FONT(FS_SMALL, FC_RED),
- "Karl Hörnell");
- DrawTextFCentered(ystart + 5 * ystep, FONT(FS_SMALL, FC_YELLOW),
+ DrawTextFCentered(100, FONT_TEXT_1, "Credits:");
+ DrawTextFCentered(ystart + 0 * ystep, FONT_TEXT_2, "DOS port of the game:");
+ DrawTextFCentered(ystart + 1 * ystep, FONT_TEXT_3, "Guido Schulz");
+ DrawTextFCentered(ystart + 2 * ystep, FONT_TEXT_2, "Additional toons:");
+ DrawTextFCentered(ystart + 3 * ystep, FONT_TEXT_3, "Karl Hörnell");
+ DrawTextFCentered(ystart + 5 * ystep, FONT_TEXT_2,
"...and many thanks to all contributors");
- DrawTextFCentered(ystart + 6 * ystep, FONT(FS_SMALL, FC_YELLOW),
- "of new levels!");
+ DrawTextFCentered(ystart + 6 * ystep, FONT_TEXT_2, "of new levels!");
- DrawTextFCentered(ybottom, FONT(FS_SMALL, FC_BLUE),
+ DrawTextFCentered(ybottom, FONT_TEXT_4,
"Press any key or button for next page");
}
ClearWindow();
DrawHeadline();
- DrawTextFCentered(100, FONT(FS_SMALL, FC_GREEN), "Program information:");
+ DrawTextFCentered(100, FONT_TEXT_1, "Program information:");
- DrawTextFCentered(ystart + 0 * ystep, FONT(FS_SMALL, FC_YELLOW),
+ DrawTextFCentered(ystart + 0 * ystep, FONT_TEXT_2,
"This game is Freeware!");
- DrawTextFCentered(ystart + 1 * ystep, FONT(FS_SMALL, FC_YELLOW),
+ DrawTextFCentered(ystart + 1 * ystep, FONT_TEXT_2,
"If you like it, send e-mail to:");
- DrawTextFCentered(ystart + 2 * ystep, FONT(FS_SMALL, FC_RED),
+ DrawTextFCentered(ystart + 2 * ystep, FONT_TEXT_3,
"info@artsoft.org");
- DrawTextFCentered(ystart + 3 * ystep, FONT(FS_SMALL, FC_YELLOW),
+ DrawTextFCentered(ystart + 3 * ystep, FONT_TEXT_2,
"or SnailMail to:");
- DrawTextFCentered(ystart + 4 * ystep + 0, FONT(FS_SMALL, FC_RED),
+ DrawTextFCentered(ystart + 4 * ystep + 0, FONT_TEXT_3,
"Holger Schemel");
- DrawTextFCentered(ystart + 4 * ystep + 20, FONT(FS_SMALL, FC_RED),
+ DrawTextFCentered(ystart + 4 * ystep + 20, FONT_TEXT_3,
"Detmolder Strasse 189");
- DrawTextFCentered(ystart + 4 * ystep + 40, FONT(FS_SMALL, FC_RED),
+ DrawTextFCentered(ystart + 4 * ystep + 40, FONT_TEXT_3,
"33604 Bielefeld");
- DrawTextFCentered(ystart + 4 * ystep + 60, FONT(FS_SMALL, FC_RED),
+ DrawTextFCentered(ystart + 4 * ystep + 60, FONT_TEXT_3,
"Germany");
- DrawTextFCentered(ystart + 7 * ystep, FONT(FS_SMALL, FC_YELLOW),
+ DrawTextFCentered(ystart + 7 * ystep, FONT_TEXT_2,
"If you have created new levels,");
- DrawTextFCentered(ystart + 8 * ystep, FONT(FS_SMALL, FC_YELLOW),
+ DrawTextFCentered(ystart + 8 * ystep, FONT_TEXT_2,
"send them to me to include them!");
- DrawTextFCentered(ystart + 9 * ystep, FONT(FS_SMALL, FC_YELLOW),
+ DrawTextFCentered(ystart + 9 * ystep, FONT_TEXT_2,
":-)");
- DrawTextFCentered(ybottom, FONT(FS_SMALL, FC_BLUE),
+ DrawTextFCentered(ybottom, FONT_TEXT_4,
"Press any key or button for main menu");
}
void HandleTypeName(int newxpos, Key key)
{
static int xpos = 0, ypos = 2;
- int font_width = getFontWidth(FONT_DEFAULT_BIG);
- int name_width = getFontWidth(FONT(FS_BIG, FC_GREEN)) * strlen("Name:");
+ int font_width = getFontWidth(FONT_INPUT_ACTIVE);
+ int name_width = getFontWidth(FONT_MENU_1) * strlen("Name:");
int startx = SX + 32 + name_width;
int starty = SY + ypos * 32;
{
xpos = newxpos;
- DrawText(startx, starty, setup.player_name, FONT_DEFAULT_BIG);
- DrawText(startx + xpos * font_width, starty, "_", FONT_DEFAULT_BIG);
+ DrawText(startx, starty, setup.player_name, FONT_INPUT_ACTIVE);
+ DrawText(startx + xpos * font_width, starty, "_", FONT_INPUT_ACTIVE);
return;
}
setup.player_name[xpos + 1] = 0;
xpos++;
- DrawText(startx, starty, setup.player_name, FONT_DEFAULT_BIG);
- DrawText(startx + xpos * font_width, starty, "_", FONT_DEFAULT_BIG);
+ DrawText(startx, starty, setup.player_name, FONT_INPUT_ACTIVE);
+ DrawText(startx + xpos * font_width, starty, "_", FONT_INPUT_ACTIVE);
}
else if ((key == KSYM_Delete || key == KSYM_BackSpace) && xpos > 0)
{
xpos--;
setup.player_name[xpos] = 0;
- DrawText(startx + xpos * font_width, starty, "_ ", FONT_DEFAULT_BIG);
+ DrawText(startx + xpos * font_width, starty, "_ ", FONT_INPUT_ACTIVE);
}
else if (key == KSYM_Return && xpos > 0)
{
- DrawText(startx, starty, setup.player_name, FONT(FS_BIG, FC_RED));
- DrawText(startx + xpos * font_width, starty, " ", FONT_DEFAULT_BIG);
+ DrawText(startx, starty, setup.player_name, FONT_INPUT);
+ DrawText(startx + xpos * font_width, starty, " ", FONT_INPUT_ACTIVE);
SaveSetup();
game_status = MAINMENU;
int num_entries = numTreeInfoInGroup(ti);
char *title_string = NULL;
int offset = (ti->type == TREE_TYPE_LEVEL_DIR ? 0 : 16);
+ int last_game_status = game_status; /* save current game status */
DrawBackground(SX, SY, SXSIZE - 32, SYSIZE);
redraw_mask |= REDRAW_FIELD;
ti->type == TREE_TYPE_SOUNDS_DIR ? "Custom Sounds" :
ti->type == TREE_TYPE_MUSIC_DIR ? "Custom Music" : "");
- DrawText(SX + offset, SY + offset, title_string, FONT(FS_BIG,
- (ti->type == TREE_TYPE_LEVEL_DIR ? FC_GREEN : FC_YELLOW)));
+ DrawText(SX + offset, SY + offset, title_string, FONT_TITLE_1);
+
+ game_status = CHOOSELEVEL; /* force LEVELS font on artwork setup screen */
for(i=0; i<num_page_entries; i++)
{
strncpy(buffer, node->name , max_buffer_len);
buffer[max_buffer_len] = '\0';
- DrawText(SX + 32, SY + ypos * 32, buffer, FONT(FS_MEDIUM, node->color));
+ DrawText(SX + 32, SY + ypos * 32, buffer, FONT_TEXT_1 + node->color);
if (node->parent_link)
initCursor(i, IMG_MENU_BUTTON_LEFT);
DrawBackground(SX, SY + ypos * 32, TILEX, TILEY);
DrawGraphicThruMask(0, ypos, IMG_MENU_BUTTON_DOWN, 0);
}
+
+ game_status = last_game_status; /* restore current game status */
}
static void drawChooseTreeInfo(int entry_pos, TreeInfo *ti)
DrawBackground(SX + 32, SY + 32, SXSIZE - 64, 32);
if (node->parent_link)
- DrawTextFCentered(40, FONT(FS_SMALL, FC_RED), "leave group \"%s\"",
+ DrawTextFCentered(40, FONT_TITLE_2, "leave group \"%s\"",
node->class_desc);
else if (node->level_group)
- DrawTextFCentered(40, FONT(FS_SMALL, FC_RED), "enter group \"%s\"",
+ DrawTextFCentered(40, FONT_TITLE_2, "enter group \"%s\"",
node->class_desc);
else if (ti->type == TREE_TYPE_LEVEL_DIR)
- DrawTextFCentered(40, FONT(FS_SMALL, FC_RED), "%3d levels (%s)",
+ DrawTextFCentered(40, FONT_TITLE_2, "%3d levels (%s)",
node->levels, node->class_desc);
/* let BackToFront() redraw only what is needed */
SetMainBackgroundImage(IMG_BACKGROUND_SCORES);
ClearWindow();
- DrawText(SX + 80, SY + 8, "Hall Of Fame", FONT_DEFAULT_BIG);
- DrawTextFCentered(46, FONT(FS_SMALL, FC_RED), "HighScores of Level %d",
- level_nr);
+ DrawText(SX + 80, SY + 8, "Hall Of Fame", FONT_TITLE_1);
+ DrawTextFCentered(46, FONT_TITLE_2, "HighScores of Level %d", level_nr);
for(i=0; i<MAX_MENU_ENTRIES_ON_SCREEN; i++)
{
int entry = first_entry + i;
- int color = (entry == highlight_position ? FC_RED : FC_GREEN);
-#if 0
- DrawText(SX, SY + 64 + i * 32, ".................", FS_BIG, color);
- DrawText(SX, SY + 64 + i * 32, highscore[i].Name, FS_BIG, color);
- DrawText(SX + 12 * 32, SY + 64 + i * 32,
- int2str(highscore[i].Score, 5), FS_BIG, color);
-#else
DrawText(SX, SY + 64 + i * 32, "..................................",
- FONT(FS_MEDIUM, FC_YELLOW));
+ (entry == highlight_position ? FONT_TEXT_4 : FONT_TEXT_2));
DrawText(SX, SY + 64 + i * 32, int2str(entry + 1, 3),
- FONT(FS_MEDIUM, FC_YELLOW));
+ (entry == highlight_position ? FONT_TEXT_4 : FONT_TEXT_2));
DrawText(SX + 64, SY + 64 + i * 32, highscore[entry].Name,
- FONT(FS_BIG, color));
+ (entry == highlight_position ? FONT_TEXT_3 : FONT_TEXT_1));
DrawText(SX + 14 * 32 + 16, SY + 64 + i * 32,
int2str(highscore[entry].Score, 5),
- FONT(FS_MEDIUM, color));
-#endif
+ (entry == highlight_position ? FONT_TEXT_4 : FONT_TEXT_2));
}
}
{
int xpos = MENU_SCREEN_VALUE_XPOS;
int ypos = MENU_SCREEN_START_YPOS + pos;
- int font_size = FS_BIG;
- int font_color = FC_YELLOW;
+ int font_nr = FONT_VALUE_1;
char *value_string = getSetupValue(setup_info[pos].type & ~TYPE_GHOSTED,
setup_info[pos].value);
if (setup_info[pos].type & TYPE_QUERY)
{
value_string = "<press key>";
- font_color = FC_RED;
+ font_nr = FONT_INPUT_ACTIVE;
}
}
else if (setup_info[pos].type & TYPE_STRING)
int max_value_len = (SCR_FIELDX - 2) * 2;
xpos = 1;
- font_size = FS_MEDIUM;
+ font_nr = FONT_VALUE_2;
if (strlen(value_string) > max_value_len)
value_string[max_value_len] = '\0';
}
else if (setup_info[pos].type & TYPE_BOOLEAN_STYLE &&
!*(boolean *)(setup_info[pos].value))
- font_color = FC_BLUE;
+ font_nr = FONT_OPTION_OFF;
DrawText(SX + xpos * 32, SY + ypos * 32,
- (xpos == 3 ? " " : " "), FONT_DEFAULT_BIG);
- DrawText(SX + xpos * 32, SY + ypos * 32, value_string,
- FONT(font_size, font_color));
+ (xpos == 3 ? " " : " "), font_nr);
+ DrawText(SX + xpos * 32, SY + ypos * 32, value_string, font_nr);
}
static void changeSetupValue(int pos)
title_string = "Setup Shortcuts";
}
- DrawText(SX + 16, SY + 16, title_string, FONT_DEFAULT_BIG);
+ DrawText(SX + 16, SY + 16, title_string, FONT_TITLE_1);
num_setup_info = 0;
for(i=0; setup_info[i].type != 0 && i < MAX_MENU_ENTRIES_ON_SCREEN; i++)
{
void *value_ptr = setup_info[i].value;
int ypos = MENU_SCREEN_START_YPOS + i;
- int font_size = FS_BIG;
+ int font_nr = FONT_MENU_1;
/* set some entries to "unchangeable" according to other variables */
if ((value_ptr == &setup.sound && !audio.sound_available) ||
setup_info[i].type |= TYPE_GHOSTED;
if (setup_info[i].type & TYPE_STRING)
- font_size = FS_MEDIUM;
+ font_nr = FONT_MENU_2;
- DrawText(SX + 32, SY + ypos * 32, setup_info[i].text,
- FONT(font_size, FC_GREEN));
+ DrawText(SX + 32, SY + ypos * 32, setup_info[i].text, font_nr);
if (setup_info[i].type & TYPE_ENTER_MENU)
initCursor(i, IMG_MENU_BUTTON_RIGHT);
{
ClearWindow();
- DrawText(SX+16, SY+16, "Setup Input", FONT_DEFAULT_BIG);
+ DrawText(SX+16, SY+16, "Setup Input", FONT_TITLE_1);
initCursor(0, IMG_MENU_BUTTON);
initCursor(1, IMG_MENU_BUTTON);
drawCursorXY(10, 0, IMG_MENU_BUTTON_LEFT);
drawCursorXY(12, 0, IMG_MENU_BUTTON_RIGHT);
- DrawText(SX+32, SY+2*32, "Player:", FONT(FS_BIG, FC_GREEN));
- DrawText(SX+32, SY+3*32, "Device:", FONT(FS_BIG, FC_GREEN));
- DrawText(SX+32, SY+15*32, "Back", FONT(FS_BIG, FC_GREEN));
+ DrawText(SX+32, SY+2*32, "Player:", FONT_MENU_1);
+ DrawText(SX+32, SY+3*32, "Device:", FONT_MENU_1);
+ DrawText(SX+32, SY+15*32, "Back", FONT_MENU_1);
#if 0
DeactivateJoystickForCalibration();
- DrawTextFCentered(SYSIZE - 20, FONT(FS_SMALL, FC_BLUE),
+ DrawTextFCentered(SYSIZE - 20, FONT_TEXT_4,
"Joysticks deactivated on this screen");
#endif
custom_key = setup.input[player_nr].key;
- DrawText(SX+11*32, SY+2*32, int2str(player_nr + 1, 1), FONT(FS_BIG, FC_RED));
+ DrawText(SX+11*32, SY+2*32, int2str(player_nr + 1, 1), FONT_INPUT_ACTIVE);
DrawGraphicThruMask(8, 2, PLAYER_NR_GFX(IMG_PLAYER1, player_nr), 0);
if (setup.input[player_nr].use_joystick)
DrawText(SX+8*32, SY+3*32,
joystick_name[getJoystickNrFromDeviceName(device_name)],
- FONT_DEFAULT_BIG);
- DrawText(SX+32, SY+4*32, "Calibrate", FONT(FS_BIG, FC_GREEN));
+ FONT_VALUE_1);
+ DrawText(SX+32, SY+4*32, "Calibrate", FONT_MENU_1);
}
else
{
- DrawText(SX+8*32, SY+3*32, "Keyboard ", FONT(FS_BIG, FC_YELLOW));
- DrawText(SX+32, SY+4*32, "Customize", FONT(FS_BIG, FC_GREEN));
+ DrawText(SX+8*32, SY+3*32, "Keyboard ", FONT_VALUE_1);
+ DrawText(SX+32, SY+4*32, "Customize", FONT_MENU_1);
}
- DrawText(SX+32, SY+5*32, "Actual Settings:", FONT(FS_BIG, FC_GREEN));
+ DrawText(SX+32, SY+5*32, "Actual Settings:", FONT_MENU_1);
drawCursorXY(1, 4, IMG_MENU_BUTTON_LEFT);
drawCursorXY(1, 5, IMG_MENU_BUTTON_RIGHT);
drawCursorXY(1, 6, IMG_MENU_BUTTON_UP);
drawCursorXY(1, 7, IMG_MENU_BUTTON_DOWN);
- DrawText(SX+2*32, SY+6*32, ":", FONT(FS_BIG, FC_BLUE));
- DrawText(SX+2*32, SY+7*32, ":", FONT(FS_BIG, FC_BLUE));
- DrawText(SX+2*32, SY+8*32, ":", FONT(FS_BIG, FC_BLUE));
- DrawText(SX+2*32, SY+9*32, ":", FONT(FS_BIG, FC_BLUE));
- DrawText(SX+32, SY+10*32, "Snap Field:", FONT(FS_BIG, FC_BLUE));
- DrawText(SX+32, SY+12*32, "Place Bomb:", FONT(FS_BIG, FC_BLUE));
+ DrawText(SX+2*32, SY+6*32, ":", FONT_VALUE_OLD);
+ DrawText(SX+2*32, SY+7*32, ":", FONT_VALUE_OLD);
+ DrawText(SX+2*32, SY+8*32, ":", FONT_VALUE_OLD);
+ DrawText(SX+2*32, SY+9*32, ":", FONT_VALUE_OLD);
+ DrawText(SX+32, SY+10*32, "Snap Field:", FONT_VALUE_OLD);
+ DrawText(SX+32, SY+12*32, "Place Bomb:", FONT_VALUE_OLD);
for (i=0; i<6; i++)
{
int ypos = 6 + i + (i > 3 ? i-3 : 0);
DrawText(SX + 3*32, SY + ypos*32,
- " ", FONT_DEFAULT_BIG);
+ " ", FONT_VALUE_1);
DrawText(SX + 3*32, SY + ypos*32,
(setup.input[player_nr].use_joystick ?
custom[i].text :
- getKeyNameFromKey(*custom[i].key)), FONT_DEFAULT_BIG);
+ getKeyNameFromKey(*custom[i].key)), FONT_VALUE_1);
}
}
custom_key = setup.input[player_nr].key;
ClearWindow();
- DrawText(SX + 16, SY + 16, "Keyboard Input", FONT_DEFAULT_BIG);
+ DrawText(SX + 16, SY + 16, "Keyboard Input", FONT_TITLE_1);
BackToFront();
InitAnimation();
step_nr = 0;
DrawText(SX, SY + (2+2*step_nr)*32,
- customize_step[step_nr].text,
- FONT(FS_BIG, FC_RED));
+ customize_step[step_nr].text, FONT_INPUT_ACTIVE);
DrawText(SX, SY + (2+2*step_nr+1)*32,
- "Key:", FONT(FS_BIG, FC_RED));
+ "Key:", FONT_INPUT_ACTIVE);
DrawText(SX + 4*32, SY + (2+2*step_nr+1)*32,
- getKeyNameFromKey(*customize_step[step_nr].key),
- FONT(FS_BIG, FC_BLUE));
+ getKeyNameFromKey(*customize_step[step_nr].key), FONT_VALUE_OLD);
while(!finished)
{
/* got new key binding */
*customize_step[step_nr].key = key;
DrawText(SX + 4*32, SY + (2+2*step_nr+1)*32,
- " ", FONT_DEFAULT_BIG);
+ " ", FONT_VALUE_1);
DrawText(SX + 4*32, SY + (2+2*step_nr+1)*32,
- getKeyNameFromKey(key), FONT_DEFAULT_BIG);
+ getKeyNameFromKey(key), FONT_VALUE_1);
step_nr++;
/* un-highlight last query */
DrawText(SX, SY+(2+2*(step_nr-1))*32,
- customize_step[step_nr-1].text, FONT(FS_BIG, FC_GREEN));
+ customize_step[step_nr-1].text, FONT_MENU_1);
DrawText(SX, SY+(2+2*(step_nr-1)+1)*32,
- "Key:", FONT(FS_BIG, FC_GREEN));
+ "Key:", FONT_MENU_1);
/* press 'Enter' to leave */
if (step_nr == 6)
{
DrawText(SX + 16, SY + 15*32+16,
- "Press Enter", FONT_DEFAULT_BIG);
+ "Press Enter", FONT_TITLE_1);
break;
}
/* query next key binding */
DrawText(SX, SY+(2+2*step_nr)*32,
- customize_step[step_nr].text, FONT(FS_BIG, FC_RED));
+ customize_step[step_nr].text, FONT_INPUT_ACTIVE);
DrawText(SX, SY+(2+2*step_nr+1)*32,
- "Key:", FONT(FS_BIG, FC_RED));
+ "Key:", FONT_INPUT_ACTIVE);
DrawText(SX + 4*32, SY+(2+2*step_nr+1)*32,
getKeyNameFromKey(*customize_step[step_nr].key),
- FONT(FS_BIG, FC_BLUE));
+ FONT_VALUE_OLD);
}
break;
}
}
- DrawText(SX, SY + 6 * 32, " ROTATE JOYSTICK ", FONT(FS_BIG,FC_YELLOW));
- DrawText(SX, SY + 7 * 32, "IN ALL DIRECTIONS", FONT(FS_BIG,FC_YELLOW));
- DrawText(SX + 16, SY + 9 * 32, " IF ALL BALLS ", FONT(FS_BIG,FC_YELLOW));
- DrawText(SX, SY + 10 * 32, " ARE YELLOW, ", FONT(FS_BIG,FC_YELLOW));
- DrawText(SX, SY + 11 * 32, " CENTER JOYSTICK ", FONT(FS_BIG,FC_YELLOW));
- DrawText(SX, SY + 12 * 32, " AND ", FONT(FS_BIG,FC_YELLOW));
- DrawText(SX, SY + 13 * 32, "PRESS ANY BUTTON!", FONT(FS_BIG,FC_YELLOW));
+ DrawText(SX, SY + 6 * 32, " ROTATE JOYSTICK ", FONT_TITLE_1);
+ DrawText(SX, SY + 7 * 32, "IN ALL DIRECTIONS", FONT_TITLE_1);
+ DrawText(SX + 16, SY + 9 * 32, " IF ALL BALLS ", FONT_TITLE_1);
+ DrawText(SX, SY + 10 * 32, " ARE YELLOW, ", FONT_TITLE_1);
+ DrawText(SX, SY + 11 * 32, " CENTER JOYSTICK ", FONT_TITLE_1);
+ DrawText(SX, SY + 12 * 32, " AND ", FONT_TITLE_1);
+ DrawText(SX, SY + 13 * 32, "PRESS ANY BUTTON!", FONT_TITLE_1);
joy_value = Joystick(player_nr);
last_x = (joy_value & JOY_LEFT ? -1 : joy_value & JOY_RIGHT ? +1 : 0);
{
ClearWindow();
- DrawText(SX + 16, SY + 6*32, " JOYSTICK NOT ", FONT(FS_BIG,FC_YELLOW));
- DrawText(SX, SY + 7*32, " AVAILABLE ", FONT(FS_BIG,FC_YELLOW));
+ DrawText(SX + 16, SY + 6*32, " JOYSTICK NOT ", FONT_TITLE_1);
+ DrawText(SX, SY + 7*32, " AVAILABLE ", FONT_TITLE_1);
BackToFront();
Delay(2000); /* show error message for two seconds */
}
#if defined(TARGET_X11_NATIVE_PERFORMANCE_WORKAROUND)
&scrollbar_bitmap[0], &scrollbar_bitmap[1],
#else
- IMG_MENU_SCROLLBAR, IMG_SCROLLBAR_RED,
+ IMG_MENU_SCROLLBAR, IMG_MENU_SCROLLBAR_ACTIVE,
#endif
SX + SC_SCROLL_VERTICAL_XPOS, SY + SC_SCROLL_VERTICAL_YPOS,
SC_SCROLL_VERTICAL_XSIZE, SC_SCROLL_VERTICAL_YSIZE,
int jahr = (value/10000);
DrawText(VX + VIDEO_DATE_XPOS, VY + VIDEO_DATE_YPOS,
- int2str(tag, 2), FONT_SPECIAL_TAPE);
+ int2str(tag, 2), FONT_TAPE_RECORDER);
DrawText(VX + VIDEO_DATE_XPOS + 27, VY + VIDEO_DATE_YPOS,
- monatsname[monat], FONT_SPECIAL_TAPE);
+ monatsname[monat], FONT_TAPE_RECORDER);
DrawText(VX + VIDEO_DATE_XPOS + 64, VY + VIDEO_DATE_YPOS,
- int2str(jahr, 2), FONT_SPECIAL_TAPE);
+ int2str(jahr, 2), FONT_TAPE_RECORDER);
}
if (state & VIDEO_STATE_TIME_ON)
int sec = value % 60;
DrawText(VX + VIDEO_TIME_XPOS, VY + VIDEO_TIME_YPOS,
- int2str(min, 2), FONT_SPECIAL_TAPE);
+ int2str(min, 2), FONT_TAPE_RECORDER);
DrawText(VX + VIDEO_TIME_XPOS + 27, VY + VIDEO_TIME_YPOS,
- int2str(sec, 2), FONT_SPECIAL_TAPE);
+ int2str(sec, 2), FONT_TAPE_RECORDER);
}
if (state & VIDEO_STATE_DATE)
VX+VIDEO_CONTROL_XPOS,VY+VIDEO_CONTROL_YPOS);
}
}
+
if (redraw_mask & REDRAW_DOOR_3)
BlitBitmap(backbuffer, window, EX, EY, EXSIZE, EYSIZE, EX, EY);
+
redraw_mask &= ~REDRAW_DOORS;
}
if (redraw_mask & REDRAW_MICROLEVEL)
{
- BlitBitmap(backbuffer, window,
- MICROLEV_XPOS, MICROLEV_YPOS, MICROLEV_XSIZE, MICROLEV_YSIZE,
- MICROLEV_XPOS, MICROLEV_YPOS);
- BlitBitmap(backbuffer, window,
- SX, MICROLABEL_YPOS, SXSIZE, getFontHeight(FONT_SPECIAL_GAME),
- SX, MICROLABEL_YPOS);
+ BlitBitmap(backbuffer, window, SX, SY + 10 * TILEY, SXSIZE, 7 * TILEY,
+ SX, SY + 10 * TILEY);
+
redraw_mask &= ~REDRAW_MICROLEVEL;
}
info1[0] = '\0';
sprintf(text, "%.1f fps%s", global.frames_per_second, info1);
- DrawTextExt(window, SX, SY, text, FONT_DEFAULT_SMALL, FONT_OPAQUE);
+ DrawTextExt(window, SX, SY, text, FONT_TEXT_2, FONT_OPAQUE);
}
FlushDisplay();
static void DrawMicroLevelLabelExt(int mode)
{
char label_text[MAX_OUTPUT_LINESIZE + 1];
- int max_len_label_text = SXSIZE / getFontWidth(FONT_SPECIAL_GAME);
+ int max_len_label_text;
+ int font_nr = FONT_TEXT_2;
+
+ if (mode == MICROLABEL_CREATED_BY || mode == MICROLABEL_IMPORTED_FROM)
+ font_nr = FONT_TEXT_3;
- DrawBackground(SX, MICROLABEL_YPOS, SXSIZE,getFontHeight(FONT_SPECIAL_GAME));
+ max_len_label_text = SXSIZE / getFontWidth(font_nr);
+
+ DrawBackground(SX, MICROLABEL_YPOS, SXSIZE, getFontHeight(font_nr));
strncpy(label_text, (mode == MICROLABEL_LEVEL_NAME ? level.name :
mode == MICROLABEL_CREATED_BY ? "created by" :
if (strlen(label_text) > 0)
{
- int text_width = strlen(label_text) * getFontWidth(FONT_SPECIAL_GAME);
+ int text_width = strlen(label_text) * getFontWidth(font_nr);
int lxpos = SX + (SXSIZE - text_width) / 2;
int lypos = MICROLABEL_YPOS;
- DrawText(lxpos, lypos, label_text, FONT_SPECIAL_GAME);
+ DrawText(lxpos, lypos, label_text, font_nr);
}
redraw_mask |= REDRAW_MICROLEVEL;
static unsigned long label_delay = 0;
static int from_x, from_y, scroll_direction;
static int label_state, label_counter;
+ int last_game_status = game_status; /* save current game status */
+
+ game_status = PSEUDO_PREVIEW; /* force PREVIEW font on preview level */
if (restart)
{
DelayReached(&scroll_delay, 0);
DelayReached(&label_delay, 0);
+ if (leveldir_current->name)
+ {
+ int len = strlen(leveldir_current->name);
+ int lxpos = SX + (SXSIZE - len * getFontWidth(FONT_TEXT_1)) / 2;
+ int lypos = SY + 352;
+
+ DrawText(lxpos, lypos, leveldir_current->name, FONT_TEXT_1);
+ }
+
+ game_status = last_game_status; /* restore current game status */
+
return;
}
MICROLABEL_LEVEL_IMPORT_INFO : MICROLABEL_EMPTY);
DrawMicroLevelLabelExt(label_state);
}
+
+ game_status = last_game_status; /* restore current game status */
}
int REQ_in_range(int x, int y)
{
int mx, my, ty, result = -1;
unsigned int old_door_state;
+ int last_game_status = game_status; /* save current game status */
#if defined(PLATFORM_UNIX)
/* pause network game while waiting for request to answer */
/* clear door drawing field */
DrawBackground(DX, DY, DXSIZE, DYSIZE);
+ game_status = PSEUDO_DOOR; /* force DOOR font on preview level */
+
/* write text for request */
for(ty=0; ty < MAX_REQUEST_LINES; ty++)
{
strncpy(text_line, text, tl);
text_line[tl] = 0;
- DrawText(DX + 50 - (tl * 14)/2, DY + 8 + ty * 16,
- text_line, FONT_DEFAULT_SMALL);
+ DrawText(DX + (DXSIZE - tl * getFontWidth(FONT_TEXT_2)) / 2,
+ DY + 8 + ty * (getFontHeight(FONT_TEXT_2) + 2),
+ text_line, FONT_TEXT_2);
text += tl + (tc == ' ' ? 1 : 0);
}
+ game_status = last_game_status; /* restore current game status */
+
if (req_state & REQ_ASK)
{
MapGadget(tool_gadget[TOOL_CTRL_ID_YES]);