diff --git a/src/openrct2/interface/Fonts.cpp b/src/openrct2/interface/Fonts.cpp index 14e01d1877..d83f1de5c4 100644 --- a/src/openrct2/interface/Fonts.cpp +++ b/src/openrct2/interface/Fonts.cpp @@ -25,70 +25,42 @@ #include "../localisation/language.h" #ifndef NO_TTF -static TTFFontSetDescriptor TTFFontMSGothic = { { +TTFFontSetDescriptor TTFFontMSGothic = { { { "msgothic.ttc", "MS PGothic", 9, 1, 0, 15, nullptr }, { "msgothic.ttc", "MS PGothic", 12, 1, 0, 17, nullptr }, { "msgothic.ttc", "MS PGothic", 12, 1, 0, 17, nullptr }, { "msgothic.ttc", "MS PGothic", 13, 1, 0, 20, nullptr }, } }; -static TTFFontSetDescriptor TTFFontMingLiu = { { +TTFFontSetDescriptor TTFFontMingLiu = { { { "msjh.ttc", "JhengHei", 9, -1, -3, 6, nullptr }, { "mingliu.ttc", "MingLiU", 11, 1, 1, 12, nullptr }, { "mingliu.ttc", "MingLiU", 12, 1, 0, 12, nullptr }, { "mingliu.ttc", "MingLiU", 13, 1, 0, 20, nullptr }, } }; -static TTFFontSetDescriptor TTFFontSimSun = { { +TTFFontSetDescriptor TTFFontSimSun = { { { "msyh.ttc", "YaHei", 9, -1, -3, 6, nullptr }, { "simsun.ttc", "SimSun", 11, 1, -1, 14, nullptr }, { "simsun.ttc", "SimSun", 12, 1, -2, 14, nullptr }, { "simsun.ttc", "SimSun", 13, 1, 0, 20, nullptr }, } }; -static TTFFontSetDescriptor TTFFontGulim = { { +TTFFontSetDescriptor TTFFontGulim = { { { "gulim.ttc", "Gulim", 11, 1, 0, 15, nullptr }, { "gulim.ttc", "Gulim", 12, 1, 0, 17, nullptr }, { "gulim.ttc", "Gulim", 12, 1, 0, 17, nullptr }, { "gulim.ttc", "Gulim", 13, 1, 0, 20, nullptr }, } }; -static TTFFontSetDescriptor TTFFontArial = { { +TTFFontSetDescriptor TTFFontArial = { { { "arial.ttf", "Arial", 8, 0, -1, 6, nullptr }, { "arial.ttf", "Arial", 10, 0, -1, 12, nullptr }, { "arial.ttf", "Arial", 11, 0, -1, 12, nullptr }, { "arial.ttf", "Arial", 12, 0, -1, 20, nullptr }, } }; -#define FONT(x) x -#else -#define FONT(x) FONT_OPENRCT2_SPRITE #endif // NO_TTF -const language_descriptor LanguagesDescriptors[LANGUAGE_COUNT] = { - { "", "", "", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_UNDEFINED - { "en-GB", "English (UK)", "English (UK)", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_ENGLISH_UK - { "en-US", "English (US)", "English (US)", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_US }, // LANGUAGE_ENGLISH_US - { "de-DE", "German", "Deutsch", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_GERMAN }, // LANGUAGE_GERMAN - { "nl-NL", "Dutch", "Nederlands", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_DUTCH }, // LANGUAGE_DUTCH - { "fr-FR", "French", u8"Français", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_FRENCH }, // LANGUAGE_FRENCH - { "hu-HU", "Hungarian", "Magyar", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_HUNGARIAN - { "pl-PL", "Polish", "Polski", FONT(&TTFFontArial), RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_POLISH - { "es-ES", "Spanish", u8"Español", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_SPANISH }, // LANGUAGE_SPANISH - { "sv-SE", "Swedish", "Svenska", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_SWEDISH }, // LANGUAGE_SWEDISH - { "it-IT", "Italian", "Italiano", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ITALIAN }, // LANGUAGE_ITALIAN - { "pt-BR", "Portuguese (BR)", u8"Português (BR)", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_PORTUGUESE }, // LANGUAGE_PORTUGUESE_BR - { "zh-TW", "Chinese (Traditional)", "Chinese (Traditional)", FONT(&TTFFontMingLiu), RCT2_LANGUAGE_ID_CHINESE_TRADITIONAL }, // LANGUAGE_CHINESE_TRADITIONAL - { "zh-CN", "Chinese (Simplified)", "Chinese (Simplified)", FONT(&TTFFontSimSun), RCT2_LANGUAGE_ID_CHINESE_SIMPLIFIED }, // LANGUAGE_CHINESE_SIMPLIFIED - { "fi-FI", "Finnish", "Suomi", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_FINNISH - { "ko-KR", "Korean", "Korean", FONT(&TTFFontGulim), RCT2_LANGUAGE_ID_KOREAN }, // LANGUAGE_KOREAN - { "ru-RU", "Russian", "Russian", FONT(&TTFFontArial), RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_RUSSIAN - { "cs-CZ", "Czech", "Czech", FONT(&TTFFontArial), RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_CZECH - { "ja-JP", "Japanese", "Japanese", FONT(&TTFFontMSGothic), RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_JAPANESE - { "nb-NO", "Norwegian", "Norsk", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_NORWEGIAN - { "ca-ES", "Catalan", u8"Català", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_SPANISH }, // LANGUAGE_CATALAN - { "ar-EG", "Arabic (experimental)", "Arabic (experimental)", FONT(&TTFFontArial), RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_ARABIC -}; - static void LoadSpriteFont() { ttf_dispose(); diff --git a/src/openrct2/interface/Fonts.h b/src/openrct2/interface/Fonts.h index f40d83f2ba..56f82f6790 100644 --- a/src/openrct2/interface/Fonts.h +++ b/src/openrct2/interface/Fonts.h @@ -19,6 +19,17 @@ #include "../drawing/font.h" +#ifndef NO_TTF +extern TTFFontSetDescriptor TTFFontMSGothic; +extern TTFFontSetDescriptor TTFFontMingLiu; +extern TTFFontSetDescriptor TTFFontSimSun; +extern TTFFontSetDescriptor TTFFontGulim; +extern TTFFontSetDescriptor TTFFontArial; +#define FONT(x) x +#else +#define FONT(x) FONT_OPENRCT2_SPRITE +#endif // NO_TTF + void TryLoadFonts(); #endif // OPENRCT2_FONTS_H diff --git a/src/openrct2/localisation/Language.cpp b/src/openrct2/localisation/Language.cpp index 4cc29f0077..83f7ea4e12 100644 --- a/src/openrct2/localisation/Language.cpp +++ b/src/openrct2/localisation/Language.cpp @@ -27,6 +27,31 @@ #include "../platform/platform.h" #include "localisation.h" +const language_descriptor LanguagesDescriptors[LANGUAGE_COUNT] = { + { "", "", "", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_UNDEFINED + { "ar-EG", "Arabic (experimental)", "Arabic (experimental)", FONT(&TTFFontArial), RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_ARABIC + { "ca-ES", "Catalan", u8"Català", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_SPANISH }, // LANGUAGE_CATALAN + { "zh-CN", "Chinese (Simplified)", "Chinese (Simplified)", FONT(&TTFFontSimSun), RCT2_LANGUAGE_ID_CHINESE_SIMPLIFIED }, // LANGUAGE_CHINESE_SIMPLIFIED + { "zh-TW", "Chinese (Traditional)", "Chinese (Traditional)", FONT(&TTFFontMingLiu), RCT2_LANGUAGE_ID_CHINESE_TRADITIONAL }, // LANGUAGE_CHINESE_TRADITIONAL + { "cs-CZ", "Czech", "Czech", FONT(&TTFFontArial), RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_CZECH + { "de-DE", "German", "Deutsch", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_GERMAN }, // LANGUAGE_GERMAN + { "en-GB", "English (UK)", "English (UK)", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_ENGLISH_UK + { "en-US", "English (US)", "English (US)", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_US }, // LANGUAGE_ENGLISH_US + { "es-ES", "Spanish", u8"Español", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_SPANISH }, // LANGUAGE_SPANISH + { "fr-FR", "French", u8"Français", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_FRENCH }, // LANGUAGE_FRENCH + { "it-IT", "Italian", "Italiano", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ITALIAN }, // LANGUAGE_ITALIAN + { "ja-JP", "Japanese", "Japanese", FONT(&TTFFontMSGothic), RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_JAPANESE + { "ko-KR", "Korean", "Korean", FONT(&TTFFontGulim), RCT2_LANGUAGE_ID_KOREAN }, // LANGUAGE_KOREAN + { "hu-HU", "Hungarian", "Magyar", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_HUNGARIAN + { "nl-NL", "Dutch", "Nederlands", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_DUTCH }, // LANGUAGE_DUTCH + { "nb-NO", "Norwegian", "Norsk", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_NORWEGIAN + { "pl-PL", "Polish", "Polski", FONT(&TTFFontArial), RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_POLISH + { "pt-BR", "Portuguese (BR)", u8"Português (BR)", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_PORTUGUESE }, // LANGUAGE_PORTUGUESE_BR + { "ru-RU", "Russian", "Russian", FONT(&TTFFontArial), RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_RUSSIAN + { "fi-FI", "Finnish", "Suomi", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_FINNISH + { "sv-SE", "Swedish", "Svenska", FONT_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_SWEDISH }, // LANGUAGE_SWEDISH +}; + extern "C" { sint32 gCurrentLanguage = LANGUAGE_UNDEFINED; diff --git a/src/openrct2/localisation/language.h b/src/openrct2/localisation/language.h index 3004a0d132..523ffae8a4 100644 --- a/src/openrct2/localisation/language.h +++ b/src/openrct2/localisation/language.h @@ -22,27 +22,27 @@ enum { LANGUAGE_UNDEFINED, + LANGUAGE_ARABIC, + LANGUAGE_CATALAN, + LANGUAGE_CHINESE_SIMPLIFIED, + LANGUAGE_CHINESE_TRADITIONAL, + LANGUAGE_CZECH, + LANGUAGE_GERMAN, LANGUAGE_ENGLISH_UK, LANGUAGE_ENGLISH_US, - LANGUAGE_GERMAN, - LANGUAGE_DUTCH, - LANGUAGE_FRENCH, - LANGUAGE_HUNGARIAN, - LANGUAGE_POLISH, LANGUAGE_SPANISH, - LANGUAGE_SWEDISH, + LANGUAGE_FRENCH, LANGUAGE_ITALIAN, - LANGUAGE_PORTUGUESE_BR, - LANGUAGE_CHINESE_TRADITIONAL, - LANGUAGE_CHINESE_SIMPLIFIED, - LANGUAGE_FINNISH, - LANGUAGE_KOREAN, - LANGUAGE_RUSSIAN, - LANGUAGE_CZECH, LANGUAGE_JAPANESE, + LANGUAGE_KOREAN, + LANGUAGE_HUNGARIAN, + LANGUAGE_DUTCH, LANGUAGE_NORWEGIAN, - LANGUAGE_CATALAN, - LANGUAGE_ARABIC, + LANGUAGE_POLISH, + LANGUAGE_PORTUGUESE_BR, + LANGUAGE_RUSSIAN, + LANGUAGE_FINNISH, + LANGUAGE_SWEDISH, LANGUAGE_COUNT };