mirror of
https://github.com/LostArtefacts/TRX.git
synced 2025-04-28 12:47:58 +03:00
This commit is contained in:
commit
336af723dc
834 changed files with 14106 additions and 14182 deletions
|
@ -131,7 +131,6 @@
|
|||
{"type": "level_complete"},
|
||||
],
|
||||
"injections": [
|
||||
"data/injections/larson_textures.bin",
|
||||
"data/injections/qualopec_fd.bin",
|
||||
"data/injections/qualopec_itemrots.bin",
|
||||
"data/injections/qualopec_textures.bin",
|
||||
|
@ -301,15 +300,12 @@
|
|||
{"type": "level_complete"},
|
||||
],
|
||||
"injections": [
|
||||
"data/injections/cowboy_textures.bin",
|
||||
"data/injections/kold_textures.bin",
|
||||
"data/injections/mines_cameras.bin",
|
||||
"data/injections/mines_fd.bin",
|
||||
"data/injections/mines_itemrots.bin",
|
||||
"data/injections/mines_meshfixes.bin",
|
||||
"data/injections/mines_pushblocks.bin",
|
||||
"data/injections/mines_textures.bin",
|
||||
"data/injections/skateboardkid_textures.bin"
|
||||
],
|
||||
"item_drops": [
|
||||
{"enemy_num": 17, "object_ids": [86]},
|
||||
|
@ -424,7 +420,7 @@
|
|||
],
|
||||
|
||||
"cutscenes": [
|
||||
// Cut Scene 1
|
||||
// Cutscene 1
|
||||
{
|
||||
"path": "data/cut1.phd",
|
||||
"music_track": 23,
|
||||
|
@ -443,7 +439,7 @@
|
|||
],
|
||||
},
|
||||
|
||||
// Cut Scene 2
|
||||
// Cutscene 2
|
||||
{
|
||||
"path": "data/cut2.phd",
|
||||
"music_track": 25,
|
||||
|
@ -464,7 +460,7 @@
|
|||
],
|
||||
},
|
||||
|
||||
// Cut Scene 3
|
||||
// Cutscene 3
|
||||
{
|
||||
"path": "data/cut3.phd",
|
||||
"music_track": 24,
|
||||
|
@ -481,7 +477,7 @@
|
|||
],
|
||||
},
|
||||
|
||||
// Cut Scene 4
|
||||
// Cutscene 4
|
||||
{
|
||||
"path": "data/cut4.phd",
|
||||
"music_track": 22,
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
"data/injections/lara_jumping.bin",
|
||||
"data/injections/uzi_sfx.bin",
|
||||
"data/injections/explosion.bin",
|
||||
"data/injections/font.bin",
|
||||
"data/injections/pickup_aid.bin",
|
||||
],
|
||||
"enable_tr2_item_drops": false,
|
||||
|
|
37
data/tr1/ship/cfg/TR1X_gameflow_level.json5
Normal file
37
data/tr1/ship/cfg/TR1X_gameflow_level.json5
Normal file
|
@ -0,0 +1,37 @@
|
|||
{
|
||||
// This file is used to enable the -l argument support.
|
||||
|
||||
"main_menu_picture": "data/images/title.webp",
|
||||
"savegame_fmt_legacy": "save_tmp.%d",
|
||||
"savegame_fmt_bson": "save_tmp_%02d.dat",
|
||||
"demo_delay": 0,
|
||||
"water_color": [0.45, 1.0, 1.0],
|
||||
"draw_distance_fade": 22.0,
|
||||
"draw_distance_max": 30.0,
|
||||
"injections": [
|
||||
"data/injections/backpack.bin",
|
||||
"data/injections/braid.bin",
|
||||
"data/injections/lara_animations.bin",
|
||||
"data/injections/lara_jumping.bin",
|
||||
"data/injections/uzi_sfx.bin",
|
||||
"data/injections/explosion.bin",
|
||||
"data/injections/font.bin",
|
||||
"data/injections/pickup_aid.bin",
|
||||
],
|
||||
"enable_tr2_item_drops": false,
|
||||
"convert_dropped_guns": false,
|
||||
"enable_killer_pushblocks": true,
|
||||
|
||||
"levels": [
|
||||
{
|
||||
"path": "PLACEHOLDER",
|
||||
"music_track": 0,
|
||||
"sequence": [
|
||||
{"type": "loop_game"},
|
||||
{"type": "level_stats"},
|
||||
{"type": "level_complete"},
|
||||
],
|
||||
"injections": [],
|
||||
},
|
||||
],
|
||||
}
|
|
@ -149,10 +149,10 @@
|
|||
],
|
||||
|
||||
"cutscenes": [
|
||||
{"title": "Cut Scene 1"},
|
||||
{"title": "Cut Scene 2"},
|
||||
{"title": "Cut Scene 3"},
|
||||
{"title": "Cut Scene 4"},
|
||||
{"title": "Cutscene 1"},
|
||||
{"title": "Cutscene 2"},
|
||||
{"title": "Cutscene 3"},
|
||||
{"title": "Cutscene 4"},
|
||||
],
|
||||
|
||||
"demos": [
|
||||
|
@ -356,7 +356,6 @@
|
|||
"DETAIL_FBO_FILTER": "FBO filter",
|
||||
"DETAIL_FLOAT_FMT": "%.1f",
|
||||
"DETAIL_FPS": "FPS",
|
||||
"DETAIL_PERSPECTIVE": "Perspective",
|
||||
"DETAIL_PRETTY_PIXELS": "Pretty pixels",
|
||||
"DETAIL_REFLECTIONS": "Reflections",
|
||||
"DETAIL_RENDER_MODE": "Render mode",
|
||||
|
@ -367,6 +366,7 @@
|
|||
"DETAIL_SELECT_DETAIL": "Select Detail",
|
||||
"DETAIL_STRING_FMT": "%s",
|
||||
"DETAIL_TEXTURE_FILTER": "Texture filter",
|
||||
"DETAIL_TRAPEZOID_FILTER": "Trapezoid filter",
|
||||
"DETAIL_UI_BAR_SCALE": "UI bar scale",
|
||||
"DETAIL_UI_TEXT_SCALE": "UI text scale",
|
||||
"DETAIL_VSYNC": "VSync",
|
||||
|
@ -463,14 +463,16 @@
|
|||
"OSD_LOAD_GAME_FAIL_INVALID_SLOT": "Invalid save slot %d",
|
||||
"OSD_LOAD_GAME_FAIL_UNAVAILABLE_SLOT": "Save slot %d is not available",
|
||||
"OSD_OBJECT_NOT_FOUND": "Object not found",
|
||||
"OSD_PERSPECTIVE_FILTER_OFF": "Perspective correction: off",
|
||||
"OSD_PERSPECTIVE_FILTER_ON": "Perspective correction: on",
|
||||
"OSD_PHOTO_MODE_LAUNCHED": "Entering photo mode, press %s for help",
|
||||
"OSD_PLAY_CUTSCENE": "Loading cutscene %d",
|
||||
"OSD_PLAY_DEMO": "Loading demo %d",
|
||||
"OSD_PLAY_LEVEL": "Loading %s",
|
||||
"OSD_PLAY_MUSIC_TRACK": "Playing music track %d",
|
||||
"OSD_POS_GET": "Level: %d (%s) Room: %d\nPosition: %.3f, %.3f, %.3f\nRotation: %.3f,%.3f,%.3f",
|
||||
"OSD_POS_LARA_MISSING": "Lara not present",
|
||||
"OSD_POS_LARA_POS_FMT": "Room: %d\nPosition: %.3f, %.3f, %.3f\nRotation: %.3f, %.3f, %.3f",
|
||||
"OSD_POS_LEVEL_FMT": "Level %d",
|
||||
"OSD_POS_LEVEL_FMT_CUTSCENE": "Cutscene %d",
|
||||
"OSD_POS_LEVEL_FMT_DEMO": "Demo %d",
|
||||
"OSD_POS_SET_ITEM": "Teleported to object: %s",
|
||||
"OSD_POS_SET_ITEM_FAIL": "Failed to teleport to object: %s",
|
||||
"OSD_POS_SET_POS": "Teleported to position: %.3f %.3f %.3f",
|
||||
|
@ -486,6 +488,8 @@
|
|||
"OSD_TEXTURE_FILTER_BILINEAR": "bilinear",
|
||||
"OSD_TEXTURE_FILTER_NN": "nearest-neighbor",
|
||||
"OSD_TEXTURE_FILTER_SET": "Texture filter set to %s",
|
||||
"OSD_TRAPEZOID_FILTER_OFF": "Trapezoid filter disabled",
|
||||
"OSD_TRAPEZOID_FILTER_ON": "Trapezoid filter enabled",
|
||||
"OSD_UI_OFF": "UI disabled",
|
||||
"OSD_UI_ON": "UI enabled",
|
||||
"OSD_UNKNOWN_COMMAND": "Unknown command: %s",
|
||||
|
|
1
data/tr1/ship/cfg/TR1X_strings_level.json5
Normal file
1
data/tr1/ship/cfg/TR1X_strings_level.json5
Normal file
|
@ -0,0 +1 @@
|
|||
{"levels": [{"title": "Test Level"}]}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -2,24 +2,30 @@
|
|||
// Vertex shader
|
||||
|
||||
layout(location = 0) in vec3 inPosition;
|
||||
layout(location = 1) in vec3 inTexCoords;
|
||||
layout(location = 2) in vec4 inColor;
|
||||
layout(location = 1) in vec4 inTexCoords;
|
||||
layout(location = 2) in float inTexZ;
|
||||
layout(location = 3) in vec4 inColor;
|
||||
|
||||
uniform mat4 matProjection;
|
||||
uniform mat4 matModelView;
|
||||
|
||||
#ifdef OGL33C
|
||||
out vec4 vertColor;
|
||||
out vec3 vertTexCoords;
|
||||
out vec4 vertTexCoords;
|
||||
out float vertTexZ;
|
||||
#else
|
||||
varying vec4 vertColor;
|
||||
varying vec3 vertTexCoords;
|
||||
varying vec4 vertTexCoords;
|
||||
varying float vertTexZ;
|
||||
#endif
|
||||
|
||||
void main(void) {
|
||||
gl_Position = matProjection * matModelView * vec4(inPosition, 1);
|
||||
vertColor = inColor / 255.0;
|
||||
vertTexCoords = inTexCoords;
|
||||
vertTexCoords.xy *= vertTexCoords.zw;
|
||||
vertTexCoords *= inTexZ;
|
||||
vertTexZ = inTexZ;
|
||||
}
|
||||
|
||||
#else
|
||||
|
@ -39,7 +45,8 @@ uniform float brightnessMultiplier;
|
|||
#define TEXELFETCH texelFetch
|
||||
|
||||
in vec4 vertColor;
|
||||
in vec3 vertTexCoords;
|
||||
in vec4 vertTexCoords;
|
||||
in float vertTexZ;
|
||||
out vec4 OUTCOLOR;
|
||||
#else
|
||||
#define OUTCOLOR gl_FragColor
|
||||
|
@ -48,27 +55,30 @@ uniform float brightnessMultiplier;
|
|||
#define TEXTURE texture2D
|
||||
|
||||
varying vec4 vertColor;
|
||||
varying vec3 vertTexCoords;
|
||||
varying vec4 vertTexCoords;
|
||||
varying float vertTexZ;
|
||||
#endif
|
||||
|
||||
void main(void) {
|
||||
OUTCOLOR = vertColor;
|
||||
|
||||
vec2 texCoords = vertTexCoords.xy;
|
||||
texCoords.xy /= vertTexCoords.zw;
|
||||
|
||||
if (texturingEnabled) {
|
||||
#if defined(GL_EXT_gpu_shader4) || defined(OGL33C)
|
||||
if (alphaPointDiscard && smoothingEnabled) {
|
||||
// do not use smoothing for chroma key
|
||||
ivec2 size = TEXTURESIZE(tex0, 0);
|
||||
int tx = int((vertTexCoords.x / vertTexCoords.z) * size.x) % size.x;
|
||||
int ty = int((vertTexCoords.y / vertTexCoords.z) * size.y) % size.y;
|
||||
vec4 texel = TEXELFETCH(tex0, ivec2(tx, ty), 0);
|
||||
ivec2 texCoordsNN = ivec2(texCoords.xy * size.xy) % size.xy;
|
||||
vec4 texel = TEXELFETCH(tex0, texCoordsNN, 0);
|
||||
if (texel.a == 0.0) {
|
||||
discard;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
vec4 texColor = TEXTURE(tex0, vertTexCoords.xy / vertTexCoords.z);
|
||||
vec4 texColor = TEXTURE(tex0, texCoords.xy);
|
||||
if (alphaThreshold >= 0.0 && texColor.a <= alphaThreshold) {
|
||||
discard;
|
||||
}
|
||||
|
|
BIN
data/tr2/glyphs/buttons.png
Normal file
BIN
data/tr2/glyphs/buttons.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.6 KiB |
BIN
data/tr2/glyphs/glyphs.png
Normal file
BIN
data/tr2/glyphs/glyphs.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 12 KiB |
25
data/tr2/glyphs/mapping.txt
Normal file
25
data/tr2/glyphs/mapping.txt
Normal file
|
@ -0,0 +1,25 @@
|
|||
# This file is used by the tooling in the tools/glyphs/ directory and is
|
||||
# crucial for the game's graphical text handling, serving two roles:
|
||||
#
|
||||
# 1. Hardcoding Unicode to sprite mapping
|
||||
# It generates C macros that map Unicode code points and escaped sequences
|
||||
# to O_ALPHABET's sprite indices, specify glyph dimensions, and instruct how
|
||||
# to compose compound characters - all getting hardcoded into the executable.
|
||||
# 2. Guidance for font.bin creation
|
||||
# It directs the injector tool in creating the font.bin file that contains
|
||||
# O_ALPHABET sprite bitmaps, along with additional positional information.
|
||||
#
|
||||
# Important notes:
|
||||
# - Some sprite indices are fixed. This is for compatibility with the original
|
||||
# game to retains original text format even if font.bin goes missing.
|
||||
|
||||
include "mapping_basic_latin.txt"
|
||||
include "mapping_icons.txt"
|
||||
include "mapping_combining_diactrics.txt"
|
||||
include "mapping_latin-1_supplement.txt"
|
||||
include "mapping_latin_extended-a.txt"
|
||||
include "mapping_latin_extended-b.txt"
|
||||
include "mapping_greek_and_coptic.txt"
|
||||
include "mapping_cyrillic.txt"
|
||||
include "mapping_latin_extended_additional.txt"
|
||||
include "mapping_misc.txt"
|
104
data/tr2/glyphs/mapping_basic_latin.txt
Normal file
104
data/tr2/glyphs/mapping_basic_latin.txt
Normal file
|
@ -0,0 +1,104 @@
|
|||
# --------------------------------------------------
|
||||
# Unicode Block "Basic Latin" (U+0000 to U+007F)
|
||||
# --------------------------------------------------
|
||||
# ASCII a-z
|
||||
U+0061:a N manual_sprite("glyphs.png", 218, 41, 11, 18, index=26)
|
||||
U+0062:b N manual_sprite("glyphs.png", 229, 41, 11, 18, index=27)
|
||||
U+0063:c N manual_sprite("glyphs.png", 240, 41, 11, 18, index=28)
|
||||
U+0064:d N manual_sprite("glyphs.png", 0, 59, 11, 18, index=29)
|
||||
U+0065:e N manual_sprite("glyphs.png", 11, 59, 11, 18, index=30)
|
||||
U+0066:f N manual_sprite("glyphs.png", 22, 59, 11, 18, index=31)
|
||||
U+0067:g N manual_sprite("glyphs.png", 33, 59, 11, 18, index=32)
|
||||
U+0068:h N manual_sprite("glyphs.png", 44, 59, 11, 18, index=33)
|
||||
U+0069:i N manual_sprite("glyphs.png", 55, 59, 7, 18, index=34)
|
||||
U+006A:j N manual_sprite("glyphs.png", 62, 59, 11, 18, index=35)
|
||||
U+006B:k N manual_sprite("glyphs.png", 73, 59, 12, 18, index=36)
|
||||
U+006C:l N manual_sprite("glyphs.png", 85, 59, 7, 18, index=37)
|
||||
U+006D:m N manual_sprite("glyphs.png", 92, 59, 14, 18, index=38)
|
||||
U+006E:n N manual_sprite("glyphs.png", 106, 59, 12, 18, index=39)
|
||||
U+006F:o N manual_sprite("glyphs.png", 118, 59, 11, 18, index=40)
|
||||
U+0070:p N manual_sprite("glyphs.png", 129, 59, 11, 18, index=41)
|
||||
U+0071:q N manual_sprite("glyphs.png", 140, 59, 11, 18, index=42)
|
||||
U+0072:r N manual_sprite("glyphs.png", 151, 59, 10, 18, index=43)
|
||||
U+0073:s N manual_sprite("glyphs.png", 161, 59, 11, 18, index=44)
|
||||
U+0074:t N manual_sprite("glyphs.png", 172, 59, 11, 18, index=45)
|
||||
U+0075:u N manual_sprite("glyphs.png", 183, 59, 11, 18, index=46)
|
||||
U+0076:v N manual_sprite("glyphs.png", 194, 59, 11, 18, index=47)
|
||||
U+0077:w N manual_sprite("glyphs.png", 205, 59, 13, 18, index=48)
|
||||
U+0078:x N manual_sprite("glyphs.png", 218, 59, 11, 18, index=49)
|
||||
U+0079:y N manual_sprite("glyphs.png", 229, 59, 11, 18, index=50)
|
||||
U+007A:z N manual_sprite("glyphs.png", 240, 59, 11, 18, index=51)
|
||||
|
||||
# ASCII A-z
|
||||
U+0041:A N manual_sprite("glyphs.png", 65, 23, 17, 18, index=0) expand(-1)
|
||||
U+0042:B N manual_sprite("glyphs.png", 82, 23, 13, 18, index=1)
|
||||
U+0043:C N manual_sprite("glyphs.png", 95, 23, 13, 18, index=2)
|
||||
U+0044:D N manual_sprite("glyphs.png", 108, 23, 13, 18, index=3)
|
||||
U+0045:E N manual_sprite("glyphs.png", 121, 23, 13, 18, index=4)
|
||||
U+0046:F N manual_sprite("glyphs.png", 134, 23, 13, 18, index=5)
|
||||
U+0047:G N manual_sprite("glyphs.png", 147, 23, 13, 18, index=6)
|
||||
U+0048:H N manual_sprite("glyphs.png", 160, 23, 15, 18, index=7)
|
||||
U+0049:I N manual_sprite("glyphs.png", 175, 23, 10, 18, index=8)
|
||||
U+004A:J N manual_sprite("glyphs.png", 185, 23, 13, 18, index=9)
|
||||
U+004B:K N manual_sprite("glyphs.png", 198, 23, 14, 18, index=10)
|
||||
U+004C:L N manual_sprite("glyphs.png", 212, 23, 13, 18, index=11)
|
||||
U+004D:M N manual_sprite("glyphs.png", 225, 23, 15, 18, index=12)
|
||||
U+004E:N N manual_sprite("glyphs.png", 240, 23, 15, 18, index=13)
|
||||
U+004F:O N manual_sprite("glyphs.png", 0, 41, 14, 18, index=14)
|
||||
U+0050:P N manual_sprite("glyphs.png", 14, 41, 13, 18, index=15)
|
||||
U+0051:Q N manual_sprite("glyphs.png", 27, 41, 14, 18, index=16)
|
||||
U+0052:R N manual_sprite("glyphs.png", 41, 41, 14, 18, index=17)
|
||||
U+0053:S N manual_sprite("glyphs.png", 55, 41, 13, 18, index=18)
|
||||
U+0054:T N manual_sprite("glyphs.png", 68, 41, 14, 18, index=19)
|
||||
U+0055:U N manual_sprite("glyphs.png", 82, 41, 15, 18, index=20)
|
||||
U+0056:V N manual_sprite("glyphs.png", 97, 41, 15, 18, index=21)
|
||||
U+0057:W N manual_sprite("glyphs.png", 112, 41, 15, 18, index=22)
|
||||
U+0058:X N manual_sprite("glyphs.png", 127, 41, 14, 18, index=23)
|
||||
U+0059:Y N manual_sprite("glyphs.png", 141, 41, 14, 18, index=24)
|
||||
U+005A:Z N manual_sprite("glyphs.png", 155, 41, 13, 18, index=25)
|
||||
|
||||
# Digits 0-9
|
||||
U+0030:0 N manual_sprite("glyphs.png", 135, 5, 14, 18, index=52)
|
||||
U+0031:1 N manual_sprite("glyphs.png", 149, 5, 11, 18, index=53)
|
||||
U+0032:2 N manual_sprite("glyphs.png", 160, 5, 12, 18, index=54)
|
||||
U+0033:3 N manual_sprite("glyphs.png", 172, 5, 12, 18, index=55)
|
||||
U+0034:4 N manual_sprite("glyphs.png", 184, 5, 12, 18, index=56)
|
||||
U+0035:5 N manual_sprite("glyphs.png", 196, 5, 12, 18, index=57)
|
||||
U+0036:6 N manual_sprite("glyphs.png", 208, 5, 12, 18, index=58)
|
||||
U+0037:7 N manual_sprite("glyphs.png", 220, 5, 12, 18, index=59)
|
||||
U+0038:8 N manual_sprite("glyphs.png", 232, 5, 12, 18, index=60)
|
||||
U+0039:9 N manual_sprite("glyphs.png", 244, 5, 12, 18, index=61)
|
||||
|
||||
# Basic Punctuation
|
||||
U+0021:! N manual_sprite("glyphs.png", 0, 5, 6, 18, index=64)
|
||||
U+0022:" N manual_sprite("glyphs.png", 6, 5, 9, 18)
|
||||
U+0023:# N manual_sprite("glyphs.png", 16, 5, 14, 18, index=78)
|
||||
U+0024:$ N manual_sprite("glyphs.png", 30, 5, 11, 18)
|
||||
U+0025:% N manual_sprite("glyphs.png", 41, 5, 13, 18)
|
||||
U+0026:& N manual_sprite("glyphs.png", 54, 5, 11, 18)
|
||||
U+0027:' N manual_sprite("glyphs.png", 65, 5, 6, 18, index=79)
|
||||
U+0028:( N manual_sprite("glyphs.png", 71, 5, 7, 18) expand(w=-1)
|
||||
U+0029:) N manual_sprite("glyphs.png", 78, 5, 7, 18) translate(x=1) expand(w=1)
|
||||
U+002A:* N manual_sprite("glyphs.png", 85, 5, 9, 18)
|
||||
U+002B:+ N manual_sprite("glyphs.png", 94, 5, 11, 18, index=72)
|
||||
U+002C:, N manual_sprite("glyphs.png", 105, 5, 6, 18, index=63)
|
||||
U+002D:- N manual_sprite("glyphs.png", 111, 5, 9, 18, index=71)
|
||||
U+002E:. N manual_sprite("glyphs.png", 120, 5, 6, 18, index=62)
|
||||
U+002F:/ N manual_sprite("glyphs.png", 126, 5, 9, 18, index=68)
|
||||
U+003A:: N manual_sprite("glyphs.png", 0, 23, 6, 18, index=73)
|
||||
U+003B:; N manual_sprite("glyphs.png", 6, 23, 6, 18)
|
||||
U+003C:< N manual_sprite("glyphs.png", 13, 23, 9, 18)
|
||||
U+003D:= N manual_sprite("glyphs.png", 22, 23, 9, 18)
|
||||
U+003E:> N manual_sprite("glyphs.png", 31, 23, 9, 18)
|
||||
U+003F:? N manual_sprite("glyphs.png", 41, 23, 12, 18, index=65)
|
||||
U+0040:@ N manual_sprite("glyphs.png", 53, 23, 12, 18)
|
||||
U+005B:[ N manual_sprite("glyphs.png", 168, 41, 8, 18, index=66)
|
||||
U+005C:\ N manual_sprite("glyphs.png", 176, 41, 9, 18, index=76)
|
||||
U+005D:] N manual_sprite("glyphs.png", 185, 41, 8, 18, index=75)
|
||||
U+005E:^ N manual_sprite("glyphs.png", 193, 41, 9, 18)
|
||||
U+005F:_ N manual_sprite("glyphs.png", 202, 41, 9, 18)
|
||||
U+0060:` N manual_sprite("glyphs.png", 211, 41, 7, 18)
|
||||
U+007B:{ N manual_sprite("glyphs.png", 0, 77, 8, 18)
|
||||
U+007C:| N manual_sprite("glyphs.png", 8, 77, 6, 18)
|
||||
U+007D:} N manual_sprite("glyphs.png", 14, 77, 8, 18)
|
||||
U+007E:~ N manual_sprite("glyphs.png", 22, 77, 10, 18)
|
16
data/tr2/glyphs/mapping_combining_diactrics.txt
Normal file
16
data/tr2/glyphs/mapping_combining_diactrics.txt
Normal file
|
@ -0,0 +1,16 @@
|
|||
# --------------------------------------------------
|
||||
# Combining diactrics
|
||||
# --------------------------------------------------
|
||||
"\\{grave accent}" c manual_sprite("glyphs.png", 0, 0, 7, 5, index=77)
|
||||
"\\{acute accent}" c manual_sprite("glyphs.png", 7, 0, 7, 5, index=70)
|
||||
"\\{circumflex accent}" c manual_sprite("glyphs.png", 32, 0, 9, 5, index=69)
|
||||
"\\{circumflex}" N link("\\{circumflex accent}")
|
||||
"\\{macron}" c manual_sprite("glyphs.png", 23, 0, 9, 5)
|
||||
"\\{breve}" c manual_sprite("glyphs.png", 50, 0, 8, 5)
|
||||
"\\{dot above}" c manual_sprite("glyphs.png", 58, 0, 6, 5)
|
||||
"\\{umlaut}" c manual_sprite("glyphs.png", 14, 0, 9, 5, index=67)
|
||||
"\\{caron}" c manual_sprite("glyphs.png", 41, 0, 9, 5)
|
||||
"\\{ring above}" c manual_sprite("glyphs.png", 64, 0, 7, 5)
|
||||
"\\{tilde}" c manual_sprite("glyphs.png", 71, 0, 10, 5)
|
||||
"\\{double acute accent}" c manual_sprite("glyphs.png", 81, 0, 9, 5)
|
||||
"\\{acute umlaut}" c manual_sprite("glyphs.png", 90, 0, 11, 5)
|
101
data/tr2/glyphs/mapping_cyrillic.txt
Normal file
101
data/tr2/glyphs/mapping_cyrillic.txt
Normal file
|
@ -0,0 +1,101 @@
|
|||
# --------------------------------------------------
|
||||
# Unicode Block "Cyrillic" (U+0400 to U+04FF)
|
||||
# --------------------------------------------------
|
||||
U+0400:Ѐ C combine(U+0415:Е, "\\{grave accent}")
|
||||
U+0401:Ё C combine(U+0415:Е, "\\{umlaut}")
|
||||
U+0402:Ђ N manual_sprite("glyphs.png", 73, 167, 15, 18)
|
||||
U+0403:Ѓ C combine(U+0413:Г, "\\{acute accent}")
|
||||
U+0404:Є N manual_sprite("glyphs.png", 88, 167, 13, 18)
|
||||
U+0405:Ѕ N link("S")
|
||||
U+0406:І N link("I")
|
||||
U+0407:Ї C combine(U+0406:І, "\\{umlaut}")
|
||||
U+0408:Ј N link("J")
|
||||
U+0409:Љ N manual_sprite("glyphs.png", 101, 167, 18, 18)
|
||||
U+040A:Њ N manual_sprite("glyphs.png", 119, 167, 18, 18)
|
||||
U+040B:Ћ N manual_sprite("glyphs.png", 137, 167, 16, 18)
|
||||
U+040C:Ќ C combine(U+041A:К, "\\{acute accent}")
|
||||
U+040D:Ѝ C combine(U+0418:И, "\\{grave accent}")
|
||||
U+040E:Ў C combine(U+0423:У, "\\{breve}")
|
||||
U+040F:Џ N manual_sprite("glyphs.png", 153, 167, 14, 18)
|
||||
U+0410:А N link("A")
|
||||
U+0411:Б N manual_sprite("glyphs.png", 167, 167, 13, 18)
|
||||
U+0412:В N link("B")
|
||||
U+0413:Г N link(U+0393:Γ)
|
||||
U+0414:Д N manual_sprite("glyphs.png", 180, 167, 16, 18)
|
||||
U+0415:Е N link("E")
|
||||
U+0416:Ж N manual_sprite("glyphs.png", 196, 167, 18, 18)
|
||||
U+0417:З N manual_sprite("glyphs.png", 214, 167, 12, 18)
|
||||
U+0418:И N manual_sprite("glyphs.png", 226, 167, 15, 18)
|
||||
U+0419:Й C combine(U+0418:И, "\\{breve}")
|
||||
U+041A:К N link("K")
|
||||
U+041B:Л N manual_sprite("glyphs.png", 241, 167, 15, 18)
|
||||
U+041C:М N link("M")
|
||||
U+041D:Н N link("H")
|
||||
U+041E:О N link("O")
|
||||
U+041F:П N link(U+03A0:Π)
|
||||
U+0420:Р N link("P")
|
||||
U+0421:С N link("C")
|
||||
U+0422:Т N link("T")
|
||||
U+0423:У N manual_sprite("glyphs.png", 0, 185, 14, 18)
|
||||
U+0424:Ф N link(U+03A6:Φ)
|
||||
U+0425:Х N link("X")
|
||||
U+0426:Ц N manual_sprite("glyphs.png", 14, 185, 15, 18)
|
||||
U+0427:Ч N manual_sprite("glyphs.png", 29, 185, 15, 18)
|
||||
U+0428:Ш N manual_sprite("glyphs.png", 44, 185, 18, 18)
|
||||
U+0429:Щ N manual_sprite("glyphs.png", 62, 185, 18, 18)
|
||||
U+042A:Ъ N manual_sprite("glyphs.png", 80, 185, 15, 18)
|
||||
U+042B:Ы N manual_sprite("glyphs.png", 95, 185, 18, 18)
|
||||
U+042C:Ь N manual_sprite("glyphs.png", 113, 185, 13, 18)
|
||||
U+042D:Э N manual_sprite("glyphs.png", 126, 185, 13, 18)
|
||||
U+042E:Ю N manual_sprite("glyphs.png", 139, 185, 18, 18)
|
||||
U+042F:Я N manual_sprite("glyphs.png", 157, 185, 13, 18)
|
||||
U+0430:а N link("a")
|
||||
U+0431:б N manual_sprite("glyphs.png", 170, 185, 11, 18)
|
||||
U+0432:в N manual_sprite("glyphs.png", 181, 185, 11, 18)
|
||||
U+0433:г N manual_sprite("glyphs.png", 192, 185, 10, 18)
|
||||
U+0434:д N manual_sprite("glyphs.png", 202, 185, 12, 18)
|
||||
U+0435:е N link("e")
|
||||
U+0436:ж N manual_sprite("glyphs.png", 214, 185, 17, 18)
|
||||
U+0437:з N manual_sprite("glyphs.png", 232, 185, 11, 18)
|
||||
U+0438:и N manual_sprite("glyphs.png", 243, 185, 12, 18)
|
||||
U+0439:й C combine(U+0438:и, "\\{breve}")
|
||||
U+043A:к N link(U+0138:ĸ)
|
||||
U+043B:л N manual_sprite("glyphs.png", 0, 203, 11, 18)
|
||||
U+043C:м N manual_sprite("glyphs.png", 11, 203, 13, 18)
|
||||
U+043D:н N manual_sprite("glyphs.png", 24, 203, 11, 18)
|
||||
U+043E:о N link("o")
|
||||
U+043F:п N manual_sprite("glyphs.png", 35, 203, 11, 18)
|
||||
U+0440:р N link("p")
|
||||
U+0441:с N link("c")
|
||||
U+0442:т N manual_sprite("glyphs.png", 46, 203, 10, 18)
|
||||
U+0443:у N link("y")
|
||||
U+0444:ф N manual_sprite("glyphs.png", 56, 203, 14, 18)
|
||||
U+0445:х N link("x")
|
||||
U+0446:ц N manual_sprite("glyphs.png", 70, 203, 12, 18)
|
||||
U+0447:ч N manual_sprite("glyphs.png", 82, 203, 11, 18)
|
||||
U+0448:ш N manual_sprite("glyphs.png", 93, 203, 14, 18)
|
||||
U+0449:щ N manual_sprite("glyphs.png", 107, 203, 15, 18)
|
||||
U+044A:ъ N manual_sprite("glyphs.png", 122, 203, 13, 18)
|
||||
U+044B:ы N manual_sprite("glyphs.png", 135, 203, 14, 18)
|
||||
U+044C:ь N manual_sprite("glyphs.png", 149, 203, 11, 18)
|
||||
U+044D:э N manual_sprite("glyphs.png", 160, 203, 11, 18)
|
||||
U+044E:ю N manual_sprite("glyphs.png", 171, 203, 14, 18)
|
||||
U+044F:я N manual_sprite("glyphs.png", 185, 203, 11, 18)
|
||||
U+0450:ѐ C combine("e", "\\{grave accent}")
|
||||
U+0451:ё C combine("e", "\\{umlaut}")
|
||||
U+0452:ђ N manual_sprite("glyphs.png", 196, 203, 12, 18)
|
||||
U+0453:ѓ C combine(U+0433:г, "\\{acute accent}")
|
||||
U+0454:є N manual_sprite("glyphs.png", 208, 203, 11, 18)
|
||||
U+0455:ѕ N link("s")
|
||||
U+0456:і N link("i")
|
||||
U+0457:ї C combine(U+0131:ı, "\\{umlaut}")
|
||||
U+0458:ј N link("j")
|
||||
U+0459:љ N manual_sprite("glyphs.png", 219, 203, 16, 18)
|
||||
U+045A:њ N manual_sprite("glyphs.png", 235, 203, 16, 18)
|
||||
U+045B:ћ N link(U+0127:ħ)
|
||||
U+045C:ќ C combine(U+043A:к, "\\{acute accent}")
|
||||
U+045D:ѝ C combine(U+0438:и, "\\{grave accent}")
|
||||
U+045E:ў C combine(U+0443:у, "\\{breve}")
|
||||
U+045F:џ N manual_sprite("glyphs.png", 0, 221, 11, 18)
|
||||
U+0490:Ґ N manual_sprite("glyphs.png", 11, 221, 13, 18)
|
||||
U+0491:ґ N manual_sprite("glyphs.png", 24, 221, 10, 18)
|
73
data/tr2/glyphs/mapping_greek_and_coptic.txt
Normal file
73
data/tr2/glyphs/mapping_greek_and_coptic.txt
Normal file
|
@ -0,0 +1,73 @@
|
|||
# --------------------------------------------------
|
||||
# Unicode Block "Greek and Coptic" (U+0370 to U+03FF)
|
||||
# --------------------------------------------------
|
||||
U+0393:Γ N manual_sprite("glyphs.png", 194, 131, 13, 18)
|
||||
U+0394:Δ N manual_sprite("glyphs.png", 207, 131, 15, 18)
|
||||
U+0395:Ε N link("E")
|
||||
U+0396:Ζ N link("Z")
|
||||
U+0397:Η N link("H")
|
||||
U+0398:Θ N manual_sprite("glyphs.png", 222, 131, 14, 18)
|
||||
U+0399:Ι N link("I")
|
||||
U+039A:Κ N link("K")
|
||||
U+039B:Λ N manual_sprite("glyphs.png", 236, 131, 17, 18)
|
||||
U+039C:Μ N link("M")
|
||||
U+039D:Ν N link("N")
|
||||
U+039E:Ξ N manual_sprite("glyphs.png", 0, 149, 14, 18)
|
||||
U+039F:Ο N link("O")
|
||||
U+03A0:Π N manual_sprite("glyphs.png", 14, 149, 15, 18)
|
||||
U+03A1:Ρ N link("P")
|
||||
U+03A3:Σ N manual_sprite("glyphs.png", 29, 149, 13, 18)
|
||||
U+03A4:Τ N link("T")
|
||||
U+03A5:Υ N link("Y")
|
||||
U+03A6:Φ N manual_sprite("glyphs.png", 42, 149, 16, 18)
|
||||
U+03A7:Χ N link("Z")
|
||||
U+03A8:Ψ N manual_sprite("glyphs.png", 58, 149, 18, 18)
|
||||
U+03A9:Ω N manual_sprite("glyphs.png", 76, 149, 14, 18)
|
||||
U+03B1:α N manual_sprite("glyphs.png", 90, 149, 12, 18)
|
||||
U+03B2:β N manual_sprite("glyphs.png", 102, 149, 11, 18)
|
||||
U+03B3:γ N manual_sprite("glyphs.png", 113, 149, 12, 18)
|
||||
U+03B4:δ N manual_sprite("glyphs.png", 125, 149, 11, 18)
|
||||
U+03B5:ε N manual_sprite("glyphs.png", 136, 149, 11, 18)
|
||||
U+03B6:ζ N manual_sprite("glyphs.png", 147, 149, 11, 18)
|
||||
U+03B7:η N manual_sprite("glyphs.png", 158, 149, 11, 18)
|
||||
U+03B8:θ N manual_sprite("glyphs.png", 169, 149, 11, 18)
|
||||
U+03B9:ι N link(U+0131:ı)
|
||||
U+03BA:κ N link(U+0138:ĸ)
|
||||
U+03BB:λ N manual_sprite("glyphs.png", 180, 149, 12, 18)
|
||||
U+03BC:μ N link(U+00B5:µ)
|
||||
U+03BD:ν N link("v")
|
||||
U+03BE:ξ N manual_sprite("glyphs.png", 192, 149, 11, 18)
|
||||
U+03BF:ο N link("o")
|
||||
U+03C0:π N manual_sprite("glyphs.png", 203, 149, 13, 18)
|
||||
U+03C1:ρ N manual_sprite("glyphs.png", 216, 149, 11, 18)
|
||||
U+03C2:ς N manual_sprite("glyphs.png", 227, 149, 11, 18)
|
||||
U+03C3:σ N manual_sprite("glyphs.png", 238, 149, 12, 18)
|
||||
U+03C4:τ N manual_sprite("glyphs.png", 0, 167, 10, 18)
|
||||
U+03C5:υ N manual_sprite("glyphs.png", 10, 167, 11, 18)
|
||||
U+03C6:φ N manual_sprite("glyphs.png", 21, 167, 14, 18)
|
||||
U+03C7:χ N manual_sprite("glyphs.png", 35, 167, 11, 18)
|
||||
U+03C8:ψ N manual_sprite("glyphs.png", 46, 167, 14, 18)
|
||||
U+03C9:ω N manual_sprite("glyphs.png", 60, 167, 13, 18)
|
||||
|
||||
U+0386:Ά C combine(U+0391:Α, "\\{acute accent}", offset_x=-4, offset_y=2)
|
||||
U+0388:Έ C combine(U+0395:Ε, "\\{acute accent}", offset_x=-4, offset_y=2)
|
||||
U+0389:Ή C combine(U+0397:Η, "\\{acute accent}", offset_x=-4, offset_y=2)
|
||||
U+038A:Ί C combine(U+0399:Ι, "\\{acute accent}", offset_x=-4, offset_y=2)
|
||||
U+038C:Ό C combine(U+039F:Ο, "\\{acute accent}", offset_x=-4, offset_y=2)
|
||||
U+038E:Ύ C combine(U+03A5:Υ, "\\{acute accent}", offset_x=-4, offset_y=2)
|
||||
U+038F:Ώ C combine(U+03A9:Ω, "\\{acute accent}", offset_x=-4, offset_y=2)
|
||||
U+0390:ΐ C combine(U+03B9:ι, "\\{acute umlaut}")
|
||||
U+0391:Α N link("A")
|
||||
U+0392:Β N link("B")
|
||||
U+03AA:Ϊ C combine(U+0399:Ι, "\\{umlaut}")
|
||||
U+03AB:Ϋ C combine(U+03A5:Υ, "\\{umlaut}")
|
||||
U+03AC:ά C combine(U+03B1:α, "\\{acute accent}")
|
||||
U+03AD:έ C combine(U+03B5:ε, "\\{acute accent}")
|
||||
U+03AE:ή C combine(U+03B7:η, "\\{acute accent}")
|
||||
U+03AF:ί C combine(U+03B9:ι, "\\{acute accent}")
|
||||
U+03B0:ΰ C combine(U+03C5:υ, "\\{acute umlaut}")
|
||||
U+03CA:ϊ C combine(U+03B9:ι, "\\{umlaut}")
|
||||
U+03CB:ϋ C combine(U+03C5:υ, "\\{umlaut}")
|
||||
U+03CC:ό C combine(U+03BF:ο, "\\{acute accent}")
|
||||
U+03CD:ύ C combine(U+03C5:υ, "\\{acute accent}")
|
||||
U+03CE:ώ C combine(U+03C9:ω, "\\{acute accent}")
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue