1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-15 19:13:07 +01:00

Merge pull request #7821 from Gymnasiast/even-more-sprites

Even more sprites
This commit is contained in:
Michael Steenbeek
2018-07-24 21:53:14 +02:00
committed by GitHub
32 changed files with 220 additions and 7 deletions

View File

@@ -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

View File

@@ -4,9 +4,9 @@
- Feature: [#6998] Guests now wait for passing vehicles before crossing railway tracks.
- Feature: [#7694] Debug option to visualize paths that the game detects as wide.
- Feature: [#7771] Danish translation.
- Feature: [#7802] Add sprite font glyphs for Russian.
- Feature: [#7797, #7802, #7821] Add sprite font glyphs for Danish, Norwegian, Russian, Turkish and Catalan.
- Fix: [#3177] Wrong keys displayed in shortcut menu.
- Fix: [#4039] Add sprite font glyph for German opening quotation mark.
- Fix: [#4039] No sprite font glyph for German opening quotation mark.
- Fix: [#7533] Screenshot is incorrectly named/file is not generated in CJK language.
- Fix: [#7628] Always-researched items can be modified in the inventory list.
- Fix: [#7643] No Money scenarios with funding set to zero.
@@ -23,7 +23,7 @@
- Fix: [#7773] Once research has been completed, player is still charged for research.
- Fix: [#7786] Crash when importing a track design.
- Fix: [#7793] Duplicate private keys generated.
- Fix: [#7797] Add sprite font glyphs for Æ and Ø, needed for Norwegian and Danish.
- Fix: [#7817] No sprite font glyph for interpunct.
0.2.0 (2018-06-10)
------------------------------------------------------------------------

Binary file not shown.

After

Width:  |  Height:  |  Size: 176 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 176 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 180 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 196 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 237 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 181 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 176 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 161 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 161 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 161 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 873 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 870 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 870 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 185 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 181 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 176 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 188 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 173 B

View File

@@ -698,6 +698,54 @@
"palette": "keep",
"forceBmp": true
},
{
"path": "font/guilder-small.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/g-breve-uc-small.png",
"y_offset": -1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/i-with-dot-uc-small.png",
"y_offset": -1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/s-cedilla-uc-small.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/g-breve-small.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/i-without-dot-small.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/s-cedilla-small.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/interpunct-small.png",
"y_offset": 3,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/ae-uc-bold.png",
"y_offset": 0,
@@ -957,6 +1005,54 @@
"palette": "keep",
"forceBmp": true
},
{
"path": "font/guilder-bold.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/g-breve-uc-bold.png",
"y_offset": -1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/i-with-dot-uc-bold.png",
"y_offset": -1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/s-cedilla-uc-bold.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/g-breve-bold.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/i-without-dot-bold.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/s-cedilla-bold.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/interpunct-bold.png",
"y_offset": 3,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/ae-uc-tiny.png",
"y_offset": 0,
@@ -1223,5 +1319,53 @@
"y_offset": 4,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/guilder-tiny.png",
"y_offset": 1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/g-breve-uc-tiny.png",
"y_offset": -1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/i-with-dot-uc-tiny.png",
"y_offset": -1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/s-cedilla-uc-tiny.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/g-breve-tiny.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/i-without-dot-tiny.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/s-cedilla-tiny.png",
"y_offset": 1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/interpunct-tiny.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
}
]

View File

@@ -333,6 +333,30 @@ 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;
// Turkish
case UNICODE_G_BREVE_UC:
return SPR_G2_G_BREVE_UPPER - SPR_CHAR_START;
case UNICODE_I_WITH_DOT_UC:
return SPR_G2_I_WITH_DOT_UPPER - SPR_CHAR_START;
case UNICODE_S_CEDILLA_UC:
return SPR_G2_S_CEDILLA_UPPER - SPR_CHAR_START;
case UNICODE_G_BREVE:
return SPR_G2_G_BREVE_LOWER - SPR_CHAR_START;
case UNICODE_I_WITHOUT_DOT:
return SPR_G2_I_WITHOUT_DOT_LOWER - SPR_CHAR_START;
case UNICODE_S_CEDILLA:
return SPR_G2_S_CEDILLA_LOWER - SPR_CHAR_START;
case UNICODE_INTERPUNCT:
return SPR_G2_INTERPUNCT - 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 +517,17 @@ bool font_supports_string_sprite(const utf8* text)
case FORMAT_SINGLE_ENDQUOTE:
case FORMAT_GERMAN_SINGLE_OPENQUOTE:
case UNICODE_GUILDER_SIGN:
case UNICODE_G_BREVE_UC:
case UNICODE_I_WITH_DOT_UC:
case UNICODE_S_CEDILLA_UC:
case UNICODE_G_BREVE:
case UNICODE_I_WITHOUT_DOT:
case UNICODE_S_CEDILLA:
case UNICODE_INTERPUNCT:
supported = true;
break;
default:

View File

@@ -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

View File

@@ -179,6 +179,11 @@ enum UnicodePolish
UNICODE_Z_ACUTE = 378,
};
enum UnicodeCatalan
{
UNICODE_INTERPUNCT = 183,
};
enum UnicodeGerman
{
UNICODE_CAPITAL_SHARP_S = 0x1E9E,
@@ -265,10 +270,28 @@ enum UnicodeCyrillic
};
enum UnicodeTurkish
{
UNICODE_G_BREVE_UC = 286,
UNICODE_G_BREVE = 287,
UNICODE_I_WITH_DOT_UC = 304,
UNICODE_I_WITHOUT_DOT = 305,
UNICODE_S_CEDILLA_UC = 350,
UNICODE_S_CEDILLA = 351,
};
enum UnicodeDingbats
{
UNICODE_DINGBATS_PLUS = 0x2795,
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

View File

@@ -43,7 +43,7 @@ const language_descriptor LanguagesDescriptors[LANGUAGE_COUNT] =
{ "nb-NO", "Norwegian", "Norsk", FAMILY_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_NORWEGIAN
{ "pl-PL", "Polish", "Polski", FAMILY_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_POLISH
{ "pt-BR", "Portuguese (BR)", u8"Português (BR)", FAMILY_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_PORTUGUESE }, // LANGUAGE_PORTUGUESE_BR
{ "ru-RU", "Russian", "Russian", FAMILY_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_RUSSIAN
{ "ru-RU", "Russian", u8"Русский", FAMILY_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_RUSSIAN
{ "fi-FI", "Finnish", "Suomi", FAMILY_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_ENGLISH_UK }, // LANGUAGE_FINNISH
{ "sv-SE", "Swedish", "Svenska", FAMILY_OPENRCT2_SPRITE, RCT2_LANGUAGE_ID_SWEDISH }, // LANGUAGE_SWEDISH
};

View File

@@ -896,7 +896,18 @@ 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_G_BREVE_UPPER = SPR_G2_CHAR_BEGIN + 51,
SPR_G2_I_WITH_DOT_UPPER = SPR_G2_CHAR_BEGIN + 52,
SPR_G2_S_CEDILLA_UPPER = SPR_G2_CHAR_BEGIN + 53,
SPR_G2_G_BREVE_LOWER = SPR_G2_CHAR_BEGIN + 54,
SPR_G2_I_WITHOUT_DOT_LOWER = SPR_G2_CHAR_BEGIN + 55,
SPR_G2_S_CEDILLA_LOWER = SPR_G2_CHAR_BEGIN + 56,
SPR_G2_INTERPUNCT = SPR_G2_CHAR_BEGIN + 57,
SPR_G2_CHAR_END = SPR_G2_INTERPUNCT,
SPR_G2_GLYPH_COUNT = (SPR_G2_CHAR_END - SPR_G2_CHAR_BEGIN) + 1,
// 0x60000, chosen because it's a round hex number