aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gen.js75
-rw-r--r--init.lua287
-rw-r--r--textures/ehlphabet_000.pngbin412 -> 125 bytes
-rw-r--r--textures/ehlphabet_033.pngbin1253 -> 280 bytes
-rw-r--r--textures/ehlphabet_034.pngbin1238 -> 205 bytes
-rw-r--r--textures/ehlphabet_035.pngbin1608 -> 459 bytes
-rw-r--r--textures/ehlphabet_036.pngbin1743 -> 571 bytes
-rw-r--r--textures/ehlphabet_037.pngbin2460 -> 742 bytes
-rw-r--r--textures/ehlphabet_038.pngbin2238 -> 668 bytes
-rw-r--r--textures/ehlphabet_039.pngbin917 -> 197 bytes
-rw-r--r--textures/ehlphabet_040.pngbin1447 -> 419 bytes
-rw-r--r--textures/ehlphabet_041.pngbin1431 -> 411 bytes
-rw-r--r--textures/ehlphabet_042.pngbin1387 -> 414 bytes
-rw-r--r--textures/ehlphabet_043.pngbin516 -> 214 bytes
-rw-r--r--textures/ehlphabet_044.pngbin912 -> 267 bytes
-rw-r--r--textures/ehlphabet_045.pngbin488 -> 156 bytes
-rw-r--r--textures/ehlphabet_046.pngbin723 -> 193 bytes
-rw-r--r--textures/ehlphabet_047.pngbin1283 -> 346 bytes
-rw-r--r--textures/ehlphabet_048.pngbin1850 -> 466 bytes
-rw-r--r--textures/ehlphabet_049.pngbin872 -> 278 bytes
-rw-r--r--textures/ehlphabet_050.pngbin1562 -> 427 bytes
-rw-r--r--textures/ehlphabet_051.pngbin1685 -> 531 bytes
-rw-r--r--textures/ehlphabet_052.pngbin1203 -> 338 bytes
-rw-r--r--textures/ehlphabet_053.pngbin1521 -> 418 bytes
-rw-r--r--textures/ehlphabet_054.pngbin1844 -> 526 bytes
-rw-r--r--textures/ehlphabet_055.pngbin1349 -> 405 bytes
-rw-r--r--textures/ehlphabet_056.pngbin1924 -> 534 bytes
-rw-r--r--textures/ehlphabet_057.pngbin1848 -> 551 bytes
-rw-r--r--textures/ehlphabet_058.pngbin954 -> 248 bytes
-rw-r--r--textures/ehlphabet_059.pngbin1139 -> 331 bytes
-rw-r--r--textures/ehlphabet_060.pngbin1203 -> 379 bytes
-rw-r--r--textures/ehlphabet_061.pngbin494 -> 197 bytes
-rw-r--r--textures/ehlphabet_062.pngbin1205 -> 404 bytes
-rw-r--r--textures/ehlphabet_063.pngbin1397 -> 454 bytes
-rw-r--r--textures/ehlphabet_064.pngbin2876 -> 1027 bytes
-rw-r--r--textures/ehlphabet_065.pngbin1701 -> 498 bytes
-rw-r--r--textures/ehlphabet_066.pngbin1590 -> 508 bytes
-rw-r--r--textures/ehlphabet_067.pngbin1774 -> 553 bytes
-rw-r--r--textures/ehlphabet_068.pngbin1549 -> 456 bytes
-rw-r--r--textures/ehlphabet_069.pngbin1223 -> 430 bytes
-rw-r--r--textures/ehlphabet_070.pngbin1078 -> 375 bytes
-rw-r--r--textures/ehlphabet_071.pngbin1810 -> 558 bytes
-rw-r--r--textures/ehlphabet_072.pngbin1182 -> 353 bytes
-rw-r--r--textures/ehlphabet_073.pngbin791 -> 232 bytes
-rw-r--r--textures/ehlphabet_074.pngbin1010 -> 300 bytes
-rw-r--r--textures/ehlphabet_075.pngbin1614 -> 525 bytes
-rw-r--r--textures/ehlphabet_076.pngbin988 -> 280 bytes
-rw-r--r--textures/ehlphabet_077.pngbin2440 -> 590 bytes
-rw-r--r--textures/ehlphabet_078.pngbin1391 -> 449 bytes
-rw-r--r--textures/ehlphabet_079.pngbin1969 -> 576 bytes
-rw-r--r--textures/ehlphabet_080.pngbin1302 -> 409 bytes
-rw-r--r--textures/ehlphabet_081.pngbin2190 -> 681 bytes
-rw-r--r--textures/ehlphabet_082.pngbin1562 -> 513 bytes
-rw-r--r--textures/ehlphabet_083.pngbin1749 -> 535 bytes
-rw-r--r--textures/ehlphabet_084.pngbin971 -> 341 bytes
-rw-r--r--textures/ehlphabet_085.pngbin1503 -> 381 bytes
-rw-r--r--textures/ehlphabet_086.pngbin1773 -> 507 bytes
-rw-r--r--textures/ehlphabet_087.pngbin2151 -> 656 bytes
-rw-r--r--textures/ehlphabet_088.pngbin1852 -> 536 bytes
-rw-r--r--textures/ehlphabet_089.pngbin1465 -> 436 bytes
-rw-r--r--textures/ehlphabet_090.pngbin1567 -> 478 bytes
-rw-r--r--textures/ehlphabet_208_129.pngbin0 -> 504 bytes
-rw-r--r--textures/ehlphabet_208_144.pngbin0 -> 498 bytes
-rw-r--r--textures/ehlphabet_208_145.pngbin0 -> 469 bytes
-rw-r--r--textures/ehlphabet_208_146.pngbin0 -> 508 bytes
-rw-r--r--textures/ehlphabet_208_147.pngbin0 -> 303 bytes
-rw-r--r--textures/ehlphabet_208_148.pngbin0 -> 519 bytes
-rw-r--r--textures/ehlphabet_208_149.pngbin0 -> 430 bytes
-rw-r--r--textures/ehlphabet_208_150.pngbin0 -> 668 bytes
-rw-r--r--textures/ehlphabet_208_151.pngbin0 -> 525 bytes
-rw-r--r--textures/ehlphabet_208_152.pngbin0 -> 481 bytes
-rw-r--r--textures/ehlphabet_208_153.pngbin0 -> 595 bytes
-rw-r--r--textures/ehlphabet_208_154.pngbin0 -> 503 bytes
-rw-r--r--textures/ehlphabet_208_155.pngbin0 -> 437 bytes
-rw-r--r--textures/ehlphabet_208_156.pngbin0 -> 590 bytes
-rw-r--r--textures/ehlphabet_208_157.pngbin0 -> 353 bytes
-rw-r--r--textures/ehlphabet_208_158.pngbin0 -> 576 bytes
-rw-r--r--textures/ehlphabet_208_159.pngbin0 -> 276 bytes
-rw-r--r--textures/ehlphabet_208_160.pngbin0 -> 409 bytes
-rw-r--r--textures/ehlphabet_208_161.pngbin0 -> 553 bytes
-rw-r--r--textures/ehlphabet_208_162.pngbin0 -> 341 bytes
-rw-r--r--textures/ehlphabet_208_163.pngbin0 -> 489 bytes
-rw-r--r--textures/ehlphabet_208_164.pngbin0 -> 592 bytes
-rw-r--r--textures/ehlphabet_208_165.pngbin0 -> 536 bytes
-rw-r--r--textures/ehlphabet_208_166.pngbin0 -> 353 bytes
-rw-r--r--textures/ehlphabet_208_167.pngbin0 -> 412 bytes
-rw-r--r--textures/ehlphabet_208_168.pngbin0 -> 324 bytes
-rw-r--r--textures/ehlphabet_208_169.pngbin0 -> 400 bytes
-rw-r--r--textures/ehlphabet_208_170.pngbin0 -> 446 bytes
-rw-r--r--textures/ehlphabet_208_171.pngbin0 -> 466 bytes
-rw-r--r--textures/ehlphabet_208_172.pngbin0 -> 391 bytes
-rw-r--r--textures/ehlphabet_208_173.pngbin0 -> 576 bytes
-rw-r--r--textures/ehlphabet_208_174.pngbin0 -> 701 bytes
-rw-r--r--textures/ehlphabet_208_175.pngbin0 -> 478 bytes
94 files changed, 251 insertions, 111 deletions
diff --git a/gen.js b/gen.js
new file mode 100644
index 0000000..512eb35
--- /dev/null
+++ b/gen.js
@@ -0,0 +1,75 @@
+var page = require('webpage').create();
+var w = 32;
+var h = 32;
+var con = console;
+
+//viewportSize being the actual size of the headless browser
+page.viewportSize = { width: w, height: h };
+
+//the clipRect is the portion of the page you are taking a screenshot of
+page.clipRect = { top: 0, left: 0, width: w, height: h };
+
+page.content = '<html><body><div id="character"></div></body></html>';
+
+var chars = [
+ // numbers
+ "1", "2", "3", "4", "5", "6", "7", "8", "9", "0",
+ // latin
+ "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O",
+ "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z",
+ // special chars
+ "!", "#", "$", "%", "&", "(", ")", "*", "+", ",", "-", ".", "/", ":", ";",
+ "<", "=", ">", "?", "@", '"', "'",
+ // cyrillic
+ "А", "Б", "В", "Г", "Д", "Е", "Ё", "Ж", "З", "И", "Й", "К", "Л", "М", "Н",
+ "О", "П", "Р", "С", "Т", "У", "Ф", "Х", "Ц", "Ч", "Ш", "Щ", "Ъ", "Ы", "Ь",
+ "Э", "Ю", "Я"
+];
+
+function encode_utf8(s) {
+ return unescape(encodeURIComponent(s));
+}
+
+function decode_utf8(s) {
+ return decodeURIComponent(escape(s));
+}
+
+function pad(n, width, z) {
+ z = z || '0';
+ n = n + '';
+ return n.length >= width ? n : new Array(width - n.length + 1).join(z) + n;
+}
+
+page.evaluate(function () {
+ var chEl = document.getElementById('character');
+
+ document.body.style.backgroundColor = 'white';
+ document.body.style.margin = '0px';
+ chEl.style.fontSize = '24px';
+ chEl.style.fontWeight = 'bold';
+ chEl.style.marginTop = '2px';
+ chEl.style.textAlign = 'center';
+});
+
+page.render('textures/ehlphabet_000.png');
+
+chars.forEach(function (ch) {
+ var file;
+ page.evaluate(function (ch) {
+ var chEl = document.getElementById('character');
+ chEl.innerText = ch;
+ }, ch);
+
+ ch = encode_utf8(ch);
+ if (ch.length > 1) {
+ file = pad(ch.charCodeAt(0), 3) + '_' + pad(ch.charCodeAt(1), 3);
+ } else {
+ file = pad(ch.charCodeAt(0), 3);
+ }
+
+ page.render('textures/ehlphabet_' + file + '.png');
+});
+
+console.log('done');
+
+phantom.exit();
diff --git a/init.lua b/init.lua
index 8d5f897..c5ffc34 100644
--- a/init.lua
+++ b/init.lua
@@ -1,124 +1,189 @@
-local characters = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","1","2","3","4","5","6","7","8","9","0","!","#","$","%","&","(",")","*","+",",","-",".","/",":",";","<","=",">","?","@"}
-
--- Alias (Och_Noe 20180124)
-local compat_characters = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","1","2","3","4","5","6","7","8","9","0"} -- for reference, unused
---
-
--- Alias (Och_Noe 20180124)
-create_alias = true
---
-
-for _, name in ipairs(characters) do --do this for all characters in the list
- local byte = string.byte(name)
- if byte < 10 then file = "00"..byte end
- if byte > 10 and byte < 100 then file = "0"..byte end
- if byte > 100 then file = tostring(byte) end
- local desc = "The \'"..name.."\' Character"
-
- minetest.register_node("ehlphabet:"..byte, {
- description = "Ehlphabet Block \'"..name.."\'",
- tiles = {"ehlphabet_"..file..".png"},
- groups = {cracky=3,not_in_creative_inventory=1,not_in_crafting_guide=1}
- })
- minetest.register_craft ({ type="shapeless", output = "ehlphabet:block", recipe = {"ehlphabet:"..byte} })
- if name == "!" then create_alias = false end
-
--- Alias (Och_Noe 20180124)
- if create_alias then
- minetest.register_alias("abjphabet:"..name:lower(),"ehlphabet:"..byte)
- end
---
-
+local digits = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "0"}
+local base_chars = {
+ "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O",
+ "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"
+}
+local special_chars = {
+ "!", "#", "$", "%", "&", "(", ")", "*", "+", ",", "-", ".", "/", ":", ";",
+ "<", "=", ">", "?", "@", "'", '"'
+}
+local cyrillic_chars = {
+ "А", "Б", "В", "Г", "Д", "Е", "Ё", "Ж", "З", "И", "Й", "К", "Л", "М", "Н",
+ "О", "П", "Р", "С", "Т", "У", "Ф", "Х", "Ц", "Ч", "Ш", "Щ", "Ъ", "Ы", "Ь",
+ "Э", "Ю", "Я"
+}
+local characters = {}
+
+ehlphabet = {}
+ehlphabet.path = minetest.get_modpath(minetest.get_current_modname())
+
+local function table_merge(t1, t2)
+ for k, v in ipairs(t2) do
+ table.insert(t1, v)
+ end
+ return t1
+end
+
+local function is_multibyte(ch)
+ local byte = ch:byte()
+ return (208 == byte) or (209 == byte)
+end
+
+table_merge(characters, base_chars)
+table_merge(characters, digits)
+table_merge(characters, special_chars)
+table_merge(characters, cyrillic_chars)
+
+local create_alias = true
+
+-- generate all available blocks
+for _, name in ipairs(characters) do
+ local desc = "The '" .. name .. "' Character"
+ local byte = name:byte()
+ local mb = is_multibyte(name)
+ local file, key
+
+ if mb then
+ mb = byte
+ byte = name:byte(2)
+ key = "ehlphabet:" .. mb .. byte
+ file = ("%03d_%03d"):format(mb, byte)
+ else
+ key = "ehlphabet:" .. byte
+ file = ("%03d"):format(byte)
+ end
+
+ minetest.register_node(
+ key,
+ {
+ description = "Ehlphabet Block '" .. name .. "'",
+ tiles = {"ehlphabet_" .. file .. ".png"},
+ groups = {cracky = 3, not_in_creative_inventory = 1, not_in_crafting_guide = 1}
+ }
+ )
+ minetest.register_craft({type = "shapeless", output = "ehlphabet:block", recipe = {key}})
+
+ if create_alias then
+ minetest.register_alias("abjphabet:" .. name, key)
+ end
+
+ -- deactivate alias creation on last latin character
+ if name == "Z" then
+ create_alias = false
+ end
end
-
-minetest.register_node("ehlphabet:machine", {
- description = "Letter Machine",
- tiles = {"ehlphabet_machine_top.png", "ehlphabet_machine_bottom.png", "ehlphabet_machine_side.png",
- "ehlphabet_machine_side.png", "ehlphabet_machine_back.png", "ehlphabet_machine_front.png"},
- paramtype = "light",
- paramtype2 = "facedir",
- groups = {cracky=2},
-
- can_dig = function(pos, player) -- "Can you dig it?" -Cyrus
- local meta = minetest.env:get_meta(pos)
- local inv = meta:get_inventory()
- if not inv:is_empty("input") or not inv:is_empty("output") then
- if player then
- minetest.chat_send_player(player:get_player_name(), "You cannot dig the Letter Machine with blocks inside")
- end -- end if player
- return false
- end -- end if not empty
- return true
- end, -- end can_dig function
-
- after_place_node = function(pos, placer)
- local meta = minetest.env:get_meta(pos)
- end,
-
- on_construct = function(pos)
- local meta = minetest.env:get_meta(pos)
- meta:set_string("formspec", "invsize[8,6;]"..
- "field[3.8,.5;1,1;lettername;Letter;]"..
- "list[current_name;input;2.5,0.2;1,1;]"..
- "list[current_name;output;4.5,0.2;1,1;]"..
- "list[current_player;main;0,2;8,4;]"..
- "button[2.54,-0.25;3,4;name;Blank -> Letter]")
- local inv = meta:get_inventory()
- inv:set_size("input", 1)
- inv:set_size("output", 1)
- end,
-
- on_receive_fields = function(pos, formname, fields, sender)
- local meta = minetest.env:get_meta(pos)
- local inv = meta:get_inventory()
- local inputstack = inv:get_stack("input", 1)
- if fields.lettername ~= nil and inputstack:get_name()=="ehlphabet:block" then
- for _,v in pairs(characters) do
- if v == fields.lettername then
- local give = {}
- give[1] = inv:add_item("output","ehlphabet:"..string.byte(fields.lettername))
- inputstack:take_item()
- inv:set_stack("input",1,inputstack)
- break
+minetest.register_node(
+ "ehlphabet:machine",
+ {
+ description = "Letter Machine",
+ tiles = {
+ "ehlphabet_machine_top.png",
+ "ehlphabet_machine_bottom.png",
+ "ehlphabet_machine_side.png",
+ "ehlphabet_machine_side.png",
+ "ehlphabet_machine_back.png",
+ "ehlphabet_machine_front.png"
+ },
+ paramtype = "light",
+ paramtype2 = "facedir",
+ groups = {cracky = 2},
+
+ -- "Can you dig it?" -Cyrus
+ can_dig = function(pos, player)
+ local meta = minetest.env:get_meta(pos)
+ local inv = meta:get_inventory()
+ if not inv:is_empty("input") or not inv:is_empty("output") then
+ if player then
+ minetest.chat_send_player(
+ player:get_player_name(),
+ "You cannot dig the Letter Machine with blocks inside"
+ )
+ end -- end if player
+ return false
+ end -- end if not empty
+ return true
+ end, -- end can_dig function
+
+ after_place_node = function(pos, placer)
+ local meta = minetest.env:get_meta(pos)
+ end,
+
+ on_construct = function(pos)
+ local meta = minetest.env:get_meta(pos)
+ meta:set_string(
+ "formspec",
+ "invsize[8,6;]" ..
+ "field[3.8,.5;1,1;lettername;Letter;]" ..
+ "list[current_name;input;2.5,0.2;1,1;]" ..
+ "list[current_name;output;4.5,0.2;1,1;]" ..
+ "list[current_player;main;0,2;8,4;]" ..
+ "button[2.54,-0.25;3,4;name;Blank -> Letter]"
+ )
+ local inv = meta:get_inventory()
+ inv:set_size("input", 1)
+ inv:set_size("output", 1)
+ end,
+
+ on_receive_fields = function(pos, formname, fields, sender)
+ local meta = minetest.env:get_meta(pos)
+ local inv = meta:get_inventory()
+ local inputstack = inv:get_stack("input", 1)
+ local ch = fields.lettername
+
+ if ch ~= nil and inputstack:get_name() == "ehlphabet:block" then
+ local mb = is_multibyte(ch)
+ local key = mb and (ch:byte(1) .. ch:byte(2)) or ch:byte()
+ for _, v in pairs(characters) do
+ if v == fields.lettername then
+ local give = {}
+ give[1] = inv:add_item("output", "ehlphabet:" .. key)
+ inputstack:take_item()
+ inv:set_stack("input", 1, inputstack)
+ break
+ end
+ end
end
- end
-
- end
- end
-})
+ end
+ }
+)
-
--- Alias (Och_Noe 20180124)
-minetest.register_alias("abjphabet:machine","ehlphabet:machine")
---
-
-minetest.register_node("ehlphabet:block", {
- description = "Ehlphabet Block (blank)",
- tiles = {"ehlphabet_000.png"},
- groups = {cracky=3},
-})
+-- Alias (Och_Noe 20180124)
+minetest.register_alias("abjphabet:machine", "ehlphabet:machine")
+--
+
+minetest.register_node(
+ "ehlphabet:block",
+ {
+ description = "Ehlphabet Block (blank)",
+ tiles = {"ehlphabet_000.png"},
+ groups = {cracky = 3}
+ }
+)
--RECIPE: blank blocks
-minetest.register_craft({ output = "ehlphabet:block 8",
- recipe = {
- {'default:paper', 'default:paper', 'default:paper'},
- {'default:paper', '', 'default:paper'},
- {'default:paper', 'default:paper', 'default:paper'},
- }
+minetest.register_craft({
+ output = "ehlphabet:block 8",
+ recipe = {
+ {"default:paper", "default:paper", "default:paper"},
+ {"default:paper", "", "default:paper"},
+ {"default:paper", "default:paper", "default:paper"}
+ }
})
--RECIPE: build the machine!
-minetest.register_craft({ output = "ehlphabet:machine",
- recipe = {
- {'default:stick', 'default:coal_lump', 'default:stick'},
- {'default:coal_lump', 'ehlphabet:block', 'default:coal_lump'},
- {'default:stick', 'default:coal_lump', 'default:stick'},
- }
+minetest.register_craft({
+ output = "ehlphabet:machine",
+ recipe = {
+ {"default:stick", "default:coal_lump", "default:stick"},
+ {"default:coal_lump", "ehlphabet:block", "default:coal_lump"},
+ {"default:stick", "default:coal_lump", "default:stick"}
+ }
})
--RECIPE: craft unused blocks back into paper
-minetest.register_craft ({ output = "default:paper",
- recipe = {"ehlphabet:block"},
- type = "shapeless"
+minetest.register_craft({
+ output = "default:paper",
+ recipe = {"ehlphabet:block"},
+ type = "shapeless"
})
diff --git a/textures/ehlphabet_000.png b/textures/ehlphabet_000.png
index 9cedd83..d0298f4 100644
--- a/textures/ehlphabet_000.png
+++ b/textures/ehlphabet_000.png
Binary files differ
diff --git a/textures/ehlphabet_033.png b/textures/ehlphabet_033.png
index f1f4b92..f37e9f8 100644
--- a/textures/ehlphabet_033.png
+++ b/textures/ehlphabet_033.png
Binary files differ
diff --git a/textures/ehlphabet_034.png b/textures/ehlphabet_034.png
index 94d2d5a..3008f7e 100644
--- a/textures/ehlphabet_034.png
+++ b/textures/ehlphabet_034.png
Binary files differ
diff --git a/textures/ehlphabet_035.png b/textures/ehlphabet_035.png
index 57fe4da..6c903ae 100644
--- a/textures/ehlphabet_035.png
+++ b/textures/ehlphabet_035.png
Binary files differ
diff --git a/textures/ehlphabet_036.png b/textures/ehlphabet_036.png
index f77dac4..575ffe0 100644
--- a/textures/ehlphabet_036.png
+++ b/textures/ehlphabet_036.png
Binary files differ
diff --git a/textures/ehlphabet_037.png b/textures/ehlphabet_037.png
index 47b8463..6099699 100644
--- a/textures/ehlphabet_037.png
+++ b/textures/ehlphabet_037.png
Binary files differ
diff --git a/textures/ehlphabet_038.png b/textures/ehlphabet_038.png
index 5e609ec..9402360 100644
--- a/textures/ehlphabet_038.png
+++ b/textures/ehlphabet_038.png
Binary files differ
diff --git a/textures/ehlphabet_039.png b/textures/ehlphabet_039.png
index 1784364..1f701ff 100644
--- a/textures/ehlphabet_039.png
+++ b/textures/ehlphabet_039.png
Binary files differ
diff --git a/textures/ehlphabet_040.png b/textures/ehlphabet_040.png
index 917923f..a4f543b 100644
--- a/textures/ehlphabet_040.png
+++ b/textures/ehlphabet_040.png
Binary files differ
diff --git a/textures/ehlphabet_041.png b/textures/ehlphabet_041.png
index 1da8806..0be5693 100644
--- a/textures/ehlphabet_041.png
+++ b/textures/ehlphabet_041.png
Binary files differ
diff --git a/textures/ehlphabet_042.png b/textures/ehlphabet_042.png
index 3624504..17513d0 100644
--- a/textures/ehlphabet_042.png
+++ b/textures/ehlphabet_042.png
Binary files differ
diff --git a/textures/ehlphabet_043.png b/textures/ehlphabet_043.png
index 51a2afc..5471d43 100644
--- a/textures/ehlphabet_043.png
+++ b/textures/ehlphabet_043.png
Binary files differ
diff --git a/textures/ehlphabet_044.png b/textures/ehlphabet_044.png
index 8f1a236..c9bb74b 100644
--- a/textures/ehlphabet_044.png
+++ b/textures/ehlphabet_044.png
Binary files differ
diff --git a/textures/ehlphabet_045.png b/textures/ehlphabet_045.png
index ab20ded..efe128d 100644
--- a/textures/ehlphabet_045.png
+++ b/textures/ehlphabet_045.png
Binary files differ
diff --git a/textures/ehlphabet_046.png b/textures/ehlphabet_046.png
index cd1d9e5..194ccbc 100644
--- a/textures/ehlphabet_046.png
+++ b/textures/ehlphabet_046.png
Binary files differ
diff --git a/textures/ehlphabet_047.png b/textures/ehlphabet_047.png
index fc21cf9..9378823 100644
--- a/textures/ehlphabet_047.png
+++ b/textures/ehlphabet_047.png
Binary files differ
diff --git a/textures/ehlphabet_048.png b/textures/ehlphabet_048.png
index 4f4d151..1eabb8d 100644
--- a/textures/ehlphabet_048.png
+++ b/textures/ehlphabet_048.png
Binary files differ
diff --git a/textures/ehlphabet_049.png b/textures/ehlphabet_049.png
index bbdf963..536bde5 100644
--- a/textures/ehlphabet_049.png
+++ b/textures/ehlphabet_049.png
Binary files differ
diff --git a/textures/ehlphabet_050.png b/textures/ehlphabet_050.png
index 54803b5..937884a 100644
--- a/textures/ehlphabet_050.png
+++ b/textures/ehlphabet_050.png
Binary files differ
diff --git a/textures/ehlphabet_051.png b/textures/ehlphabet_051.png
index 8160352..0ae5008 100644
--- a/textures/ehlphabet_051.png
+++ b/textures/ehlphabet_051.png
Binary files differ
diff --git a/textures/ehlphabet_052.png b/textures/ehlphabet_052.png
index 583b8d1..d5acf46 100644
--- a/textures/ehlphabet_052.png
+++ b/textures/ehlphabet_052.png
Binary files differ
diff --git a/textures/ehlphabet_053.png b/textures/ehlphabet_053.png
index cfe6175..39afb93 100644
--- a/textures/ehlphabet_053.png
+++ b/textures/ehlphabet_053.png
Binary files differ
diff --git a/textures/ehlphabet_054.png b/textures/ehlphabet_054.png
index 2c1fc95..4fd4185 100644
--- a/textures/ehlphabet_054.png
+++ b/textures/ehlphabet_054.png
Binary files differ
diff --git a/textures/ehlphabet_055.png b/textures/ehlphabet_055.png
index 3b8d9ab..f2075a0 100644
--- a/textures/ehlphabet_055.png
+++ b/textures/ehlphabet_055.png
Binary files differ
diff --git a/textures/ehlphabet_056.png b/textures/ehlphabet_056.png
index d4dcbb6..6244e02 100644
--- a/textures/ehlphabet_056.png
+++ b/textures/ehlphabet_056.png
Binary files differ
diff --git a/textures/ehlphabet_057.png b/textures/ehlphabet_057.png
index 50b1bfb..f7d052b 100644
--- a/textures/ehlphabet_057.png
+++ b/textures/ehlphabet_057.png
Binary files differ
diff --git a/textures/ehlphabet_058.png b/textures/ehlphabet_058.png
index 39d59bf..6e4ceab 100644
--- a/textures/ehlphabet_058.png
+++ b/textures/ehlphabet_058.png
Binary files differ
diff --git a/textures/ehlphabet_059.png b/textures/ehlphabet_059.png
index 61c6b8d..b075f52 100644
--- a/textures/ehlphabet_059.png
+++ b/textures/ehlphabet_059.png
Binary files differ
diff --git a/textures/ehlphabet_060.png b/textures/ehlphabet_060.png
index 953dfce..6b7e0f9 100644
--- a/textures/ehlphabet_060.png
+++ b/textures/ehlphabet_060.png
Binary files differ
diff --git a/textures/ehlphabet_061.png b/textures/ehlphabet_061.png
index 41f1c98..00d99f4 100644
--- a/textures/ehlphabet_061.png
+++ b/textures/ehlphabet_061.png
Binary files differ
diff --git a/textures/ehlphabet_062.png b/textures/ehlphabet_062.png
index 1186866..30b96bf 100644
--- a/textures/ehlphabet_062.png
+++ b/textures/ehlphabet_062.png
Binary files differ
diff --git a/textures/ehlphabet_063.png b/textures/ehlphabet_063.png
index 9d58e1c..079eb00 100644
--- a/textures/ehlphabet_063.png
+++ b/textures/ehlphabet_063.png
Binary files differ
diff --git a/textures/ehlphabet_064.png b/textures/ehlphabet_064.png
index 92dfc51..cd5dd86 100644
--- a/textures/ehlphabet_064.png
+++ b/textures/ehlphabet_064.png
Binary files differ
diff --git a/textures/ehlphabet_065.png b/textures/ehlphabet_065.png
index 3c8f65d..cf990b0 100644
--- a/textures/ehlphabet_065.png
+++ b/textures/ehlphabet_065.png
Binary files differ
diff --git a/textures/ehlphabet_066.png b/textures/ehlphabet_066.png
index 1aa4e3d..036439b 100644
--- a/textures/ehlphabet_066.png
+++ b/textures/ehlphabet_066.png
Binary files differ
diff --git a/textures/ehlphabet_067.png b/textures/ehlphabet_067.png
index b2ceea3..8aeee70 100644
--- a/textures/ehlphabet_067.png
+++ b/textures/ehlphabet_067.png
Binary files differ
diff --git a/textures/ehlphabet_068.png b/textures/ehlphabet_068.png
index 24eaa67..d2ec4d4 100644
--- a/textures/ehlphabet_068.png
+++ b/textures/ehlphabet_068.png
Binary files differ
diff --git a/textures/ehlphabet_069.png b/textures/ehlphabet_069.png
index c251848..fa7f011 100644
--- a/textures/ehlphabet_069.png
+++ b/textures/ehlphabet_069.png
Binary files differ
diff --git a/textures/ehlphabet_070.png b/textures/ehlphabet_070.png
index bc71fd8..b8bbf30 100644
--- a/textures/ehlphabet_070.png
+++ b/textures/ehlphabet_070.png
Binary files differ
diff --git a/textures/ehlphabet_071.png b/textures/ehlphabet_071.png
index 572adac..b9ade71 100644
--- a/textures/ehlphabet_071.png
+++ b/textures/ehlphabet_071.png
Binary files differ
diff --git a/textures/ehlphabet_072.png b/textures/ehlphabet_072.png
index bd467df..9b1b58d 100644
--- a/textures/ehlphabet_072.png
+++ b/textures/ehlphabet_072.png
Binary files differ
diff --git a/textures/ehlphabet_073.png b/textures/ehlphabet_073.png
index 070b1fa..2c559dc 100644
--- a/textures/ehlphabet_073.png
+++ b/textures/ehlphabet_073.png
Binary files differ
diff --git a/textures/ehlphabet_074.png b/textures/ehlphabet_074.png
index b72c73c..5fd8c10 100644
--- a/textures/ehlphabet_074.png
+++ b/textures/ehlphabet_074.png
Binary files differ
diff --git a/textures/ehlphabet_075.png b/textures/ehlphabet_075.png
index b49ca16..3ade4b7 100644
--- a/textures/ehlphabet_075.png
+++ b/textures/ehlphabet_075.png
Binary files differ
diff --git a/textures/ehlphabet_076.png b/textures/ehlphabet_076.png
index 01b00dd..3986744 100644
--- a/textures/ehlphabet_076.png
+++ b/textures/ehlphabet_076.png
Binary files differ
diff --git a/textures/ehlphabet_077.png b/textures/ehlphabet_077.png
index f02bfad..234204f 100644
--- a/textures/ehlphabet_077.png
+++ b/textures/ehlphabet_077.png
Binary files differ
diff --git a/textures/ehlphabet_078.png b/textures/ehlphabet_078.png
index 863d402..d5f9f68 100644
--- a/textures/ehlphabet_078.png
+++ b/textures/ehlphabet_078.png
Binary files differ
diff --git a/textures/ehlphabet_079.png b/textures/ehlphabet_079.png
index 38d897b..f246600 100644
--- a/textures/ehlphabet_079.png
+++ b/textures/ehlphabet_079.png
Binary files differ
diff --git a/textures/ehlphabet_080.png b/textures/ehlphabet_080.png
index 7ee4604..972f7d5 100644
--- a/textures/ehlphabet_080.png
+++ b/textures/ehlphabet_080.png
Binary files differ
diff --git a/textures/ehlphabet_081.png b/textures/ehlphabet_081.png
index c8876d5..134280d 100644
--- a/textures/ehlphabet_081.png
+++ b/textures/ehlphabet_081.png
Binary files differ
diff --git a/textures/ehlphabet_082.png b/textures/ehlphabet_082.png
index 650f688..368369d 100644
--- a/textures/ehlphabet_082.png
+++ b/textures/ehlphabet_082.png
Binary files differ
diff --git a/textures/ehlphabet_083.png b/textures/ehlphabet_083.png
index fa82f90..10fe703 100644
--- a/textures/ehlphabet_083.png
+++ b/textures/ehlphabet_083.png
Binary files differ
diff --git a/textures/ehlphabet_084.png b/textures/ehlphabet_084.png
index 3102cf4..fe37e93 100644
--- a/textures/ehlphabet_084.png
+++ b/textures/ehlphabet_084.png
Binary files differ
diff --git a/textures/ehlphabet_085.png b/textures/ehlphabet_085.png
index c6cf1b3..7156fed 100644
--- a/textures/ehlphabet_085.png
+++ b/textures/ehlphabet_085.png
Binary files differ
diff --git a/textures/ehlphabet_086.png b/textures/ehlphabet_086.png
index 6aede3f..501453c 100644
--- a/textures/ehlphabet_086.png
+++ b/textures/ehlphabet_086.png
Binary files differ
diff --git a/textures/ehlphabet_087.png b/textures/ehlphabet_087.png
index 4bbd930..69b8cf1 100644
--- a/textures/ehlphabet_087.png
+++ b/textures/ehlphabet_087.png
Binary files differ
diff --git a/textures/ehlphabet_088.png b/textures/ehlphabet_088.png
index 651e94f..5cced99 100644
--- a/textures/ehlphabet_088.png
+++ b/textures/ehlphabet_088.png
Binary files differ
diff --git a/textures/ehlphabet_089.png b/textures/ehlphabet_089.png
index 6de231e..4b37b18 100644
--- a/textures/ehlphabet_089.png
+++ b/textures/ehlphabet_089.png
Binary files differ
diff --git a/textures/ehlphabet_090.png b/textures/ehlphabet_090.png
index 40692cb..88201d8 100644
--- a/textures/ehlphabet_090.png
+++ b/textures/ehlphabet_090.png
Binary files differ
diff --git a/textures/ehlphabet_208_129.png b/textures/ehlphabet_208_129.png
new file mode 100644
index 0000000..c31a7c3
--- /dev/null
+++ b/textures/ehlphabet_208_129.png
Binary files differ
diff --git a/textures/ehlphabet_208_144.png b/textures/ehlphabet_208_144.png
new file mode 100644
index 0000000..cf990b0
--- /dev/null
+++ b/textures/ehlphabet_208_144.png
Binary files differ
diff --git a/textures/ehlphabet_208_145.png b/textures/ehlphabet_208_145.png
new file mode 100644
index 0000000..2ab0a81
--- /dev/null
+++ b/textures/ehlphabet_208_145.png
Binary files differ
diff --git a/textures/ehlphabet_208_146.png b/textures/ehlphabet_208_146.png
new file mode 100644
index 0000000..036439b
--- /dev/null
+++ b/textures/ehlphabet_208_146.png
Binary files differ
diff --git a/textures/ehlphabet_208_147.png b/textures/ehlphabet_208_147.png
new file mode 100644
index 0000000..aebd805
--- /dev/null
+++ b/textures/ehlphabet_208_147.png
Binary files differ
diff --git a/textures/ehlphabet_208_148.png b/textures/ehlphabet_208_148.png
new file mode 100644
index 0000000..ea50985
--- /dev/null
+++ b/textures/ehlphabet_208_148.png
Binary files differ
diff --git a/textures/ehlphabet_208_149.png b/textures/ehlphabet_208_149.png
new file mode 100644
index 0000000..fa7f011
--- /dev/null
+++ b/textures/ehlphabet_208_149.png
Binary files differ
diff --git a/textures/ehlphabet_208_150.png b/textures/ehlphabet_208_150.png
new file mode 100644
index 0000000..0fcffa2
--- /dev/null
+++ b/textures/ehlphabet_208_150.png
Binary files differ
diff --git a/textures/ehlphabet_208_151.png b/textures/ehlphabet_208_151.png
new file mode 100644
index 0000000..5400154
--- /dev/null
+++ b/textures/ehlphabet_208_151.png
Binary files differ
diff --git a/textures/ehlphabet_208_152.png b/textures/ehlphabet_208_152.png
new file mode 100644
index 0000000..0b3bea7
--- /dev/null
+++ b/textures/ehlphabet_208_152.png
Binary files differ
diff --git a/textures/ehlphabet_208_153.png b/textures/ehlphabet_208_153.png
new file mode 100644
index 0000000..0fa17a1
--- /dev/null
+++ b/textures/ehlphabet_208_153.png
Binary files differ
diff --git a/textures/ehlphabet_208_154.png b/textures/ehlphabet_208_154.png
new file mode 100644
index 0000000..4cda076
--- /dev/null
+++ b/textures/ehlphabet_208_154.png
Binary files differ
diff --git a/textures/ehlphabet_208_155.png b/textures/ehlphabet_208_155.png
new file mode 100644
index 0000000..7d08ab7
--- /dev/null
+++ b/textures/ehlphabet_208_155.png
Binary files differ
diff --git a/textures/ehlphabet_208_156.png b/textures/ehlphabet_208_156.png
new file mode 100644
index 0000000..234204f
--- /dev/null
+++ b/textures/ehlphabet_208_156.png
Binary files differ
diff --git a/textures/ehlphabet_208_157.png b/textures/ehlphabet_208_157.png
new file mode 100644
index 0000000..9b1b58d
--- /dev/null
+++ b/textures/ehlphabet_208_157.png
Binary files differ
diff --git a/textures/ehlphabet_208_158.png b/textures/ehlphabet_208_158.png
new file mode 100644
index 0000000..f246600
--- /dev/null
+++ b/textures/ehlphabet_208_158.png
Binary files differ
diff --git a/textures/ehlphabet_208_159.png b/textures/ehlphabet_208_159.png
new file mode 100644
index 0000000..cad814e
--- /dev/null
+++ b/textures/ehlphabet_208_159.png
Binary files differ
diff --git a/textures/ehlphabet_208_160.png b/textures/ehlphabet_208_160.png
new file mode 100644
index 0000000..972f7d5
--- /dev/null
+++ b/textures/ehlphabet_208_160.png
Binary files differ
diff --git a/textures/ehlphabet_208_161.png b/textures/ehlphabet_208_161.png
new file mode 100644
index 0000000..8aeee70
--- /dev/null
+++ b/textures/ehlphabet_208_161.png
Binary files differ
diff --git a/textures/ehlphabet_208_162.png b/textures/ehlphabet_208_162.png
new file mode 100644
index 0000000..fe37e93
--- /dev/null
+++ b/textures/ehlphabet_208_162.png
Binary files differ
diff --git a/textures/ehlphabet_208_163.png b/textures/ehlphabet_208_163.png
new file mode 100644
index 0000000..8926d78
--- /dev/null
+++ b/textures/ehlphabet_208_163.png
Binary files differ
diff --git a/textures/ehlphabet_208_164.png b/textures/ehlphabet_208_164.png
new file mode 100644
index 0000000..035a701
--- /dev/null
+++ b/textures/ehlphabet_208_164.png
Binary files differ
diff --git a/textures/ehlphabet_208_165.png b/textures/ehlphabet_208_165.png
new file mode 100644
index 0000000..5cced99
--- /dev/null
+++ b/textures/ehlphabet_208_165.png
Binary files differ
diff --git a/textures/ehlphabet_208_166.png b/textures/ehlphabet_208_166.png
new file mode 100644
index 0000000..0cc57e0
--- /dev/null
+++ b/textures/ehlphabet_208_166.png
Binary files differ
diff --git a/textures/ehlphabet_208_167.png b/textures/ehlphabet_208_167.png
new file mode 100644
index 0000000..7c9903c
--- /dev/null
+++ b/textures/ehlphabet_208_167.png
Binary files differ
diff --git a/textures/ehlphabet_208_168.png b/textures/ehlphabet_208_168.png
new file mode 100644
index 0000000..c8bec97
--- /dev/null
+++ b/textures/ehlphabet_208_168.png
Binary files differ
diff --git a/textures/ehlphabet_208_169.png b/textures/ehlphabet_208_169.png
new file mode 100644
index 0000000..b1805fd
--- /dev/null
+++ b/textures/ehlphabet_208_169.png
Binary files differ
diff --git a/textures/ehlphabet_208_170.png b/textures/ehlphabet_208_170.png
new file mode 100644
index 0000000..7a55ad9
--- /dev/null
+++ b/textures/ehlphabet_208_170.png
Binary files differ
diff --git a/textures/ehlphabet_208_171.png b/textures/ehlphabet_208_171.png
new file mode 100644
index 0000000..ee0f031
--- /dev/null
+++ b/textures/ehlphabet_208_171.png
Binary files differ
diff --git a/textures/ehlphabet_208_172.png b/textures/ehlphabet_208_172.png
new file mode 100644
index 0000000..96379d0
--- /dev/null
+++ b/textures/ehlphabet_208_172.png
Binary files differ
diff --git a/textures/ehlphabet_208_173.png b/textures/ehlphabet_208_173.png
new file mode 100644
index 0000000..12e44e2
--- /dev/null
+++ b/textures/ehlphabet_208_173.png
Binary files differ
diff --git a/textures/ehlphabet_208_174.png b/textures/ehlphabet_208_174.png
new file mode 100644
index 0000000..277f441
--- /dev/null
+++ b/textures/ehlphabet_208_174.png
Binary files differ
diff --git a/textures/ehlphabet_208_175.png b/textures/ehlphabet_208_175.png
new file mode 100644
index 0000000..a840af9
--- /dev/null
+++ b/textures/ehlphabet_208_175.png
Binary files differ