diff --git a/resources/g2/font/latin/o-double-acute-bold.png b/resources/g2/font/latin/o-double-acute-bold.png new file mode 100644 index 0000000000..81ce371b85 Binary files /dev/null and b/resources/g2/font/latin/o-double-acute-bold.png differ diff --git a/resources/g2/font/latin/o-double-acute-small.png b/resources/g2/font/latin/o-double-acute-small.png new file mode 100644 index 0000000000..fd786d6353 Binary files /dev/null and b/resources/g2/font/latin/o-double-acute-small.png differ diff --git a/resources/g2/font/latin/o-double-acute-tiny.png b/resources/g2/font/latin/o-double-acute-tiny.png new file mode 100644 index 0000000000..8987536b5a Binary files /dev/null and b/resources/g2/font/latin/o-double-acute-tiny.png differ diff --git a/resources/g2/font/latin/o-double-acute-uc-bold.png b/resources/g2/font/latin/o-double-acute-uc-bold.png new file mode 100644 index 0000000000..0eee001185 Binary files /dev/null and b/resources/g2/font/latin/o-double-acute-uc-bold.png differ diff --git a/resources/g2/font/latin/o-double-acute-uc-small.png b/resources/g2/font/latin/o-double-acute-uc-small.png new file mode 100644 index 0000000000..00ec331849 Binary files /dev/null and b/resources/g2/font/latin/o-double-acute-uc-small.png differ diff --git a/resources/g2/font/latin/o-double-acute-uc-tiny.png b/resources/g2/font/latin/o-double-acute-uc-tiny.png new file mode 100644 index 0000000000..aea06720a5 Binary files /dev/null and b/resources/g2/font/latin/o-double-acute-uc-tiny.png differ diff --git a/resources/g2/font/latin/u-double-acute-bold.png b/resources/g2/font/latin/u-double-acute-bold.png new file mode 100644 index 0000000000..df959f4b29 Binary files /dev/null and b/resources/g2/font/latin/u-double-acute-bold.png differ diff --git a/resources/g2/font/latin/u-double-acute-small.png b/resources/g2/font/latin/u-double-acute-small.png new file mode 100644 index 0000000000..ea2edf65f2 Binary files /dev/null and b/resources/g2/font/latin/u-double-acute-small.png differ diff --git a/resources/g2/font/latin/u-double-acute-tiny.png b/resources/g2/font/latin/u-double-acute-tiny.png new file mode 100644 index 0000000000..5b2d9959e4 Binary files /dev/null and b/resources/g2/font/latin/u-double-acute-tiny.png differ diff --git a/resources/g2/font/latin/u-double-acute-uc-bold.png b/resources/g2/font/latin/u-double-acute-uc-bold.png new file mode 100644 index 0000000000..05bf8a5d18 Binary files /dev/null and b/resources/g2/font/latin/u-double-acute-uc-bold.png differ diff --git a/resources/g2/font/latin/u-double-acute-uc-small.png b/resources/g2/font/latin/u-double-acute-uc-small.png new file mode 100644 index 0000000000..7e27c943cd Binary files /dev/null and b/resources/g2/font/latin/u-double-acute-uc-small.png differ diff --git a/resources/g2/font/latin/u-double-acute-uc-tiny.png b/resources/g2/font/latin/u-double-acute-uc-tiny.png new file mode 100644 index 0000000000..91c1c94330 Binary files /dev/null and b/resources/g2/font/latin/u-double-acute-uc-tiny.png differ diff --git a/resources/g2/sprites.json b/resources/g2/sprites.json index f97632d3d8..9d6dd329c4 100644 --- a/resources/g2/sprites.json +++ b/resources/g2/sprites.json @@ -794,6 +794,30 @@ "palette": "keep", "forceBmp": true }, + { + "path": "font/latin/o-double-acute-uc-small.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/o-double-acute-small.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/u-double-acute-uc-small.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/u-double-acute-small.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, { "path": "font/latin/ae-uc-bold.png", "y_offset": 0, @@ -1149,6 +1173,30 @@ "palette": "keep", "forceBmp": true }, + { + "path": "font/latin/o-double-acute-uc-bold.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/o-double-acute-bold.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/u-double-acute-uc-bold.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/u-double-acute-bold.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, { "path": "font/latin/ae-uc-tiny.png", "y_offset": 0, @@ -1511,5 +1559,29 @@ "y_offset": 0, "palette": "keep", "forceBmp": true + }, + { + "path": "font/latin/o-double-acute-uc-tiny.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/o-double-acute-tiny.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/u-double-acute-uc-tiny.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, + { + "path": "font/latin/u-double-acute-tiny.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true } ] diff --git a/src/openrct2/drawing/Font.cpp b/src/openrct2/drawing/Font.cpp index 09e277214b..a44346475a 100644 --- a/src/openrct2/drawing/Font.cpp +++ b/src/openrct2/drawing/Font.cpp @@ -385,6 +385,16 @@ int32_t font_sprite_get_codepoint_offset(int32_t codepoint) case UNICODE_Y_ACUTE: return SPR_G2_Y_ACUTE_LOWER - SPR_CHAR_START; + // Hungarian + case UNICODE_O_DOUBLE_ACUTE_UC: + return SPR_G2_O_DOUBLE_ACUTE_UPPER - SPR_CHAR_START; + case UNICODE_O_DOUBLE_ACUTE: + return SPR_G2_O_DOUBLE_ACUTE_LOWER - SPR_CHAR_START; + case UNICODE_U_DOUBLE_ACUTE_UC: + return SPR_G2_U_DOUBLE_ACUTE_UPPER - SPR_CHAR_START; + case UNICODE_U_DOUBLE_ACUTE: + return SPR_G2_U_DOUBLE_ACUTE_LOWER - SPR_CHAR_START; + default: if (codepoint < 32 || codepoint >= 256) codepoint = '?'; @@ -569,6 +579,11 @@ bool font_supports_string_sprite(const utf8* text) case UNICODE_Y_ACUTE_UC: case UNICODE_Y_ACUTE: + case UNICODE_O_DOUBLE_ACUTE_UC: + case UNICODE_O_DOUBLE_ACUTE: + case UNICODE_U_DOUBLE_ACUTE_UC: + case UNICODE_U_DOUBLE_ACUTE: + supported = true; break; default: diff --git a/src/openrct2/localisation/FormatCodes.h b/src/openrct2/localisation/FormatCodes.h index 702a302c53..8acfaad5f3 100644 --- a/src/openrct2/localisation/FormatCodes.h +++ b/src/openrct2/localisation/FormatCodes.h @@ -317,4 +317,12 @@ enum UnicodeCzech UNICODE_Y_ACUTE = 253, }; +enum UnicodeHungarian +{ + UNICODE_O_DOUBLE_ACUTE_UC = 336, + UNICODE_O_DOUBLE_ACUTE = 337, + UNICODE_U_DOUBLE_ACUTE_UC = 368, + UNICODE_U_DOUBLE_ACUTE = 369, +}; + #endif diff --git a/src/openrct2/sprites.h b/src/openrct2/sprites.h index 9110a9858b..f6cbd50356 100644 --- a/src/openrct2/sprites.h +++ b/src/openrct2/sprites.h @@ -919,7 +919,12 @@ enum SPR_G2_Y_ACUTE_UPPER = SPR_G2_CHAR_BEGIN + 64, SPR_G2_Y_ACUTE_LOWER = SPR_G2_CHAR_BEGIN + 65, - SPR_G2_CHAR_END = SPR_G2_Y_ACUTE_LOWER, + SPR_G2_O_DOUBLE_ACUTE_UPPER = SPR_G2_CHAR_BEGIN + 66, + SPR_G2_O_DOUBLE_ACUTE_LOWER = SPR_G2_CHAR_BEGIN + 67, + SPR_G2_U_DOUBLE_ACUTE_UPPER = SPR_G2_CHAR_BEGIN + 68, + SPR_G2_U_DOUBLE_ACUTE_LOWER = SPR_G2_CHAR_BEGIN + 69, + + SPR_G2_CHAR_END = SPR_G2_U_DOUBLE_ACUTE_LOWER, SPR_G2_GLYPH_COUNT = (SPR_G2_CHAR_END - SPR_G2_CHAR_BEGIN) + 1, // 0x60000, chosen because it's a round hex number