diff --git a/distribution/changelog.txt b/distribution/changelog.txt index e692bef16e..5b18c26b12 100644 --- a/distribution/changelog.txt +++ b/distribution/changelog.txt @@ -2,6 +2,7 @@ ------------------------------------------------------------------------ - Feature: [#7296] Allow assigning a keyboard shortcut for the scenery picker. - Feature: [#8919] Allow setting ride price from console. +- Feature: [#8963] Add missing Czech letters to sprite font, use sprite font for Czech. - Change: [#8688] Move common actions from debug menu into cheats menu. - Fix: [#5579] Network desync immediately after connecting. - Fix: [#6006] Objects higher than 6 metres are considered trees (original bug). diff --git a/resources/g2/font/latin/n-caron-bold.png b/resources/g2/font/latin/n-caron-bold.png new file mode 100644 index 0000000000..438634bc25 Binary files /dev/null and b/resources/g2/font/latin/n-caron-bold.png differ diff --git a/resources/g2/font/latin/n-caron-small.png b/resources/g2/font/latin/n-caron-small.png new file mode 100644 index 0000000000..97630bad3d Binary files /dev/null and b/resources/g2/font/latin/n-caron-small.png differ diff --git a/resources/g2/font/latin/n-caron-tiny.png b/resources/g2/font/latin/n-caron-tiny.png new file mode 100644 index 0000000000..6d96a8774a Binary files /dev/null and b/resources/g2/font/latin/n-caron-tiny.png differ diff --git a/resources/g2/font/latin/n-caron-uc-bold.png b/resources/g2/font/latin/n-caron-uc-bold.png new file mode 100644 index 0000000000..ae2f8b5976 Binary files /dev/null and b/resources/g2/font/latin/n-caron-uc-bold.png differ diff --git a/resources/g2/font/latin/n-caron-uc-small.png b/resources/g2/font/latin/n-caron-uc-small.png new file mode 100644 index 0000000000..02a8059422 Binary files /dev/null and b/resources/g2/font/latin/n-caron-uc-small.png differ diff --git a/resources/g2/font/latin/n-caron-uc-tiny.png b/resources/g2/font/latin/n-caron-uc-tiny.png new file mode 100644 index 0000000000..5d61b21ac3 Binary files /dev/null and b/resources/g2/font/latin/n-caron-uc-tiny.png differ diff --git a/resources/g2/font/latin/r-caron-bold.png b/resources/g2/font/latin/r-caron-bold.png new file mode 100644 index 0000000000..65dbf1c4f8 Binary files /dev/null and b/resources/g2/font/latin/r-caron-bold.png differ diff --git a/resources/g2/font/latin/r-caron-small.png b/resources/g2/font/latin/r-caron-small.png new file mode 100644 index 0000000000..4877c59bac Binary files /dev/null and b/resources/g2/font/latin/r-caron-small.png differ diff --git a/resources/g2/font/latin/r-caron-tiny.png b/resources/g2/font/latin/r-caron-tiny.png new file mode 100644 index 0000000000..624312b791 Binary files /dev/null and b/resources/g2/font/latin/r-caron-tiny.png differ diff --git a/resources/g2/font/latin/r-caron-uc-bold.png b/resources/g2/font/latin/r-caron-uc-bold.png new file mode 100644 index 0000000000..c802499ed5 Binary files /dev/null and b/resources/g2/font/latin/r-caron-uc-bold.png differ diff --git a/resources/g2/font/latin/r-caron-uc-small.png b/resources/g2/font/latin/r-caron-uc-small.png new file mode 100644 index 0000000000..8bec8f344e Binary files /dev/null and b/resources/g2/font/latin/r-caron-uc-small.png differ diff --git a/resources/g2/font/latin/r-caron-uc-tiny.png b/resources/g2/font/latin/r-caron-uc-tiny.png new file mode 100644 index 0000000000..48c6632cf4 Binary files /dev/null and b/resources/g2/font/latin/r-caron-uc-tiny.png differ diff --git a/resources/g2/font/latin/s-caron-bold.png b/resources/g2/font/latin/s-caron-bold.png new file mode 100644 index 0000000000..14600a8dce Binary files /dev/null and b/resources/g2/font/latin/s-caron-bold.png differ diff --git a/resources/g2/font/latin/s-caron-small.png b/resources/g2/font/latin/s-caron-small.png new file mode 100644 index 0000000000..073d4d9c0f Binary files /dev/null and b/resources/g2/font/latin/s-caron-small.png differ diff --git a/resources/g2/font/latin/s-caron-tiny.png b/resources/g2/font/latin/s-caron-tiny.png new file mode 100644 index 0000000000..b6b358aeac Binary files /dev/null and b/resources/g2/font/latin/s-caron-tiny.png differ diff --git a/resources/g2/font/latin/s-caron-uc-bold.png b/resources/g2/font/latin/s-caron-uc-bold.png new file mode 100644 index 0000000000..e46b2b1bb2 Binary files /dev/null and b/resources/g2/font/latin/s-caron-uc-bold.png differ diff --git a/resources/g2/font/latin/s-caron-uc-small.png b/resources/g2/font/latin/s-caron-uc-small.png new file mode 100644 index 0000000000..aef1fb5e4d Binary files /dev/null and b/resources/g2/font/latin/s-caron-uc-small.png differ diff --git a/resources/g2/font/latin/s-caron-uc-tiny.png b/resources/g2/font/latin/s-caron-uc-tiny.png new file mode 100644 index 0000000000..51442f2b5e Binary files /dev/null and b/resources/g2/font/latin/s-caron-uc-tiny.png differ diff --git a/resources/g2/font/latin/t-caron-bold.png b/resources/g2/font/latin/t-caron-bold.png new file mode 100644 index 0000000000..ec6823604c Binary files /dev/null and b/resources/g2/font/latin/t-caron-bold.png differ diff --git a/resources/g2/font/latin/t-caron-small.png b/resources/g2/font/latin/t-caron-small.png new file mode 100644 index 0000000000..bbfd511a12 Binary files /dev/null and b/resources/g2/font/latin/t-caron-small.png differ diff --git a/resources/g2/font/latin/t-caron-tiny.png b/resources/g2/font/latin/t-caron-tiny.png new file mode 100644 index 0000000000..10ce135736 Binary files /dev/null and b/resources/g2/font/latin/t-caron-tiny.png differ diff --git a/resources/g2/font/latin/t-caron-uc-bold.png b/resources/g2/font/latin/t-caron-uc-bold.png new file mode 100644 index 0000000000..8ffebc1330 Binary files /dev/null and b/resources/g2/font/latin/t-caron-uc-bold.png differ diff --git a/resources/g2/font/latin/t-caron-uc-small.png b/resources/g2/font/latin/t-caron-uc-small.png new file mode 100644 index 0000000000..a2b3efa157 Binary files /dev/null and b/resources/g2/font/latin/t-caron-uc-small.png differ diff --git a/resources/g2/font/latin/t-caron-uc-tiny.png b/resources/g2/font/latin/t-caron-uc-tiny.png new file mode 100644 index 0000000000..9b3a021950 Binary files /dev/null and b/resources/g2/font/latin/t-caron-uc-tiny.png differ diff --git a/resources/g2/font/latin/u-ring-bold.png b/resources/g2/font/latin/u-ring-bold.png new file mode 100644 index 0000000000..d818014dcf Binary files /dev/null and b/resources/g2/font/latin/u-ring-bold.png differ diff --git a/resources/g2/font/latin/u-ring-small.png b/resources/g2/font/latin/u-ring-small.png new file mode 100644 index 0000000000..3f3afb4658 Binary files /dev/null and b/resources/g2/font/latin/u-ring-small.png differ diff --git a/resources/g2/font/latin/u-ring-tiny.png b/resources/g2/font/latin/u-ring-tiny.png new file mode 100644 index 0000000000..c17b58b991 Binary files /dev/null and b/resources/g2/font/latin/u-ring-tiny.png differ diff --git a/resources/g2/font/latin/u-ring-uc-bold.png b/resources/g2/font/latin/u-ring-uc-bold.png new file mode 100644 index 0000000000..2a921028cd Binary files /dev/null and b/resources/g2/font/latin/u-ring-uc-bold.png differ diff --git a/resources/g2/font/latin/u-ring-uc-small.png b/resources/g2/font/latin/u-ring-uc-small.png new file mode 100644 index 0000000000..581629045c Binary files /dev/null and b/resources/g2/font/latin/u-ring-uc-small.png differ diff --git a/resources/g2/font/latin/u-ring-uc-tiny.png b/resources/g2/font/latin/u-ring-uc-tiny.png new file mode 100644 index 0000000000..908bb60214 Binary files /dev/null and b/resources/g2/font/latin/u-ring-uc-tiny.png differ diff --git a/resources/g2/font/latin/z-caron-bold.png b/resources/g2/font/latin/z-caron-bold.png new file mode 100644 index 0000000000..f4a69f936d Binary files /dev/null and b/resources/g2/font/latin/z-caron-bold.png differ diff --git a/resources/g2/font/latin/z-caron-small.png b/resources/g2/font/latin/z-caron-small.png new file mode 100644 index 0000000000..e0ba0a8876 Binary files /dev/null and b/resources/g2/font/latin/z-caron-small.png differ diff --git a/resources/g2/font/latin/z-caron-tiny.png b/resources/g2/font/latin/z-caron-tiny.png new file mode 100644 index 0000000000..92dcaa982f Binary files /dev/null and b/resources/g2/font/latin/z-caron-tiny.png differ diff --git a/resources/g2/font/latin/z-caron-uc-bold.png b/resources/g2/font/latin/z-caron-uc-bold.png new file mode 100644 index 0000000000..9503ac8284 Binary files /dev/null and b/resources/g2/font/latin/z-caron-uc-bold.png differ diff --git a/resources/g2/font/latin/z-caron-uc-small.png b/resources/g2/font/latin/z-caron-uc-small.png new file mode 100644 index 0000000000..7221299be9 Binary files /dev/null and b/resources/g2/font/latin/z-caron-uc-small.png differ diff --git a/resources/g2/font/latin/z-caron-uc-tiny.png b/resources/g2/font/latin/z-caron-uc-tiny.png new file mode 100644 index 0000000000..5bff847a48 Binary files /dev/null and b/resources/g2/font/latin/z-caron-uc-tiny.png differ diff --git a/resources/g2/sprites.json b/resources/g2/sprites.json index 66046226a4..f1b78eacbb 100644 --- a/resources/g2/sprites.json +++ b/resources/g2/sprites.json @@ -796,6 +796,78 @@ "palette": "keep", "forceBmp": true }, + { + "path": "font/latin/n-caron-uc-small.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/n-caron-small.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/r-caron-uc-small.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/r-caron-small.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/s-caron-uc-small.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/s-caron-small.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/t-caron-uc-small.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/t-caron-small.png", + "y_offset": 1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/u-ring-uc-small.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/u-ring-small.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/z-caron-uc-small.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/z-caron-small.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, { "path": "font/rouble-small.png", "y_offset": 0, @@ -1205,6 +1277,78 @@ "palette": "keep", "forceBmp": true }, + { + "path": "font/latin/n-caron-uc-bold.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/n-caron-bold.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/r-caron-uc-bold.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/r-caron-bold.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/s-caron-uc-bold.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/s-caron-bold.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/t-caron-uc-bold.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/t-caron-bold.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/u-ring-uc-bold.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/u-ring-bold.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/z-caron-uc-bold.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/z-caron-bold.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, { "path": "font/rouble-bold.png", "y_offset": 0, @@ -1622,6 +1766,78 @@ "palette": "keep", "forceBmp": true }, + { + "path": "font/latin/n-caron-uc-tiny.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/n-caron-tiny.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/r-caron-uc-tiny.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/r-caron-tiny.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/s-caron-uc-tiny.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/s-caron-tiny.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/t-caron-uc-tiny.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/t-caron-tiny.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/u-ring-uc-tiny.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/u-ring-tiny.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/z-caron-uc-tiny.png", + "y_offset": -1, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/z-caron-tiny.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, { "path": "font/rouble-tiny.png", "y_offset": 0, diff --git a/src/openrct2/drawing/Font.cpp b/src/openrct2/drawing/Font.cpp index ed0f492d1b..4700057ab9 100644 --- a/src/openrct2/drawing/Font.cpp +++ b/src/openrct2/drawing/Font.cpp @@ -57,18 +57,30 @@ static const std::map codepointOffsetMap = { { UnicodeChar::l_stroke, CSChar::l_stroke - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::n_acute_uc, CSChar::n_acute_uc - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::n_acute, CSChar::n_acute - CS_SPRITE_FONT_OFFSET }, + { UnicodeChar::n_caron_uc, SPR_G2_N_CARON_UPPER - SPR_CHAR_START }, + { UnicodeChar::n_caron, SPR_G2_N_CARON_LOWER - SPR_CHAR_START }, { UnicodeChar::o_double_acute_uc, SPR_G2_O_DOUBLE_ACUTE_UPPER - SPR_CHAR_START }, { UnicodeChar::o_double_acute, SPR_G2_O_DOUBLE_ACUTE_LOWER - SPR_CHAR_START }, + { UnicodeChar::r_caron_uc, SPR_G2_R_CARON_UPPER - SPR_CHAR_START }, + { UnicodeChar::r_caron, SPR_G2_R_CARON_LOWER - SPR_CHAR_START }, { UnicodeChar::s_acute_uc, CSChar::s_acute_uc - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::s_acute, CSChar::s_acute - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::s_cedilla_uc, SPR_G2_S_CEDILLA_UPPER - SPR_CHAR_START }, { UnicodeChar::s_cedilla, SPR_G2_S_CEDILLA_LOWER - SPR_CHAR_START }, + { UnicodeChar::s_caron_uc, SPR_G2_S_CARON_UPPER - SPR_CHAR_START }, + { UnicodeChar::s_caron, SPR_G2_S_CARON_LOWER - SPR_CHAR_START }, + { UnicodeChar::t_caron_uc, SPR_G2_T_CARON_UPPER - SPR_CHAR_START }, + { UnicodeChar::t_caron, SPR_G2_T_CARON_LOWER - SPR_CHAR_START }, + { UnicodeChar::u_ring_uc, SPR_G2_U_RING_UPPER - SPR_CHAR_START }, + { UnicodeChar::u_ring, SPR_G2_U_RING_LOWER - SPR_CHAR_START }, { UnicodeChar::u_double_acute_uc, SPR_G2_U_DOUBLE_ACUTE_UPPER - SPR_CHAR_START }, { UnicodeChar::u_double_acute, SPR_G2_U_DOUBLE_ACUTE_LOWER - SPR_CHAR_START }, { UnicodeChar::z_acute_uc, CSChar::z_acute_uc - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::z_acute, CSChar::z_acute - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::z_dot_uc, CSChar::z_dot_uc - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::z_dot, CSChar::z_dot - CS_SPRITE_FONT_OFFSET }, + { UnicodeChar::z_caron_uc, SPR_G2_Z_CARON_UPPER - SPR_CHAR_START }, + { UnicodeChar::z_caron, SPR_G2_Z_CARON_LOWER - SPR_CHAR_START }, { UnicodeChar::f_with_hook_uc, 'F' - CS_SPRITE_FONT_OFFSET }, { UnicodeChar::s_comma_uc, SPR_G2_S_CEDILLA_UPPER - SPR_CHAR_START }, // No visual difference { UnicodeChar::s_comma, SPR_G2_S_CEDILLA_LOWER - SPR_CHAR_START }, // Ditto diff --git a/src/openrct2/localisation/Language.cpp b/src/openrct2/localisation/Language.cpp index bdf2eb3604..cca9d7428b 100644 --- a/src/openrct2/localisation/Language.cpp +++ b/src/openrct2/localisation/Language.cpp @@ -28,7 +28,7 @@ const language_descriptor LanguagesDescriptors[LANGUAGE_COUNT] = { "ca-ES", "Catalan", u8"Català", FAMILY_OPENRCT2_SPRITE, false }, // LANGUAGE_CATALAN { "zh-CN", "Chinese (Simplified)", "Chinese (Simplified)", FAMILY(&TTFFamilyChineseSimplified), false }, // LANGUAGE_CHINESE_SIMPLIFIED { "zh-TW", "Chinese (Traditional)", "Chinese (Traditional)", FAMILY(&TTFFamilyChineseTraditional), false }, // LANGUAGE_CHINESE_TRADITIONAL - { "cs-CZ", "Czech", "Czech", FAMILY(&TTFFamilySansSerif), false }, // LANGUAGE_CZECH + { "cs-CZ", "Czech", u8"Čeština", FAMILY_OPENRCT2_SPRITE, false }, // LANGUAGE_CZECH { "da-DK", "Danish", "Dansk", FAMILY_OPENRCT2_SPRITE, false }, // LANGUAGE_DANISH { "de-DE", "German", "Deutsch", FAMILY_OPENRCT2_SPRITE, false }, // LANGUAGE_GERMAN { "en-GB", "English (UK)", "English (UK)", FAMILY_OPENRCT2_SPRITE, false }, // LANGUAGE_ENGLISH_UK diff --git a/src/openrct2/sprites.h b/src/openrct2/sprites.h index 392638a413..50b8d1ec3b 100644 --- a/src/openrct2/sprites.h +++ b/src/openrct2/sprites.h @@ -917,8 +917,20 @@ enum SPR_G2_D_CARON_LOWER = SPR_G2_CHAR_BEGIN + 71, SPR_G2_E_CARON_UPPER = SPR_G2_CHAR_BEGIN + 72, SPR_G2_E_CARON_LOWER = SPR_G2_CHAR_BEGIN + 73, + SPR_G2_N_CARON_UPPER = SPR_G2_CHAR_BEGIN + 74, + SPR_G2_N_CARON_LOWER = SPR_G2_CHAR_BEGIN + 75, + SPR_G2_R_CARON_UPPER = SPR_G2_CHAR_BEGIN + 76, + SPR_G2_R_CARON_LOWER = SPR_G2_CHAR_BEGIN + 77, + SPR_G2_S_CARON_UPPER = SPR_G2_CHAR_BEGIN + 78, + SPR_G2_S_CARON_LOWER = SPR_G2_CHAR_BEGIN + 79, + SPR_G2_T_CARON_UPPER = SPR_G2_CHAR_BEGIN + 80, + SPR_G2_T_CARON_LOWER = SPR_G2_CHAR_BEGIN + 81, + SPR_G2_U_RING_UPPER = SPR_G2_CHAR_BEGIN + 82, + SPR_G2_U_RING_LOWER = SPR_G2_CHAR_BEGIN + 83, + SPR_G2_Z_CARON_UPPER = SPR_G2_CHAR_BEGIN + 84, + SPR_G2_Z_CARON_LOWER = SPR_G2_CHAR_BEGIN + 85, - SPR_G2_ROUBLE_SIGN = SPR_G2_CHAR_BEGIN + 74, + SPR_G2_ROUBLE_SIGN = SPR_G2_CHAR_BEGIN + 86, SPR_G2_CHAR_END = SPR_G2_ROUBLE_SIGN, SPR_G2_GLYPH_COUNT = (SPR_G2_CHAR_END - SPR_G2_CHAR_BEGIN) + 1,