From 8744a2c540792c6e66014dc4e4cbcd7df04a9519 Mon Sep 17 00:00:00 2001 From: codexp Date: Thu, 29 Mar 2018 23:48:09 +0200 Subject: - refactor/reformat code - add UTF-8 support - add cyrillic characters - add character texture generator - rerender all characters as 32x32 textures --- gen.js | 75 +++++++++++ init.lua | 287 +++++++++++++++++++++++++---------------- textures/ehlphabet_000.png | Bin 412 -> 125 bytes textures/ehlphabet_033.png | Bin 1253 -> 280 bytes textures/ehlphabet_034.png | Bin 1238 -> 205 bytes textures/ehlphabet_035.png | Bin 1608 -> 459 bytes textures/ehlphabet_036.png | Bin 1743 -> 571 bytes textures/ehlphabet_037.png | Bin 2460 -> 742 bytes textures/ehlphabet_038.png | Bin 2238 -> 668 bytes textures/ehlphabet_039.png | Bin 917 -> 197 bytes textures/ehlphabet_040.png | Bin 1447 -> 419 bytes textures/ehlphabet_041.png | Bin 1431 -> 411 bytes textures/ehlphabet_042.png | Bin 1387 -> 414 bytes textures/ehlphabet_043.png | Bin 516 -> 214 bytes textures/ehlphabet_044.png | Bin 912 -> 267 bytes textures/ehlphabet_045.png | Bin 488 -> 156 bytes textures/ehlphabet_046.png | Bin 723 -> 193 bytes textures/ehlphabet_047.png | Bin 1283 -> 346 bytes textures/ehlphabet_048.png | Bin 1850 -> 466 bytes textures/ehlphabet_049.png | Bin 872 -> 278 bytes textures/ehlphabet_050.png | Bin 1562 -> 427 bytes textures/ehlphabet_051.png | Bin 1685 -> 531 bytes textures/ehlphabet_052.png | Bin 1203 -> 338 bytes textures/ehlphabet_053.png | Bin 1521 -> 418 bytes textures/ehlphabet_054.png | Bin 1844 -> 526 bytes textures/ehlphabet_055.png | Bin 1349 -> 405 bytes textures/ehlphabet_056.png | Bin 1924 -> 534 bytes textures/ehlphabet_057.png | Bin 1848 -> 551 bytes textures/ehlphabet_058.png | Bin 954 -> 248 bytes textures/ehlphabet_059.png | Bin 1139 -> 331 bytes textures/ehlphabet_060.png | Bin 1203 -> 379 bytes textures/ehlphabet_061.png | Bin 494 -> 197 bytes textures/ehlphabet_062.png | Bin 1205 -> 404 bytes textures/ehlphabet_063.png | Bin 1397 -> 454 bytes textures/ehlphabet_064.png | Bin 2876 -> 1027 bytes textures/ehlphabet_065.png | Bin 1701 -> 498 bytes textures/ehlphabet_066.png | Bin 1590 -> 508 bytes textures/ehlphabet_067.png | Bin 1774 -> 553 bytes textures/ehlphabet_068.png | Bin 1549 -> 456 bytes textures/ehlphabet_069.png | Bin 1223 -> 430 bytes textures/ehlphabet_070.png | Bin 1078 -> 375 bytes textures/ehlphabet_071.png | Bin 1810 -> 558 bytes textures/ehlphabet_072.png | Bin 1182 -> 353 bytes textures/ehlphabet_073.png | Bin 791 -> 232 bytes textures/ehlphabet_074.png | Bin 1010 -> 300 bytes textures/ehlphabet_075.png | Bin 1614 -> 525 bytes textures/ehlphabet_076.png | Bin 988 -> 280 bytes textures/ehlphabet_077.png | Bin 2440 -> 590 bytes textures/ehlphabet_078.png | Bin 1391 -> 449 bytes textures/ehlphabet_079.png | Bin 1969 -> 576 bytes textures/ehlphabet_080.png | Bin 1302 -> 409 bytes textures/ehlphabet_081.png | Bin 2190 -> 681 bytes textures/ehlphabet_082.png | Bin 1562 -> 513 bytes textures/ehlphabet_083.png | Bin 1749 -> 535 bytes textures/ehlphabet_084.png | Bin 971 -> 341 bytes textures/ehlphabet_085.png | Bin 1503 -> 381 bytes textures/ehlphabet_086.png | Bin 1773 -> 507 bytes textures/ehlphabet_087.png | Bin 2151 -> 656 bytes textures/ehlphabet_088.png | Bin 1852 -> 536 bytes textures/ehlphabet_089.png | Bin 1465 -> 436 bytes textures/ehlphabet_090.png | Bin 1567 -> 478 bytes textures/ehlphabet_208_129.png | Bin 0 -> 504 bytes textures/ehlphabet_208_144.png | Bin 0 -> 498 bytes textures/ehlphabet_208_145.png | Bin 0 -> 469 bytes textures/ehlphabet_208_146.png | Bin 0 -> 508 bytes textures/ehlphabet_208_147.png | Bin 0 -> 303 bytes textures/ehlphabet_208_148.png | Bin 0 -> 519 bytes textures/ehlphabet_208_149.png | Bin 0 -> 430 bytes textures/ehlphabet_208_150.png | Bin 0 -> 668 bytes textures/ehlphabet_208_151.png | Bin 0 -> 525 bytes textures/ehlphabet_208_152.png | Bin 0 -> 481 bytes textures/ehlphabet_208_153.png | Bin 0 -> 595 bytes textures/ehlphabet_208_154.png | Bin 0 -> 503 bytes textures/ehlphabet_208_155.png | Bin 0 -> 437 bytes textures/ehlphabet_208_156.png | Bin 0 -> 590 bytes textures/ehlphabet_208_157.png | Bin 0 -> 353 bytes textures/ehlphabet_208_158.png | Bin 0 -> 576 bytes textures/ehlphabet_208_159.png | Bin 0 -> 276 bytes textures/ehlphabet_208_160.png | Bin 0 -> 409 bytes textures/ehlphabet_208_161.png | Bin 0 -> 553 bytes textures/ehlphabet_208_162.png | Bin 0 -> 341 bytes textures/ehlphabet_208_163.png | Bin 0 -> 489 bytes textures/ehlphabet_208_164.png | Bin 0 -> 592 bytes textures/ehlphabet_208_165.png | Bin 0 -> 536 bytes textures/ehlphabet_208_166.png | Bin 0 -> 353 bytes textures/ehlphabet_208_167.png | Bin 0 -> 412 bytes textures/ehlphabet_208_168.png | Bin 0 -> 324 bytes textures/ehlphabet_208_169.png | Bin 0 -> 400 bytes textures/ehlphabet_208_170.png | Bin 0 -> 446 bytes textures/ehlphabet_208_171.png | Bin 0 -> 466 bytes textures/ehlphabet_208_172.png | Bin 0 -> 391 bytes textures/ehlphabet_208_173.png | Bin 0 -> 576 bytes textures/ehlphabet_208_174.png | Bin 0 -> 701 bytes textures/ehlphabet_208_175.png | Bin 0 -> 478 bytes 94 files changed, 251 insertions(+), 111 deletions(-) create mode 100644 gen.js create mode 100644 textures/ehlphabet_208_129.png create mode 100644 textures/ehlphabet_208_144.png create mode 100644 textures/ehlphabet_208_145.png create mode 100644 textures/ehlphabet_208_146.png create mode 100644 textures/ehlphabet_208_147.png create mode 100644 textures/ehlphabet_208_148.png create mode 100644 textures/ehlphabet_208_149.png create mode 100644 textures/ehlphabet_208_150.png create mode 100644 textures/ehlphabet_208_151.png create mode 100644 textures/ehlphabet_208_152.png create mode 100644 textures/ehlphabet_208_153.png create mode 100644 textures/ehlphabet_208_154.png create mode 100644 textures/ehlphabet_208_155.png create mode 100644 textures/ehlphabet_208_156.png create mode 100644 textures/ehlphabet_208_157.png create mode 100644 textures/ehlphabet_208_158.png create mode 100644 textures/ehlphabet_208_159.png create mode 100644 textures/ehlphabet_208_160.png create mode 100644 textures/ehlphabet_208_161.png create mode 100644 textures/ehlphabet_208_162.png create mode 100644 textures/ehlphabet_208_163.png create mode 100644 textures/ehlphabet_208_164.png create mode 100644 textures/ehlphabet_208_165.png create mode 100644 textures/ehlphabet_208_166.png create mode 100644 textures/ehlphabet_208_167.png create mode 100644 textures/ehlphabet_208_168.png create mode 100644 textures/ehlphabet_208_169.png create mode 100644 textures/ehlphabet_208_170.png create mode 100644 textures/ehlphabet_208_171.png create mode 100644 textures/ehlphabet_208_172.png create mode 100644 textures/ehlphabet_208_173.png create mode 100644 textures/ehlphabet_208_174.png create mode 100644 textures/ehlphabet_208_175.png 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 = '
'; + +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 Binary files a/textures/ehlphabet_000.png and b/textures/ehlphabet_000.png differ diff --git a/textures/ehlphabet_033.png b/textures/ehlphabet_033.png index f1f4b92..f37e9f8 100644 Binary files a/textures/ehlphabet_033.png and b/textures/ehlphabet_033.png differ diff --git a/textures/ehlphabet_034.png b/textures/ehlphabet_034.png index 94d2d5a..3008f7e 100644 Binary files a/textures/ehlphabet_034.png and b/textures/ehlphabet_034.png differ diff --git a/textures/ehlphabet_035.png b/textures/ehlphabet_035.png index 57fe4da..6c903ae 100644 Binary files a/textures/ehlphabet_035.png and b/textures/ehlphabet_035.png differ diff --git a/textures/ehlphabet_036.png b/textures/ehlphabet_036.png index f77dac4..575ffe0 100644 Binary files a/textures/ehlphabet_036.png and b/textures/ehlphabet_036.png differ diff --git a/textures/ehlphabet_037.png b/textures/ehlphabet_037.png index 47b8463..6099699 100644 Binary files a/textures/ehlphabet_037.png and b/textures/ehlphabet_037.png differ diff --git a/textures/ehlphabet_038.png b/textures/ehlphabet_038.png index 5e609ec..9402360 100644 Binary files a/textures/ehlphabet_038.png and b/textures/ehlphabet_038.png differ diff --git a/textures/ehlphabet_039.png b/textures/ehlphabet_039.png index 1784364..1f701ff 100644 Binary files a/textures/ehlphabet_039.png and b/textures/ehlphabet_039.png differ diff --git a/textures/ehlphabet_040.png b/textures/ehlphabet_040.png index 917923f..a4f543b 100644 Binary files a/textures/ehlphabet_040.png and b/textures/ehlphabet_040.png differ diff --git a/textures/ehlphabet_041.png b/textures/ehlphabet_041.png index 1da8806..0be5693 100644 Binary files a/textures/ehlphabet_041.png and b/textures/ehlphabet_041.png differ diff --git a/textures/ehlphabet_042.png b/textures/ehlphabet_042.png index 3624504..17513d0 100644 Binary files a/textures/ehlphabet_042.png and b/textures/ehlphabet_042.png differ diff --git a/textures/ehlphabet_043.png b/textures/ehlphabet_043.png index 51a2afc..5471d43 100644 Binary files a/textures/ehlphabet_043.png and b/textures/ehlphabet_043.png differ diff --git a/textures/ehlphabet_044.png b/textures/ehlphabet_044.png index 8f1a236..c9bb74b 100644 Binary files a/textures/ehlphabet_044.png and b/textures/ehlphabet_044.png differ diff --git a/textures/ehlphabet_045.png b/textures/ehlphabet_045.png index ab20ded..efe128d 100644 Binary files a/textures/ehlphabet_045.png and b/textures/ehlphabet_045.png differ diff --git a/textures/ehlphabet_046.png b/textures/ehlphabet_046.png index cd1d9e5..194ccbc 100644 Binary files a/textures/ehlphabet_046.png and b/textures/ehlphabet_046.png differ diff --git a/textures/ehlphabet_047.png b/textures/ehlphabet_047.png index fc21cf9..9378823 100644 Binary files a/textures/ehlphabet_047.png and b/textures/ehlphabet_047.png differ diff --git a/textures/ehlphabet_048.png b/textures/ehlphabet_048.png index 4f4d151..1eabb8d 100644 Binary files a/textures/ehlphabet_048.png and b/textures/ehlphabet_048.png differ diff --git a/textures/ehlphabet_049.png b/textures/ehlphabet_049.png index bbdf963..536bde5 100644 Binary files a/textures/ehlphabet_049.png and b/textures/ehlphabet_049.png differ diff --git a/textures/ehlphabet_050.png b/textures/ehlphabet_050.png index 54803b5..937884a 100644 Binary files a/textures/ehlphabet_050.png and b/textures/ehlphabet_050.png differ diff --git a/textures/ehlphabet_051.png b/textures/ehlphabet_051.png index 8160352..0ae5008 100644 Binary files a/textures/ehlphabet_051.png and b/textures/ehlphabet_051.png differ diff --git a/textures/ehlphabet_052.png b/textures/ehlphabet_052.png index 583b8d1..d5acf46 100644 Binary files a/textures/ehlphabet_052.png and b/textures/ehlphabet_052.png differ diff --git a/textures/ehlphabet_053.png b/textures/ehlphabet_053.png index cfe6175..39afb93 100644 Binary files a/textures/ehlphabet_053.png and b/textures/ehlphabet_053.png differ diff --git a/textures/ehlphabet_054.png b/textures/ehlphabet_054.png index 2c1fc95..4fd4185 100644 Binary files a/textures/ehlphabet_054.png and b/textures/ehlphabet_054.png differ diff --git a/textures/ehlphabet_055.png b/textures/ehlphabet_055.png index 3b8d9ab..f2075a0 100644 Binary files a/textures/ehlphabet_055.png and b/textures/ehlphabet_055.png differ diff --git a/textures/ehlphabet_056.png b/textures/ehlphabet_056.png index d4dcbb6..6244e02 100644 Binary files a/textures/ehlphabet_056.png and b/textures/ehlphabet_056.png differ diff --git a/textures/ehlphabet_057.png b/textures/ehlphabet_057.png index 50b1bfb..f7d052b 100644 Binary files a/textures/ehlphabet_057.png and b/textures/ehlphabet_057.png differ diff --git a/textures/ehlphabet_058.png b/textures/ehlphabet_058.png index 39d59bf..6e4ceab 100644 Binary files a/textures/ehlphabet_058.png and b/textures/ehlphabet_058.png differ diff --git a/textures/ehlphabet_059.png b/textures/ehlphabet_059.png index 61c6b8d..b075f52 100644 Binary files a/textures/ehlphabet_059.png and b/textures/ehlphabet_059.png differ diff --git a/textures/ehlphabet_060.png b/textures/ehlphabet_060.png index 953dfce..6b7e0f9 100644 Binary files a/textures/ehlphabet_060.png and b/textures/ehlphabet_060.png differ diff --git a/textures/ehlphabet_061.png b/textures/ehlphabet_061.png index 41f1c98..00d99f4 100644 Binary files a/textures/ehlphabet_061.png and b/textures/ehlphabet_061.png differ diff --git a/textures/ehlphabet_062.png b/textures/ehlphabet_062.png index 1186866..30b96bf 100644 Binary files a/textures/ehlphabet_062.png and b/textures/ehlphabet_062.png differ diff --git a/textures/ehlphabet_063.png b/textures/ehlphabet_063.png index 9d58e1c..079eb00 100644 Binary files a/textures/ehlphabet_063.png and b/textures/ehlphabet_063.png differ diff --git a/textures/ehlphabet_064.png b/textures/ehlphabet_064.png index 92dfc51..cd5dd86 100644 Binary files a/textures/ehlphabet_064.png and b/textures/ehlphabet_064.png differ diff --git a/textures/ehlphabet_065.png b/textures/ehlphabet_065.png index 3c8f65d..cf990b0 100644 Binary files a/textures/ehlphabet_065.png and b/textures/ehlphabet_065.png differ diff --git a/textures/ehlphabet_066.png b/textures/ehlphabet_066.png index 1aa4e3d..036439b 100644 Binary files a/textures/ehlphabet_066.png and b/textures/ehlphabet_066.png differ diff --git a/textures/ehlphabet_067.png b/textures/ehlphabet_067.png index b2ceea3..8aeee70 100644 Binary files a/textures/ehlphabet_067.png and b/textures/ehlphabet_067.png differ diff --git a/textures/ehlphabet_068.png b/textures/ehlphabet_068.png index 24eaa67..d2ec4d4 100644 Binary files a/textures/ehlphabet_068.png and b/textures/ehlphabet_068.png differ diff --git a/textures/ehlphabet_069.png b/textures/ehlphabet_069.png index c251848..fa7f011 100644 Binary files a/textures/ehlphabet_069.png and b/textures/ehlphabet_069.png differ diff --git a/textures/ehlphabet_070.png b/textures/ehlphabet_070.png index bc71fd8..b8bbf30 100644 Binary files a/textures/ehlphabet_070.png and b/textures/ehlphabet_070.png differ diff --git a/textures/ehlphabet_071.png b/textures/ehlphabet_071.png index 572adac..b9ade71 100644 Binary files a/textures/ehlphabet_071.png and b/textures/ehlphabet_071.png differ diff --git a/textures/ehlphabet_072.png b/textures/ehlphabet_072.png index bd467df..9b1b58d 100644 Binary files a/textures/ehlphabet_072.png and b/textures/ehlphabet_072.png differ diff --git a/textures/ehlphabet_073.png b/textures/ehlphabet_073.png index 070b1fa..2c559dc 100644 Binary files a/textures/ehlphabet_073.png and b/textures/ehlphabet_073.png differ diff --git a/textures/ehlphabet_074.png b/textures/ehlphabet_074.png index b72c73c..5fd8c10 100644 Binary files a/textures/ehlphabet_074.png and b/textures/ehlphabet_074.png differ diff --git a/textures/ehlphabet_075.png b/textures/ehlphabet_075.png index b49ca16..3ade4b7 100644 Binary files a/textures/ehlphabet_075.png and b/textures/ehlphabet_075.png differ diff --git a/textures/ehlphabet_076.png b/textures/ehlphabet_076.png index 01b00dd..3986744 100644 Binary files a/textures/ehlphabet_076.png and b/textures/ehlphabet_076.png differ diff --git a/textures/ehlphabet_077.png b/textures/ehlphabet_077.png index f02bfad..234204f 100644 Binary files a/textures/ehlphabet_077.png and b/textures/ehlphabet_077.png differ diff --git a/textures/ehlphabet_078.png b/textures/ehlphabet_078.png index 863d402..d5f9f68 100644 Binary files a/textures/ehlphabet_078.png and b/textures/ehlphabet_078.png differ diff --git a/textures/ehlphabet_079.png b/textures/ehlphabet_079.png index 38d897b..f246600 100644 Binary files a/textures/ehlphabet_079.png and b/textures/ehlphabet_079.png differ diff --git a/textures/ehlphabet_080.png b/textures/ehlphabet_080.png index 7ee4604..972f7d5 100644 Binary files a/textures/ehlphabet_080.png and b/textures/ehlphabet_080.png differ diff --git a/textures/ehlphabet_081.png b/textures/ehlphabet_081.png index c8876d5..134280d 100644 Binary files a/textures/ehlphabet_081.png and b/textures/ehlphabet_081.png differ diff --git a/textures/ehlphabet_082.png b/textures/ehlphabet_082.png index 650f688..368369d 100644 Binary files a/textures/ehlphabet_082.png and b/textures/ehlphabet_082.png differ diff --git a/textures/ehlphabet_083.png b/textures/ehlphabet_083.png index fa82f90..10fe703 100644 Binary files a/textures/ehlphabet_083.png and b/textures/ehlphabet_083.png differ diff --git a/textures/ehlphabet_084.png b/textures/ehlphabet_084.png index 3102cf4..fe37e93 100644 Binary files a/textures/ehlphabet_084.png and b/textures/ehlphabet_084.png differ diff --git a/textures/ehlphabet_085.png b/textures/ehlphabet_085.png index c6cf1b3..7156fed 100644 Binary files a/textures/ehlphabet_085.png and b/textures/ehlphabet_085.png differ diff --git a/textures/ehlphabet_086.png b/textures/ehlphabet_086.png index 6aede3f..501453c 100644 Binary files a/textures/ehlphabet_086.png and b/textures/ehlphabet_086.png differ diff --git a/textures/ehlphabet_087.png b/textures/ehlphabet_087.png index 4bbd930..69b8cf1 100644 Binary files a/textures/ehlphabet_087.png and b/textures/ehlphabet_087.png differ diff --git a/textures/ehlphabet_088.png b/textures/ehlphabet_088.png index 651e94f..5cced99 100644 Binary files a/textures/ehlphabet_088.png and b/textures/ehlphabet_088.png differ diff --git a/textures/ehlphabet_089.png b/textures/ehlphabet_089.png index 6de231e..4b37b18 100644 Binary files a/textures/ehlphabet_089.png and b/textures/ehlphabet_089.png differ diff --git a/textures/ehlphabet_090.png b/textures/ehlphabet_090.png index 40692cb..88201d8 100644 Binary files a/textures/ehlphabet_090.png and b/textures/ehlphabet_090.png differ diff --git a/textures/ehlphabet_208_129.png b/textures/ehlphabet_208_129.png new file mode 100644 index 0000000..c31a7c3 Binary files /dev/null and b/textures/ehlphabet_208_129.png differ diff --git a/textures/ehlphabet_208_144.png b/textures/ehlphabet_208_144.png new file mode 100644 index 0000000..cf990b0 Binary files /dev/null and b/textures/ehlphabet_208_144.png differ diff --git a/textures/ehlphabet_208_145.png b/textures/ehlphabet_208_145.png new file mode 100644 index 0000000..2ab0a81 Binary files /dev/null and b/textures/ehlphabet_208_145.png differ diff --git a/textures/ehlphabet_208_146.png b/textures/ehlphabet_208_146.png new file mode 100644 index 0000000..036439b Binary files /dev/null and b/textures/ehlphabet_208_146.png differ diff --git a/textures/ehlphabet_208_147.png b/textures/ehlphabet_208_147.png new file mode 100644 index 0000000..aebd805 Binary files /dev/null and b/textures/ehlphabet_208_147.png differ diff --git a/textures/ehlphabet_208_148.png b/textures/ehlphabet_208_148.png new file mode 100644 index 0000000..ea50985 Binary files /dev/null and b/textures/ehlphabet_208_148.png differ diff --git a/textures/ehlphabet_208_149.png b/textures/ehlphabet_208_149.png new file mode 100644 index 0000000..fa7f011 Binary files /dev/null and b/textures/ehlphabet_208_149.png differ diff --git a/textures/ehlphabet_208_150.png b/textures/ehlphabet_208_150.png new file mode 100644 index 0000000..0fcffa2 Binary files /dev/null and b/textures/ehlphabet_208_150.png differ diff --git a/textures/ehlphabet_208_151.png b/textures/ehlphabet_208_151.png new file mode 100644 index 0000000..5400154 Binary files /dev/null and b/textures/ehlphabet_208_151.png differ diff --git a/textures/ehlphabet_208_152.png b/textures/ehlphabet_208_152.png new file mode 100644 index 0000000..0b3bea7 Binary files /dev/null and b/textures/ehlphabet_208_152.png differ diff --git a/textures/ehlphabet_208_153.png b/textures/ehlphabet_208_153.png new file mode 100644 index 0000000..0fa17a1 Binary files /dev/null and b/textures/ehlphabet_208_153.png differ diff --git a/textures/ehlphabet_208_154.png b/textures/ehlphabet_208_154.png new file mode 100644 index 0000000..4cda076 Binary files /dev/null and b/textures/ehlphabet_208_154.png differ diff --git a/textures/ehlphabet_208_155.png b/textures/ehlphabet_208_155.png new file mode 100644 index 0000000..7d08ab7 Binary files /dev/null and b/textures/ehlphabet_208_155.png differ diff --git a/textures/ehlphabet_208_156.png b/textures/ehlphabet_208_156.png new file mode 100644 index 0000000..234204f Binary files /dev/null and b/textures/ehlphabet_208_156.png differ diff --git a/textures/ehlphabet_208_157.png b/textures/ehlphabet_208_157.png new file mode 100644 index 0000000..9b1b58d Binary files /dev/null and b/textures/ehlphabet_208_157.png differ diff --git a/textures/ehlphabet_208_158.png b/textures/ehlphabet_208_158.png new file mode 100644 index 0000000..f246600 Binary files /dev/null and b/textures/ehlphabet_208_158.png differ diff --git a/textures/ehlphabet_208_159.png b/textures/ehlphabet_208_159.png new file mode 100644 index 0000000..cad814e Binary files /dev/null and b/textures/ehlphabet_208_159.png differ diff --git a/textures/ehlphabet_208_160.png b/textures/ehlphabet_208_160.png new file mode 100644 index 0000000..972f7d5 Binary files /dev/null and b/textures/ehlphabet_208_160.png differ diff --git a/textures/ehlphabet_208_161.png b/textures/ehlphabet_208_161.png new file mode 100644 index 0000000..8aeee70 Binary files /dev/null and b/textures/ehlphabet_208_161.png differ diff --git a/textures/ehlphabet_208_162.png b/textures/ehlphabet_208_162.png new file mode 100644 index 0000000..fe37e93 Binary files /dev/null and b/textures/ehlphabet_208_162.png differ diff --git a/textures/ehlphabet_208_163.png b/textures/ehlphabet_208_163.png new file mode 100644 index 0000000..8926d78 Binary files /dev/null and b/textures/ehlphabet_208_163.png differ diff --git a/textures/ehlphabet_208_164.png b/textures/ehlphabet_208_164.png new file mode 100644 index 0000000..035a701 Binary files /dev/null and b/textures/ehlphabet_208_164.png differ diff --git a/textures/ehlphabet_208_165.png b/textures/ehlphabet_208_165.png new file mode 100644 index 0000000..5cced99 Binary files /dev/null and b/textures/ehlphabet_208_165.png differ diff --git a/textures/ehlphabet_208_166.png b/textures/ehlphabet_208_166.png new file mode 100644 index 0000000..0cc57e0 Binary files /dev/null and b/textures/ehlphabet_208_166.png differ diff --git a/textures/ehlphabet_208_167.png b/textures/ehlphabet_208_167.png new file mode 100644 index 0000000..7c9903c Binary files /dev/null and b/textures/ehlphabet_208_167.png differ diff --git a/textures/ehlphabet_208_168.png b/textures/ehlphabet_208_168.png new file mode 100644 index 0000000..c8bec97 Binary files /dev/null and b/textures/ehlphabet_208_168.png differ diff --git a/textures/ehlphabet_208_169.png b/textures/ehlphabet_208_169.png new file mode 100644 index 0000000..b1805fd Binary files /dev/null and b/textures/ehlphabet_208_169.png differ diff --git a/textures/ehlphabet_208_170.png b/textures/ehlphabet_208_170.png new file mode 100644 index 0000000..7a55ad9 Binary files /dev/null and b/textures/ehlphabet_208_170.png differ diff --git a/textures/ehlphabet_208_171.png b/textures/ehlphabet_208_171.png new file mode 100644 index 0000000..ee0f031 Binary files /dev/null and b/textures/ehlphabet_208_171.png differ diff --git a/textures/ehlphabet_208_172.png b/textures/ehlphabet_208_172.png new file mode 100644 index 0000000..96379d0 Binary files /dev/null and b/textures/ehlphabet_208_172.png differ diff --git a/textures/ehlphabet_208_173.png b/textures/ehlphabet_208_173.png new file mode 100644 index 0000000..12e44e2 Binary files /dev/null and b/textures/ehlphabet_208_173.png differ diff --git a/textures/ehlphabet_208_174.png b/textures/ehlphabet_208_174.png new file mode 100644 index 0000000..277f441 Binary files /dev/null and b/textures/ehlphabet_208_174.png differ diff --git a/textures/ehlphabet_208_175.png b/textures/ehlphabet_208_175.png new file mode 100644 index 0000000..a840af9 Binary files /dev/null and b/textures/ehlphabet_208_175.png differ -- cgit v1.2.3