1
0
mirror of https://github.com/OpenRCT2/OpenRCT2 synced 2026-01-27 16:54:52 +01:00

Merge pull request #7964 from Gymnasiast/czech-letters

Add Hungarian letters (plus some Czech ones)
This commit is contained in:
Michael Steenbeek
2018-09-01 21:34:08 +02:00
committed by GitHub
72 changed files with 246 additions and 44 deletions

View File

@@ -3079,7 +3079,7 @@ STR_5576 :Port:
STR_5577 :South Korean Won (W)
STR_5578 :Russian Rouble (R)
STR_5579 :Window scale factor:
STR_5580 :Czech koruna (Kc)
STR_5580 :Czech koruna (Kč)
STR_5581 :Show FPS
STR_5582 :Trap mouse cursor in window
STR_5583 :{COMMA1DP16}ms{POWERNEGATIVEONE}

View File

@@ -1,5 +1,6 @@
0.2.1+ (in development)
------------------------------------------------------------------------
- Feature: [#7956, #7964] Add sprite font glyphs for Hungarian and some Czech letters.
- Improved: [#7930] Automatically create folders for custom content.
- Removed: [#7929] Support for scenario text objects.

View File

Before

Width:  |  Height:  |  Size: 187 B

After

Width:  |  Height:  |  Size: 187 B

View File

Before

Width:  |  Height:  |  Size: 186 B

After

Width:  |  Height:  |  Size: 186 B

View File

Before

Width:  |  Height:  |  Size: 169 B

After

Width:  |  Height:  |  Size: 169 B

View File

Before

Width:  |  Height:  |  Size: 242 B

After

Width:  |  Height:  |  Size: 242 B

View File

Before

Width:  |  Height:  |  Size: 185 B

After

Width:  |  Height:  |  Size: 185 B

View File

Before

Width:  |  Height:  |  Size: 173 B

After

Width:  |  Height:  |  Size: 173 B

View File

Before

Width:  |  Height:  |  Size: 205 B

After

Width:  |  Height:  |  Size: 205 B

View File

Before

Width:  |  Height:  |  Size: 194 B

After

Width:  |  Height:  |  Size: 194 B

View File

Before

Width:  |  Height:  |  Size: 171 B

After

Width:  |  Height:  |  Size: 171 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 179 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 181 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 173 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 194 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 186 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 B

View File

Before

Width:  |  Height:  |  Size: 176 B

After

Width:  |  Height:  |  Size: 176 B

View File

Before

Width:  |  Height:  |  Size: 176 B

After

Width:  |  Height:  |  Size: 176 B

View File

Before

Width:  |  Height:  |  Size: 180 B

After

Width:  |  Height:  |  Size: 180 B

View File

Before

Width:  |  Height:  |  Size: 196 B

After

Width:  |  Height:  |  Size: 196 B

View File

Before

Width:  |  Height:  |  Size: 187 B

After

Width:  |  Height:  |  Size: 187 B

View File

Before

Width:  |  Height:  |  Size: 174 B

After

Width:  |  Height:  |  Size: 174 B

View File

Before

Width:  |  Height:  |  Size: 164 B

After

Width:  |  Height:  |  Size: 164 B

View File

Before

Width:  |  Height:  |  Size: 164 B

After

Width:  |  Height:  |  Size: 164 B

View File

Before

Width:  |  Height:  |  Size: 164 B

After

Width:  |  Height:  |  Size: 164 B

View File

Before

Width:  |  Height:  |  Size: 161 B

After

Width:  |  Height:  |  Size: 161 B

View File

Before

Width:  |  Height:  |  Size: 161 B

After

Width:  |  Height:  |  Size: 161 B

View File

Before

Width:  |  Height:  |  Size: 161 B

After

Width:  |  Height:  |  Size: 161 B

View File

Before

Width:  |  Height:  |  Size: 873 B

After

Width:  |  Height:  |  Size: 873 B

View File

Before

Width:  |  Height:  |  Size: 870 B

After

Width:  |  Height:  |  Size: 870 B

View File

Before

Width:  |  Height:  |  Size: 870 B

After

Width:  |  Height:  |  Size: 870 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 180 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 180 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 171 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 193 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 192 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 B

View File

Before

Width:  |  Height:  |  Size: 235 B

After

Width:  |  Height:  |  Size: 235 B

View File

Before

Width:  |  Height:  |  Size: 179 B

After

Width:  |  Height:  |  Size: 179 B

View File

Before

Width:  |  Height:  |  Size: 174 B

After

Width:  |  Height:  |  Size: 174 B

View File

Before

Width:  |  Height:  |  Size: 210 B

After

Width:  |  Height:  |  Size: 210 B

View File

Before

Width:  |  Height:  |  Size: 195 B

After

Width:  |  Height:  |  Size: 195 B

View File

Before

Width:  |  Height:  |  Size: 171 B

After

Width:  |  Height:  |  Size: 171 B

View File

Before

Width:  |  Height:  |  Size: 185 B

After

Width:  |  Height:  |  Size: 185 B

View File

Before

Width:  |  Height:  |  Size: 181 B

After

Width:  |  Height:  |  Size: 181 B

View File

Before

Width:  |  Height:  |  Size: 176 B

After

Width:  |  Height:  |  Size: 176 B

View File

Before

Width:  |  Height:  |  Size: 187 B

After

Width:  |  Height:  |  Size: 187 B

View File

Before

Width:  |  Height:  |  Size: 188 B

After

Width:  |  Height:  |  Size: 188 B

View File

Before

Width:  |  Height:  |  Size: 173 B

After

Width:  |  Height:  |  Size: 173 B

View File

Before

Width:  |  Height:  |  Size: 183 B

After

Width:  |  Height:  |  Size: 183 B

View File

Before

Width:  |  Height:  |  Size: 177 B

After

Width:  |  Height:  |  Size: 177 B

View File

Before

Width:  |  Height:  |  Size: 173 B

After

Width:  |  Height:  |  Size: 173 B

View File

Before

Width:  |  Height:  |  Size: 177 B

After

Width:  |  Height:  |  Size: 177 B

View File

Before

Width:  |  Height:  |  Size: 174 B

After

Width:  |  Height:  |  Size: 174 B

View File

Before

Width:  |  Height:  |  Size: 171 B

After

Width:  |  Height:  |  Size: 171 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 177 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 177 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 190 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 190 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 184 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 181 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 177 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 173 B

View File

@@ -441,26 +441,26 @@
"y_offset": 5
},
{
"path": "font/ae-uc-small.png",
"path": "font/latin/ae-uc-small.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/ae-small.png",
"path": "font/latin/ae-small.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/o-stroke-uc-small.png",
"path": "font/latin/o-stroke-uc-small.png",
"x_offset": -1,
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/o-stroke-small.png",
"path": "font/latin/o-stroke-small.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
@@ -705,61 +705,61 @@
"forceBmp": true
},
{
"path": "font/g-breve-uc-small.png",
"path": "font/latin/g-breve-uc-small.png",
"y_offset": -1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/i-with-dot-uc-small.png",
"path": "font/latin/i-with-dot-uc-small.png",
"y_offset": -1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/s-cedilla-uc-small.png",
"path": "font/latin/s-cedilla-uc-small.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/g-breve-small.png",
"path": "font/latin/g-breve-small.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/i-without-dot-small.png",
"path": "font/latin/i-without-dot-small.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/s-cedilla-small.png",
"path": "font/latin/s-cedilla-small.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/interpunct-small.png",
"path": "font/latin/interpunct-small.png",
"y_offset": 3,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/a-breve-uc-small.png",
"path": "font/latin/a-breve-uc-small.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/t-comma-uc-small.png",
"path": "font/latin/t-comma-uc-small.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/t-comma-small.png",
"path": "font/latin/t-comma-small.png",
"y_offset": 1,
"palette": "keep",
"forceBmp": true
@@ -771,26 +771,74 @@
"forceBmp": true
},
{
"path": "font/ae-uc-bold.png",
"path": "font/latin/c-caron-uc-small.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/ae-bold.png",
"path": "font/latin/c-caron-small.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/latin/y-acute-uc-small.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/latin/y-acute-small.png",
"y_offset": 1,
"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,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/latin/ae-bold.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/o-stroke-uc-bold.png",
"path": "font/latin/o-stroke-uc-bold.png",
"x_offset": -1,
"y_offset": -1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/o-stroke-bold.png",
"path": "font/latin/o-stroke-bold.png",
"x_offset": 0,
"y_offset": 2,
"palette": "keep",
@@ -1036,61 +1084,61 @@
"forceBmp": true
},
{
"path": "font/g-breve-uc-bold.png",
"path": "font/latin/g-breve-uc-bold.png",
"y_offset": -1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/i-with-dot-uc-bold.png",
"path": "font/latin/i-with-dot-uc-bold.png",
"y_offset": -1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/s-cedilla-uc-bold.png",
"path": "font/latin/s-cedilla-uc-bold.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/g-breve-bold.png",
"path": "font/latin/g-breve-bold.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/i-without-dot-bold.png",
"path": "font/latin/i-without-dot-bold.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/s-cedilla-bold.png",
"path": "font/latin/s-cedilla-bold.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/interpunct-bold.png",
"path": "font/latin/interpunct-bold.png",
"y_offset": 3,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/a-breve-uc-bold.png",
"path": "font/latin/a-breve-uc-bold.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/t-comma-uc-bold.png",
"path": "font/latin/t-comma-uc-bold.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/t-comma-bold.png",
"path": "font/latin/t-comma-bold.png",
"y_offset": 1,
"palette": "keep",
"forceBmp": true
@@ -1102,25 +1150,73 @@
"forceBmp": true
},
{
"path": "font/ae-uc-tiny.png",
"path": "font/latin/c-caron-uc-bold.png",
"y_offset": -1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/latin/c-caron-bold.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/ae-tiny.png",
"path": "font/latin/y-acute-uc-bold.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/latin/y-acute-bold.png",
"y_offset": 0,
"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,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/latin/ae-tiny.png",
"y_offset": 1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/o-stroke-uc-tiny.png",
"path": "font/latin/o-stroke-uc-tiny.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/o-stroke-tiny.png",
"path": "font/latin/o-stroke-tiny.png",
"y_offset": 1,
"palette": "keep",
"forceBmp": true
@@ -1375,61 +1471,61 @@
"forceBmp": true
},
{
"path": "font/g-breve-uc-tiny.png",
"path": "font/latin/g-breve-uc-tiny.png",
"y_offset": -1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/i-with-dot-uc-tiny.png",
"path": "font/latin/i-with-dot-uc-tiny.png",
"y_offset": -1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/s-cedilla-uc-tiny.png",
"path": "font/latin/s-cedilla-uc-tiny.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/g-breve-tiny.png",
"path": "font/latin/g-breve-tiny.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/i-without-dot-tiny.png",
"path": "font/latin/i-without-dot-tiny.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/s-cedilla-tiny.png",
"path": "font/latin/s-cedilla-tiny.png",
"y_offset": 1,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/interpunct-tiny.png",
"path": "font/latin/interpunct-tiny.png",
"y_offset": 2,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/a-breve-uc-tiny.png",
"path": "font/latin/a-breve-uc-tiny.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/t-comma-uc-tiny.png",
"path": "font/latin/t-comma-uc-tiny.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/t-comma-tiny.png",
"path": "font/latin/t-comma-tiny.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
@@ -1439,5 +1535,53 @@
"y_offset": 4,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/latin/c-caron-uc-tiny.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/latin/c-caron-tiny.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/latin/y-acute-uc-tiny.png",
"y_offset": 0,
"palette": "keep",
"forceBmp": true
},
{
"path": "font/latin/y-acute-tiny.png",
"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
}
]

View File

@@ -375,6 +375,26 @@ int32_t font_sprite_get_codepoint_offset(int32_t codepoint)
case UNICODE_F_WITH_HOOK_UC:
return 'F' - 32;
// Czech
case UNICODE_C_CARON_UC:
return SPR_G2_C_CARON_UPPER - SPR_CHAR_START;
case UNICODE_C_CARON:
return SPR_G2_C_CARON_LOWER - SPR_CHAR_START;
case UNICODE_Y_ACUTE_UC:
return SPR_G2_Y_ACUTE_UPPER - SPR_CHAR_START;
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 = '?';
@@ -554,6 +574,16 @@ bool font_supports_string_sprite(const utf8* text)
case UNICODE_T_COMMA_UC:
case UNICODE_T_COMMA:
case UNICODE_C_CARON_UC:
case UNICODE_C_CARON:
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:

View File

@@ -309,4 +309,20 @@ enum UnicodePunctuation
UNICODE_ELLIPSIS = 8230,
};
enum UnicodeCzech
{
UNICODE_C_CARON_UC = 268,
UNICODE_C_CARON = 269,
UNICODE_Y_ACUTE_UC = 221,
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

View File

@@ -913,7 +913,18 @@ enum
SPR_G2_ELLIPSIS = SPR_G2_CHAR_BEGIN + 61,
SPR_G2_CHAR_END = SPR_G2_ELLIPSIS,
SPR_G2_C_CARON_UPPER = SPR_G2_CHAR_BEGIN + 62,
SPR_G2_C_CARON_LOWER = SPR_G2_CHAR_BEGIN + 63,
SPR_G2_Y_ACUTE_UPPER = SPR_G2_CHAR_BEGIN + 64,
SPR_G2_Y_ACUTE_LOWER = SPR_G2_CHAR_BEGIN + 65,
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