diff --git a/data/language/en-GB.txt b/data/language/en-GB.txt index 340e36422b..cbdc1c56c0 100644 --- a/data/language/en-GB.txt +++ b/data/language/en-GB.txt @@ -2345,7 +2345,7 @@ STR_2337 :Deutschmark (DM) STR_2338 :Yen ({YEN}) STR_2339 :Peseta (Pts) STR_2340 :Lira (L) -STR_2341 :Guilders (fl.) +STR_2341 :Guilders (ƒ) STR_2342 :Krona (kr) STR_2343 :Euros ({EURO}) STR_2344 :Imperial diff --git a/resources/g2/font/guilder-bold.png b/resources/g2/font/guilder-bold.png new file mode 100644 index 0000000000..ee37c74ec1 Binary files /dev/null and b/resources/g2/font/guilder-bold.png differ diff --git a/resources/g2/font/guilder-small.png b/resources/g2/font/guilder-small.png new file mode 100644 index 0000000000..9294807041 Binary files /dev/null and b/resources/g2/font/guilder-small.png differ diff --git a/resources/g2/font/guilder-tiny.png b/resources/g2/font/guilder-tiny.png new file mode 100644 index 0000000000..c7ed827b10 Binary files /dev/null and b/resources/g2/font/guilder-tiny.png differ diff --git a/resources/g2/sprites.json b/resources/g2/sprites.json index 601e0201f7..3d3716fb20 100644 --- a/resources/g2/sprites.json +++ b/resources/g2/sprites.json @@ -698,6 +698,12 @@ "palette": "keep", "forceBmp": true }, + { + "path": "font/guilder-small.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, { "path": "font/ae-uc-bold.png", "y_offset": 0, @@ -957,6 +963,12 @@ "palette": "keep", "forceBmp": true }, + { + "path": "font/guilder-bold.png", + "y_offset": 0, + "palette": "keep", + "forceBmp": true + }, { "path": "font/ae-uc-tiny.png", "y_offset": 0, @@ -1223,5 +1235,11 @@ "y_offset": 4, "palette": "keep", "forceBmp": true + }, + { + "path": "font/guilder-tiny.png", + "y_offset": 1, + "palette": "keep", + "forceBmp": true } ] diff --git a/src/openrct2/drawing/Font.cpp b/src/openrct2/drawing/Font.cpp index 3279e020e4..e69801d036 100644 --- a/src/openrct2/drawing/Font.cpp +++ b/src/openrct2/drawing/Font.cpp @@ -333,6 +333,13 @@ int32_t font_sprite_get_codepoint_offset(int32_t codepoint) case FORMAT_GERMAN_SINGLE_OPENQUOTE: return 12; + case UNICODE_GUILDER_SIGN: + return SPR_G2_GUILDER_SIGN - SPR_CHAR_START; + + // This is to catch capitalised versions of the guilder sign + case UNICODE_F_WITH_HOOK_UC: + return 'F' - 32; + default: if (codepoint < 32 || codepoint >= 256) codepoint = '?'; @@ -493,6 +500,8 @@ bool font_supports_string_sprite(const utf8* text) case FORMAT_SINGLE_ENDQUOTE: case FORMAT_GERMAN_SINGLE_OPENQUOTE: + case UNICODE_GUILDER_SIGN: + supported = true; break; default: diff --git a/src/openrct2/localisation/Currency.cpp b/src/openrct2/localisation/Currency.cpp index 0322681dba..aa802d0106 100644 --- a/src/openrct2/localisation/Currency.cpp +++ b/src/openrct2/localisation/Currency.cpp @@ -22,7 +22,7 @@ currency_descriptor CurrencyDescriptors[CURRENCY_END] = { { "JPY", 1000, CURRENCY_PREFIX, "\xC2\xA5", CURRENCY_SUFFIX, "YEN", STR_YEN }, // Japanese Yen { "ESP", 10, CURRENCY_SUFFIX, "Pts", CURRENCY_SUFFIX, "Pts", STR_PESETA }, // Spanish Peseta { "ITL", 1000, CURRENCY_PREFIX, "L", CURRENCY_PREFIX, "L", STR_LIRA }, // Italian Lira - { "NLG", 10, CURRENCY_PREFIX, "\xC6\x92", CURRENCY_PREFIX, "fl.", STR_GUILDERS }, // Dutch Guilder + { "NLG", 10, CURRENCY_PREFIX, "\xC6\x92 ", CURRENCY_PREFIX, "fl.", STR_GUILDERS }, // Dutch Guilder { "SEK", 10, CURRENCY_SUFFIX, " kr", CURRENCY_SUFFIX, " kr", STR_KRONA }, // Swedish Krona { "EUR", 10, CURRENCY_PREFIX, "\xE2\x82\xAC", CURRENCY_SUFFIX, "EUR", STR_EUROS }, // Euro { "KRW", 10000, CURRENCY_PREFIX, "\xE2\x82\xA9", CURRENCY_PREFIX, "W", STR_WON }, // South Korean Won diff --git a/src/openrct2/localisation/FormatCodes.h b/src/openrct2/localisation/FormatCodes.h index 5443702f96..d419a97a72 100644 --- a/src/openrct2/localisation/FormatCodes.h +++ b/src/openrct2/localisation/FormatCodes.h @@ -271,4 +271,12 @@ enum UnicodeDingbats UNICODE_DINGBATS_MINUS = 0x2796, }; +enum UnicodeCurrency +{ + UNICODE_GUILDER_SIGN = 402, + + // Not a currency sign, but the guilder sign will be capitalised to this. + UNICODE_F_WITH_HOOK_UC = 401, +}; + #endif diff --git a/src/openrct2/sprites.h b/src/openrct2/sprites.h index bd791b9737..2f51675d13 100644 --- a/src/openrct2/sprites.h +++ b/src/openrct2/sprites.h @@ -896,7 +896,9 @@ enum SPR_G2_GERMAN_OPENQUOTES = SPR_G2_CHAR_BEGIN + 49, - SPR_G2_CHAR_END = SPR_G2_GERMAN_OPENQUOTES, + SPR_G2_GUILDER_SIGN = SPR_G2_CHAR_BEGIN + 50, + + SPR_G2_CHAR_END = SPR_G2_GUILDER_SIGN, SPR_G2_GLYPH_COUNT = (SPR_G2_CHAR_END - SPR_G2_CHAR_BEGIN) + 1, // 0x60000, chosen because it's a round hex number