diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 300025e..6124b53 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -10,7 +10,7 @@ jobs: matrix: cfg: - { image: 'registry.gitlab.com/minetest/minetest/server:5.0.1', mtg: false } - - { image: 'ghcr.io/minetest/minetest:5.9.0', mtg: true } + - { image: 'ghcr.io/minetest/minetest:5.10.0', mtg: true } steps: - uses: actions/checkout@main diff --git a/.luacheckrc b/.luacheckrc index d079c76..6612dda 100644 --- a/.luacheckrc +++ b/.luacheckrc @@ -15,6 +15,7 @@ ignore = { max_line_length = 200 read_globals = { + "core", "default", "digiline", "doors", diff --git a/mesecons/locale/mesecons.ru.tr b/mesecons/locale/mesecons.ru.tr new file mode 100644 index 0000000..787f7d8 --- /dev/null +++ b/mesecons/locale/mesecons.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons + +### oldwires.lua ### +Mesecons=Мезеконы diff --git a/mesecons/locale/mesecons.uk.tr b/mesecons/locale/mesecons.uk.tr new file mode 100644 index 0000000..8d49577 --- /dev/null +++ b/mesecons/locale/mesecons.uk.tr @@ -0,0 +1,5 @@ +# textdomain: mesecons + +### oldwires.lua ### +Mesecons=Месекони +Mod that implements a ton of items related to digital circuitry.=Мод, який реалізує масу елементів, пов’язаних із цифровою схемою. diff --git a/mesecons_blinkyplant/locale/mesecons_blinkyplant.ru.tr b/mesecons_blinkyplant/locale/mesecons_blinkyplant.ru.tr new file mode 100644 index 0000000..6f25295 --- /dev/null +++ b/mesecons_blinkyplant/locale/mesecons_blinkyplant.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_blinkyplant + +### init.lua ### +Blinky Plant=Мигающий цветок diff --git a/mesecons_blinkyplant/locale/mesecons_blinkyplant.uk.tr b/mesecons_blinkyplant/locale/mesecons_blinkyplant.uk.tr new file mode 100644 index 0000000..ffe12f5 --- /dev/null +++ b/mesecons_blinkyplant/locale/mesecons_blinkyplant.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_blinkyplant + +### init.lua ### +Blinky Plant=Миготлива квітка diff --git a/mesecons_button/locale/mesecons_button.ru.tr b/mesecons_button/locale/mesecons_button.ru.tr new file mode 100644 index 0000000..036723d --- /dev/null +++ b/mesecons_button/locale/mesecons_button.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_button + +### init.lua ### +Button=Кнопка diff --git a/mesecons_button/locale/mesecons_button.uk.tr b/mesecons_button/locale/mesecons_button.uk.tr new file mode 100644 index 0000000..036723d --- /dev/null +++ b/mesecons_button/locale/mesecons_button.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_button + +### init.lua ### +Button=Кнопка diff --git a/mesecons_commandblock/init.lua b/mesecons_commandblock/init.lua index 63fa702..853f16c 100644 --- a/mesecons_commandblock/init.lua +++ b/mesecons_commandblock/init.lua @@ -1,4 +1,5 @@ local S = minetest.get_translator(minetest.get_current_modname()) +local param_maxlen = mesecon.setting("commandblock_param_maxlen", 10000) minetest.register_chatcommand("say", { params = "", @@ -48,7 +49,7 @@ minetest.register_chatcommand("hp", { local function initialize_data(meta) local commands = minetest.formspec_escape(meta:get_string("commands")) meta:set_string("formspec", - "invsize[9,5;]" .. + "size[9,5]" .. "textarea[0.5,0.5;8.5,4;commands;Commands;"..commands.."]" .. "label[1,3.8;@nearest, @farthest, and @random are replaced by the respective player names]" .. "button_exit[3.3,4.5;2,1;submit;Submit]") @@ -156,6 +157,11 @@ local function commandblock_action_on(pos, node) minetest.chat_send_player(owner, "The command "..cmd.." does not exist") return end + if #param > param_maxlen then + minetest.chat_send_player(owner, "Command parameters are limited to max. " .. + param_maxlen .. " bytes.") + return + end local has_privs, missing_privs = minetest.check_player_privs(owner, cmddef.privs) if not has_privs then minetest.chat_send_player(owner, "You don't have permission " diff --git a/mesecons_commandblock/locale/mesecons_commandblock.ru.tr b/mesecons_commandblock/locale/mesecons_commandblock.ru.tr new file mode 100644 index 0000000..64122e4 --- /dev/null +++ b/mesecons_commandblock/locale/mesecons_commandblock.ru.tr @@ -0,0 +1,7 @@ +# textdomain: mesecons_commandblock + +### init.lua ### +Say as the server=Сказать <текст> от имени сервера +Say to privately=Сказать <текст> игроку <имя> в личном сообщении +Set health of to hitpoints=Установить здоровье игрока <имя> на <значение> хитпоинтов +Command Block=Комадный блок diff --git a/mesecons_commandblock/locale/mesecons_commandblock.uk.tr b/mesecons_commandblock/locale/mesecons_commandblock.uk.tr new file mode 100644 index 0000000..1af4842 --- /dev/null +++ b/mesecons_commandblock/locale/mesecons_commandblock.uk.tr @@ -0,0 +1,7 @@ +# textdomain: mesecons_commandblock + +### init.lua ### +Say as the server=Сказати <текст> від імені сервера +Say to privately=Сказати <текст> гравцю <ім'я> в приватному повідомленні +Set health of to hitpoints=Встановити здоров'я гравця <ім'я> на <значення> ХП +Command Block=Командний блок diff --git a/mesecons_delayer/locale/mesecons_delayer.ru.tr b/mesecons_delayer/locale/mesecons_delayer.ru.tr new file mode 100644 index 0000000..53ab893 --- /dev/null +++ b/mesecons_delayer/locale/mesecons_delayer.ru.tr @@ -0,0 +1,5 @@ +# textdomain: mesecons_delayer + +### init.lua ### +Delayer=Элемент задержки +You hacker you=Ти хакер, ти diff --git a/mesecons_delayer/locale/mesecons_delayer.uk.tr b/mesecons_delayer/locale/mesecons_delayer.uk.tr new file mode 100644 index 0000000..c262bcc --- /dev/null +++ b/mesecons_delayer/locale/mesecons_delayer.uk.tr @@ -0,0 +1,5 @@ +# textdomain: mesecons_delayer + +### init.lua ### +Delayer=Затримувач +You hacker you=Ти хакер, ти diff --git a/mesecons_detector/init.lua b/mesecons_detector/init.lua index a8d0300..354f3dc 100644 --- a/mesecons_detector/init.lua +++ b/mesecons_detector/init.lua @@ -66,7 +66,8 @@ local object_detector_digiline = { effector = { action = function(pos, _, channel, msg) local meta = minetest.get_meta(pos) - if channel == meta:get_string("digiline_channel") then + if channel == meta:get_string("digiline_channel") and + (type(msg) == "string" or type(msg) == "number") then meta:set_string("scanname", msg) object_detector_make_formspec(pos) end @@ -110,14 +111,16 @@ minetest.register_node("mesecons_detector:object_detector_on", { on_blast = mesecon.on_blastnode, }) -minetest.register_craft({ - output = 'mesecons_detector:object_detector_off', - recipe = { - {"mesecons_gamecompat:steel_ingot", "mesecons_gamecompat:steel_ingot", "mesecons_gamecompat:steel_ingot"}, - {"mesecons_gamecompat:steel_ingot", "mesecons_luacontroller:luacontroller0000", "mesecons_gamecompat:steel_ingot"}, - {"mesecons_gamecompat:steel_ingot", "group:mesecon_conductor_craftable", "mesecons_gamecompat:steel_ingot"}, - } -}) +if minetest.get_modpath("mesecons_luacontroller") then + minetest.register_craft({ + output = 'mesecons_detector:object_detector_off', + recipe = { + {"mesecons_gamecompat:steel_ingot", "mesecons_gamecompat:steel_ingot", "mesecons_gamecompat:steel_ingot"}, + {"mesecons_gamecompat:steel_ingot", "mesecons_luacontroller:luacontroller0000", "mesecons_gamecompat:steel_ingot"}, + {"mesecons_gamecompat:steel_ingot", "group:mesecon_conductor_craftable", "mesecons_gamecompat:steel_ingot"}, + } + }) +end minetest.register_craft({ output = 'mesecons_detector:object_detector_off', @@ -286,14 +289,16 @@ minetest.register_node("mesecons_detector:node_detector_on", { on_blast = mesecon.on_blastnode, }) -minetest.register_craft({ - output = 'mesecons_detector:node_detector_off', - recipe = { - {"mesecons_gamecompat:steel_ingot", "group:mesecon_conductor_craftable", "mesecons_gamecompat:steel_ingot"}, - {"mesecons_gamecompat:steel_ingot", "mesecons_luacontroller:luacontroller0000", "mesecons_gamecompat:steel_ingot"}, - {"mesecons_gamecompat:steel_ingot", "mesecons_gamecompat:steel_ingot", "mesecons_gamecompat:steel_ingot"}, - } -}) +if minetest.get_modpath("mesecons_luacontroller") then + minetest.register_craft({ + output = 'mesecons_detector:node_detector_off', + recipe = { + {"mesecons_gamecompat:steel_ingot", "group:mesecon_conductor_craftable", "mesecons_gamecompat:steel_ingot"}, + {"mesecons_gamecompat:steel_ingot", "mesecons_luacontroller:luacontroller0000", "mesecons_gamecompat:steel_ingot"}, + {"mesecons_gamecompat:steel_ingot", "mesecons_gamecompat:steel_ingot", "mesecons_gamecompat:steel_ingot"}, + } + }) +end minetest.register_craft({ output = 'mesecons_detector:node_detector_off', diff --git a/mesecons_detector/locale/mesecons_detector.ru.tr b/mesecons_detector/locale/mesecons_detector.ru.tr new file mode 100644 index 0000000..3b19412 --- /dev/null +++ b/mesecons_detector/locale/mesecons_detector.ru.tr @@ -0,0 +1,5 @@ +# textdomain: mesecons_detector + +### init.lua ### +Player Detector=Детектор игрока +Node Detector=Детектор блока diff --git a/mesecons_detector/locale/mesecons_detector.uk.tr b/mesecons_detector/locale/mesecons_detector.uk.tr new file mode 100644 index 0000000..9f8d58d --- /dev/null +++ b/mesecons_detector/locale/mesecons_detector.uk.tr @@ -0,0 +1,5 @@ +# textdomain: mesecons_detector + +### init.lua ### +Player Detector=Детектор гравця +Node Detector=Детектор блоку diff --git a/mesecons_detector/mod.conf b/mesecons_detector/mod.conf index 6d5a0e6..ee5611b 100644 --- a/mesecons_detector/mod.conf +++ b/mesecons_detector/mod.conf @@ -1,2 +1,3 @@ name = mesecons_detector depends = mesecons, mesecons_gamecompat, mesecons_materials +optional_depends = mesecons_luacontroller diff --git a/mesecons_doors/mod.conf b/mesecons_doors/mod.conf deleted file mode 100644 index 4daab34..0000000 --- a/mesecons_doors/mod.conf +++ /dev/null @@ -1,3 +0,0 @@ -name = mesecons_doors -depends = mesecons, doors -optional_depends = xpanes diff --git a/mesecons_extrawires/init.lua b/mesecons_extrawires/init.lua index 02dc1a6..bed0e65 100644 --- a/mesecons_extrawires/init.lua +++ b/mesecons_extrawires/init.lua @@ -3,4 +3,6 @@ dofile(minetest.get_modpath("mesecons_extrawires").."/tjunction.lua"); dofile(minetest.get_modpath("mesecons_extrawires").."/corner.lua"); dofile(minetest.get_modpath("mesecons_extrawires").."/doublecorner.lua"); dofile(minetest.get_modpath("mesecons_extrawires").."/vertical.lua"); -dofile(minetest.get_modpath("mesecons_extrawires").."/mesewire.lua"); +if core.registered_nodes["mesecons_gamecompat:mese"] then + dofile(minetest.get_modpath("mesecons_extrawires").."/mesewire.lua"); +end diff --git a/mesecons_extrawires/locale/mesecons_extrawires.ru.tr b/mesecons_extrawires/locale/mesecons_extrawires.ru.tr new file mode 100644 index 0000000..3826f94 --- /dev/null +++ b/mesecons_extrawires/locale/mesecons_extrawires.ru.tr @@ -0,0 +1,20 @@ +# textdomain: mesecons_extrawires + +### corner.lua ### +Insulated Mesecon Corner=Изолированный мезекон (угол) + +### crossover.lua ### +Insulated Mesecon Crossover=Изолированный мезекон (перекрестие) +You hacker you!=Ти хакер ти! + +### doublecorner.lua ### +Insulated Mesecon Double Corner=Изолированный мезекон (двойной угол) + +### mesewire.lua ### +Mese Wire=Мезе-провод + +### tjunction.lua ### +Insulated Mesecon T-junction=Изолированный мезекон (Т-соединение) + +### vertical.lua ### +Vertical Mesecon=Вертикальный мезекон diff --git a/mesecons_extrawires/locale/mesecons_extrawires.uk.tr b/mesecons_extrawires/locale/mesecons_extrawires.uk.tr new file mode 100644 index 0000000..3a3daa7 --- /dev/null +++ b/mesecons_extrawires/locale/mesecons_extrawires.uk.tr @@ -0,0 +1,20 @@ +# textdomain: mesecons_extrawires + +### corner.lua ### +Insulated Mesecon Corner=Ізольований месекон (кут) + +### crossover.lua ### +Insulated Mesecon Crossover=Ізольований месекон (перехрестя) +You hacker you!=Ти хакер ти! + +### doublecorner.lua ### +Insulated Mesecon Double Corner=Ізольований месекон (подвійний кут) + +### mesewire.lua ### +Mese Wire=Месе-дріт + +### tjunction.lua ### +Insulated Mesecon T-junction=Ізольований месекон (T-з'єднання) + +### vertical.lua ### +Vertical Mesecon=Вертикальний месекон diff --git a/mesecons_extrawires/vertical.lua b/mesecons_extrawires/vertical.lua index 636bb37..925bee3 100644 --- a/mesecons_extrawires/vertical.lua +++ b/mesecons_extrawires/vertical.lua @@ -40,6 +40,8 @@ local bottom_rules = { {x=0, y=2, z=0} -- receive power from pressure plate / detector / ... 2 nodes above } +local use_texture_alpha = minetest.features.use_texture_alpha_string_modes and "clip" or nil + local function is_vertical_conductor(nodename) local def = minetest.registered_nodes[nodename] return def and def.is_vertical_conductor @@ -96,6 +98,7 @@ mesecon.register_node("mesecons_extrawires:vertical", { after_place_node = vertical_update, after_dig_node = vertical_update, sounds = mesecon.node_sound.default, + use_texture_alpha = use_texture_alpha, },{ tiles = {"mesecons_wire_off.png"}, groups = {dig_immediate=3}, @@ -130,6 +133,7 @@ mesecon.register_node("mesecons_extrawires:vertical_top", { after_place_node = vertical_update, after_dig_node = vertical_update, sounds = mesecon.node_sound.default, + use_texture_alpha = use_texture_alpha, },{ tiles = {"mesecons_wire_off.png"}, mesecons = {conductor = { @@ -162,6 +166,7 @@ mesecon.register_node("mesecons_extrawires:vertical_bottom", { after_place_node = vertical_update, after_dig_node = vertical_update, sounds = mesecon.node_sound.default, + use_texture_alpha = use_texture_alpha, },{ tiles = {"mesecons_wire_off.png"}, mesecons = {conductor = { diff --git a/mesecons_fpga/locale/mesecons_fpga.ru.tr b/mesecons_fpga/locale/mesecons_fpga.ru.tr new file mode 100644 index 0000000..b3f5dfe --- /dev/null +++ b/mesecons_fpga/locale/mesecons_fpga.ru.tr @@ -0,0 +1,7 @@ +# textdomain: mesecons_fpga + +### init.lua ### +FPGA=ПЛИС + +### tool.lua ### +FPGA Programmer=ПЛИС-программер diff --git a/mesecons_fpga/locale/mesecons_fpga.uk.tr b/mesecons_fpga/locale/mesecons_fpga.uk.tr new file mode 100644 index 0000000..9509413 --- /dev/null +++ b/mesecons_fpga/locale/mesecons_fpga.uk.tr @@ -0,0 +1,7 @@ +# textdomain: mesecons_fpga + +### init.lua ### +FPGA=ПКВМ + +### tool.lua ### +FPGA Programmer=ПКВМ-программер diff --git a/mesecons_gamecompat/compat_mcl.lua b/mesecons_gamecompat/compat_mcla.lua similarity index 55% rename from mesecons_gamecompat/compat_mcl.lua rename to mesecons_gamecompat/compat_mcla.lua index 10e1a8a..384dbc6 100644 --- a/mesecons_gamecompat/compat_mcl.lua +++ b/mesecons_gamecompat/compat_mcla.lua @@ -7,13 +7,13 @@ minetest.register_alias("mesecons_gamecompat:coalblock", "mcl_core:coalblock") minetest.register_alias("mesecons_gamecompat:cobble", "mcl_core:cobble") minetest.register_alias("mesecons_gamecompat:glass", "mcl_core:glass") minetest.register_alias("mesecons_gamecompat:lava_source", "mcl_core:lava_source") -minetest.register_alias("mesecons_gamecompat:mese", "mesecons:redstoneblock") -minetest.register_alias("mesecons_gamecompat:mese_crystal", "mesecoms:redstone") -minetest.register_alias("mesecons_gamecompat:mese_crystal_fragment", "mesecons:redstone") +minetest.register_alias("mesecons_gamecompat:mese", "mcl_redstone_torch:redstoneblock") +minetest.register_alias("mesecons_gamecompat:mese_crystal", "mcl_redstone:redstone") +minetest.register_alias("mesecons_gamecompat:mese_crystal_fragment", "mcl_redstone:redstone") minetest.register_alias("mesecons_gamecompat:obsidian_glass", "mcl_core:glass") minetest.register_alias("mesecons_gamecompat:stone", "mcl_core:stone") minetest.register_alias("mesecons_gamecompat:steel_ingot", "mcl_core:iron_ingot") -minetest.register_alias("mesecons_gamecompat:steelblock", "mcl_core:steelblock") +minetest.register_alias("mesecons_gamecompat:steelblock", "mcl_core:ironblock") minetest.register_alias("mesecons_gamecompat:torch", "mcl_torches:torch") if minetest.get_modpath("mcl_dyes") then @@ -41,3 +41,48 @@ end -- Textures mesecon.texture.steel_block = "default_steel_block.png" + +if minetest.get_modpath("mesecons_mvps") then + for k,v in pairs(core.registered_nodes) do + local is_stopper = mesecon.mvps_stoppers[k] + if v.groups and v.groups.unmovable_by_piston then + mesecon.register_mvps_stopper(k) + end + if is_stopper then + local groups = table.copy(v.groups or {}) + groups.unmovable_by_piston = 1 + v.groups = groups + core.register_node(":"..k, v) + end + end + for k,v in pairs(core.registered_entities) do + local is_unmov = mesecon.mvps_unmov[k] + if v._mcl_pistons_unmovable then + mesecon.register_mvps_unmov(k) + end + if is_unmov then + v._mcl_pistons_unmovable = true + core.register_entity(":"..k, v) + end + end + + core.register_on_mods_loaded(function() + for _,v in pairs(core.registered_nodes) do + if v.groups and v.groups.bed then + mesecon.register_mvps_stopper(v.name) + end + if v.groups and v.groups.door then + mesecon.register_mvps_stopper(v.name) + end + end + end) +end + +core.register_craft({ + output = "mesecons:wire_00000000_off", + recipe = {{"mcl_redstone:redstone"}} +}) +core.register_craft({ + output = "mcl_redstone:redstone", + recipe = {{"mesecons:wire_00000000_off"}} +}) diff --git a/mesecons_gamecompat/compat_mtg.lua b/mesecons_gamecompat/compat_mtg.lua index e658880..15a0abe 100644 --- a/mesecons_gamecompat/compat_mtg.lua +++ b/mesecons_gamecompat/compat_mtg.lua @@ -48,28 +48,26 @@ if minetest.get_modpath("mesecons_mvps") then for _, name in ipairs({ "default:chest_locked", "default:chest_locked_open", - "doors:door_steel_b_1", -- old style doors - "doors:door_steel_b_2", -- - "doors:door_steel_t_1", -- - "doors:door_steel_t_2", -- - "doors:door_steel_a", -- new style doors - "doors:door_steel_b", -- - "doors:door_steel_c", -- - "doors:door_steel_d", -- "doors:hidden", "doors:trapdoor_steel", "doors:trapdoor_steel_open", - "beds:bed_bottom", - "beds:bed_top", - "beds:fancy_bed_bottom", - "beds:fancy_bed_top", - "xpanes:door_steel_bar_a", - "xpanes:door_steel_bar_b", - "xpanes:door_steel_bar_c", - "xpanes:door_steel_bar_d", "xpanes:trapdoor_steel_bar", "xpanes:trapdoor_steel_bar_open", }) do mesecon.register_mvps_stopper(name) end + core.register_on_mods_loaded(function() + if minetest.get_modpath("doors") then + for k,_ in pairs(doors.registered_doors) do + mesecon.register_mvps_stopper(k) + end + end + if minetest.get_modpath("beds") then + for _,v in pairs(core.registered_nodes) do + if v.groups and v.groups.bed then + mesecon.register_mvps_stopper(v.name) + end + end + end + end) end diff --git a/mesecons_doors/init.lua b/mesecons_gamecompat/doors.lua similarity index 85% rename from mesecons_doors/init.lua rename to mesecons_gamecompat/doors.lua index 18f5d3a..8b6b33c 100644 --- a/mesecons_doors/init.lua +++ b/mesecons_gamecompat/doors.lua @@ -22,6 +22,11 @@ end local function meseconify_door(name) if minetest.registered_items[name .. "_b_1"] then -- old style double-node doors + if minetest.registered_items[name .. "_b_1"].mesecons then + minetest.log("info", "[mesecons_doors] Not touching door " .. name) + return + end + local function toggle_state1 (pos) on_rightclick(pos, 1, name.."_t_1", name.."_b_2", name.."_t_2", {1,2,3,0}) end @@ -47,6 +52,10 @@ local function meseconify_door(name) }) elseif minetest.registered_items[name .. "_a"] then -- new style mesh node based doors + if minetest.registered_items[name .. "_a"].mesecons then + minetest.log("info", "[mesecons_doors] Not touching door " .. name) + return + end local override = { mesecons = {effector = { action_on = function(pos) @@ -73,15 +82,6 @@ local function meseconify_door(name) end end -local doors_list = { - "doors:door_wood", - "doors:door_steel", - "doors:door_glass", - "doors:door_obsidian_glass", - "xpanes:door_steel_bar", -} -for i=1,#doors_list do meseconify_door(doors_list[i]) end - -- Trapdoor local function trapdoor_switch(name) return function(pos, node) @@ -131,9 +131,15 @@ local function meseconify_trapdoor(name) end end -local trapdoors_list = { - "doors:trapdoor", - "doors:trapdoor_steel", - "xpanes:trapdoor_steel_bar" -} -for i=1,#trapdoors_list do meseconify_trapdoor(trapdoors_list[i]) end +minetest.register_on_mods_loaded(function() + for k,_ in pairs(doors.registered_doors) do + if k:find("_a$") then + meseconify_door(k:sub(1,-3)) + end + end + for k,_ in pairs(doors.registered_trapdoors) do + if not k:find("_open$") then + meseconify_trapdoor(k) + end + end +end) diff --git a/mesecons_gamecompat/init.lua b/mesecons_gamecompat/init.lua index 95c088e..c8734ba 100644 --- a/mesecons_gamecompat/init.lua +++ b/mesecons_gamecompat/init.lua @@ -14,7 +14,11 @@ if minetest.get_modpath("default") then dofile(minetest.get_modpath("mesecons_gamecompat").."/compat_mtg.lua") end -if minetest.get_modpath("mcl_core") then +if minetest.get_modpath("mcl_redstone") then minetest.log("info", "Mesecons: detected MineClonia Game for game compatibility") - dofile(minetest.get_modpath("mesecons_gamecompat").."/compat_mcl.lua") + dofile(minetest.get_modpath("mesecons_gamecompat").."/compat_mcla.lua") +end + +if minetest.get_modpath("doors") then + dofile(minetest.get_modpath("mesecons_gamecompat").."/doors.lua") end diff --git a/mesecons_gamecompat/mod.conf b/mesecons_gamecompat/mod.conf index 997f41f..fa3da1e 100644 --- a/mesecons_gamecompat/mod.conf +++ b/mesecons_gamecompat/mod.conf @@ -1,3 +1,3 @@ name = mesecons_gamecompat depends = mesecons -optional_depends = fire, default, dye, mesecons_mvps, tnt, mcl_fire, mcl_core, mcl_dye, mcl_tnt +optional_depends = fire, default, dye, mesecons_mvps, tnt, doors, beds, mcl_fire, mcl_core, mcl_dye, mcl_tnt diff --git a/mesecons_gates/init.lua b/mesecons_gates/init.lua index 7e21f2f..0bb334f 100644 --- a/mesecons_gates/init.lua +++ b/mesecons_gates/init.lua @@ -1,3 +1,5 @@ +local S = minetest.get_translator(minetest.get_current_modname()) + local selection_box = { type = "fixed", fixed = { -8/16, -8/16, -8/16, 8/16, -6/16, 8/16 } @@ -146,38 +148,38 @@ end register_gate("diode", 1, function (input) return input end, {{"mesecons:mesecon", "mesecons_torch:mesecon_torch_on", "mesecons_torch:mesecon_torch_on"}}, - "Diode") + S("Diode")) register_gate("not", 1, function (input) return not input end, {{"mesecons:mesecon", "mesecons_torch:mesecon_torch_on", "mesecons:mesecon"}}, - "NOT Gate") + S("NOT Gate")) register_gate("and", 2, function (val1, val2) return val1 and val2 end, {{"mesecons:mesecon", "", ""}, {"", "mesecons_materials:silicon", "mesecons:mesecon"}, {"mesecons:mesecon", "", ""}}, - "AND Gate") + S("AND Gate")) register_gate("nand", 2, function (val1, val2) return not (val1 and val2) end, {{"mesecons:mesecon", "", ""}, {"", "mesecons_materials:silicon", "mesecons_torch:mesecon_torch_on"}, {"mesecons:mesecon", "", ""}}, - "NAND Gate") + S("NAND Gate")) register_gate("xor", 2, function (val1, val2) return (val1 or val2) and not (val1 and val2) end, {{"mesecons:mesecon", "", ""}, {"", "mesecons_materials:silicon", "mesecons_materials:silicon"}, {"mesecons:mesecon", "", ""}}, - "XOR Gate") + S("XOR Gate")) register_gate("nor", 2, function (val1, val2) return not (val1 or val2) end, {{"mesecons:mesecon", "", ""}, {"", "mesecons:mesecon", "mesecons_torch:mesecon_torch_on"}, {"mesecons:mesecon", "", ""}}, - "NOR Gate") + S("NOR Gate")) register_gate("or", 2, function (val1, val2) return (val1 or val2) end, {{"mesecons:mesecon", "", ""}, {"", "mesecons:mesecon", "mesecons:mesecon"}, {"mesecons:mesecon", "", ""}}, - "OR Gate") + S("OR Gate")) diff --git a/mesecons_gates/locale/mesecons_gates.ru.tr b/mesecons_gates/locale/mesecons_gates.ru.tr new file mode 100644 index 0000000..a218782 --- /dev/null +++ b/mesecons_gates/locale/mesecons_gates.ru.tr @@ -0,0 +1,8 @@ +# textdomain: mesecons_gates +Diode=Диод +NOT Gate=НЕ-шлюз +AND Gate=И-шлюз +NAND Gate=NAND-шлюз +XOR Gate=XOR-шлюз +NOR Gate=NOR-шлюз +OR Gate=ИЛИ-шлюз diff --git a/mesecons_gates/locale/mesecons_gates.uk.tr b/mesecons_gates/locale/mesecons_gates.uk.tr new file mode 100644 index 0000000..46b1682 --- /dev/null +++ b/mesecons_gates/locale/mesecons_gates.uk.tr @@ -0,0 +1,8 @@ +# textdomain: mesecons_gates +Diode=Діод +NOT Gate=NOT перехідник +AND Gate=AND перехідник +NAND Gate=NAND перехідник +XOR Gate=XOR перехідник +NOR Gate=NOR перехідник +OR Gate=OR перехідник diff --git a/mesecons_gates/locale/template.txt b/mesecons_gates/locale/template.txt new file mode 100644 index 0000000..899b139 --- /dev/null +++ b/mesecons_gates/locale/template.txt @@ -0,0 +1,8 @@ +# textdomain: mesecons_gates +Diode= +NOT Gate= +AND Gate= +NAND Gate= +XOR Gate= +NOR Gate= +OR Gate= diff --git a/mesecons_hydroturbine/locale/mesecons_hydroturbine.ru.tr b/mesecons_hydroturbine/locale/mesecons_hydroturbine.ru.tr new file mode 100644 index 0000000..4055834 --- /dev/null +++ b/mesecons_hydroturbine/locale/mesecons_hydroturbine.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_hydroturbine + +### init.lua ### +Water Turbine=Гидротурбина diff --git a/mesecons_hydroturbine/locale/mesecons_hydroturbine.uk.tr b/mesecons_hydroturbine/locale/mesecons_hydroturbine.uk.tr new file mode 100644 index 0000000..00cde3e --- /dev/null +++ b/mesecons_hydroturbine/locale/mesecons_hydroturbine.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_hydroturbine + +### init.lua ### +Water Turbine=Гідротурбіна diff --git a/mesecons_insulated/locale/mesecons_insulated.ru.tr b/mesecons_insulated/locale/mesecons_insulated.ru.tr new file mode 100644 index 0000000..9ba1004 --- /dev/null +++ b/mesecons_insulated/locale/mesecons_insulated.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_insulated + +### init.lua ### +Straight Insulated Mesecon=Прямой изолированный мезекон diff --git a/mesecons_insulated/locale/mesecons_insulated.uk.tr b/mesecons_insulated/locale/mesecons_insulated.uk.tr new file mode 100644 index 0000000..83d4a21 --- /dev/null +++ b/mesecons_insulated/locale/mesecons_insulated.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_insulated + +### init.lua ### +Straight Insulated Mesecon=Прямий ізольований месекон diff --git a/mesecons_lamp/locale/mesecons_lamp.ru.tr b/mesecons_lamp/locale/mesecons_lamp.ru.tr new file mode 100644 index 0000000..7280307 --- /dev/null +++ b/mesecons_lamp/locale/mesecons_lamp.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_lamp + +### init.lua ### +Mesecon Lamp=Мезеконовая лампа diff --git a/mesecons_lamp/locale/mesecons_lamp.uk.tr b/mesecons_lamp/locale/mesecons_lamp.uk.tr new file mode 100644 index 0000000..a7e7652 --- /dev/null +++ b/mesecons_lamp/locale/mesecons_lamp.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_lamp + +### init.lua ### +Mesecon Lamp=Месеконова лампа diff --git a/mesecons_lightstone/locale/mesecons_lightstone.ru.tr b/mesecons_lightstone/locale/mesecons_lightstone.ru.tr new file mode 100644 index 0000000..3867c7d --- /dev/null +++ b/mesecons_lightstone/locale/mesecons_lightstone.ru.tr @@ -0,0 +1,15 @@ +# textdomain: mesecons_lightstone + +### init.lua ### +Red Lightstone=Красный светящийся камень +Green Lightstone=Зеленый светящийся камень +Blue Lightstone=Синий светящийся камень +Grey Lightstone=Серый светящийся камень +Dark Grey Lightstone=Темно-серый светящийся камень +Yellow Lightstone=Желтый светящийся камень +Orange Lightstone=Оранжевый светящийся камень +White Lightstone=Белый светящийся камень +Pink Lightstone=Розовый светящийся камень +Magenta Lightstone=Пурпурный светящийся камень +Cyan Lightstone=Голубой светящийся камень +Violet Lightstone=Фиолетовый светящийся камень diff --git a/mesecons_lightstone/locale/mesecons_lightstone.uk.tr b/mesecons_lightstone/locale/mesecons_lightstone.uk.tr new file mode 100644 index 0000000..5ebe462 --- /dev/null +++ b/mesecons_lightstone/locale/mesecons_lightstone.uk.tr @@ -0,0 +1,15 @@ +# textdomain: mesecons_lightstone + +### init.lua ### +Red Lightstone=Червоний світловий камінь +Green Lightstone=Зелений світловий камінь +Blue Lightstone=Синій світловий камінь +Grey Lightstone=Сірий світловий камінь +Dark Grey Lightstone=Темно-сірий світловий камінь +Yellow Lightstone=Жовтий світловий камінь +Orange Lightstone=Оранжевий світловий камінь +White Lightstone=Білий світловий камінь +Pink Lightstone=Рожевий світловий камінь +Magenta Lightstone=Пурпуровий світловий камінь +Cyan Lightstone=Блакитний світловий камінь +Violet Lightstone=Фіолетовий світловий камінь diff --git a/mesecons_luacontroller/init.lua b/mesecons_luacontroller/init.lua index 90516c0..9e2d3c8 100644 --- a/mesecons_luacontroller/init.lua +++ b/mesecons_luacontroller/init.lua @@ -509,6 +509,7 @@ local function create_environment(pos, mem, event, itbl, send_warning) print = safe_print, interrupt = get_interrupt(pos, itbl, send_warning), digiline_send = get_digiline_send(pos, itbl, send_warning), + sha256sum = minetest.sha256, string = { byte = string.byte, char = string.char, diff --git a/mesecons_luacontroller/locale/mesecons_luacontroller.ru.tr b/mesecons_luacontroller/locale/mesecons_luacontroller.ru.tr new file mode 100644 index 0000000..4924cd2 --- /dev/null +++ b/mesecons_luacontroller/locale/mesecons_luacontroller.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_luacontroller + +### init.lua ### +Luacontroller=Lua-контроллер diff --git a/mesecons_luacontroller/locale/mesecons_luacontroller.uk.tr b/mesecons_luacontroller/locale/mesecons_luacontroller.uk.tr new file mode 100644 index 0000000..67f40d0 --- /dev/null +++ b/mesecons_luacontroller/locale/mesecons_luacontroller.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_luacontroller + +### init.lua ### +Luacontroller=Lua-контролер diff --git a/mesecons_materials/locale/mesecons_materials.ru.tr b/mesecons_materials/locale/mesecons_materials.ru.tr new file mode 100644 index 0000000..b418fe0 --- /dev/null +++ b/mesecons_materials/locale/mesecons_materials.ru.tr @@ -0,0 +1,6 @@ +# textdomain: mesecons_materials + +### init.lua ### +Glue=Клей +Fiber=Волокно +Silicon=Кремний diff --git a/mesecons_materials/locale/mesecons_materials.uk.tr b/mesecons_materials/locale/mesecons_materials.uk.tr new file mode 100644 index 0000000..e5fa75c --- /dev/null +++ b/mesecons_materials/locale/mesecons_materials.uk.tr @@ -0,0 +1,6 @@ +# textdomain: mesecons_materials + +### init.lua ### +Glue=Клей +Fiber=Волокно +Silicon=Кремній diff --git a/mesecons_microcontroller/locale/mesecons_microcontroller.ru.tr b/mesecons_microcontroller/locale/mesecons_microcontroller.ru.tr new file mode 100644 index 0000000..0a6fdbb --- /dev/null +++ b/mesecons_microcontroller/locale/mesecons_microcontroller.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_microcontroller + +### init.lua ### +Microcontroller=Микроконтроллер diff --git a/mesecons_microcontroller/locale/mesecons_microcontroller.uk.tr b/mesecons_microcontroller/locale/mesecons_microcontroller.uk.tr new file mode 100644 index 0000000..4e7978e --- /dev/null +++ b/mesecons_microcontroller/locale/mesecons_microcontroller.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_microcontroller + +### init.lua ### +Microcontroller=Мікроконтролер diff --git a/mesecons_movestones/locale/mesecons_movestones.ru.tr b/mesecons_movestones/locale/mesecons_movestones.ru.tr new file mode 100644 index 0000000..3fd8065 --- /dev/null +++ b/mesecons_movestones/locale/mesecons_movestones.ru.tr @@ -0,0 +1,7 @@ +# textdomain: mesecons_movestones + +### init.lua ### +Movestone=Ходовой камень +Sticky Movestone=Липкий ходовой камень +Vertical Movestone=Вертикальный ходовой камень +Vertical Sticky Movestone=Вертикальный липкий ходовой камень diff --git a/mesecons_movestones/locale/mesecons_movestones.uk.tr b/mesecons_movestones/locale/mesecons_movestones.uk.tr new file mode 100644 index 0000000..e5e7784 --- /dev/null +++ b/mesecons_movestones/locale/mesecons_movestones.uk.tr @@ -0,0 +1,7 @@ +# textdomain: mesecons_movestones + +### init.lua ### +Movestone=Ходовий камінь +Sticky Movestone=Липкий ходовий камінь +Vertical Movestone=Вертикальний ходовий камінь +Vertical Sticky Movestone=Вертикальний липкий ходовий камінь diff --git a/mesecons_noteblock/locale/mesecons_noteblock.ru.tr b/mesecons_noteblock/locale/mesecons_noteblock.ru.tr new file mode 100644 index 0000000..29960ee --- /dev/null +++ b/mesecons_noteblock/locale/mesecons_noteblock.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_noteblock + +### init.lua ### +Noteblock=Нотный блок diff --git a/mesecons_noteblock/locale/mesecons_noteblock.uk.tr b/mesecons_noteblock/locale/mesecons_noteblock.uk.tr new file mode 100644 index 0000000..bc2faec --- /dev/null +++ b/mesecons_noteblock/locale/mesecons_noteblock.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_noteblock + +### init.lua ### +Noteblock=Нотний блок diff --git a/mesecons_pistons/init.lua b/mesecons_pistons/init.lua index 274258e..052a5dc 100644 --- a/mesecons_pistons/init.lua +++ b/mesecons_pistons/init.lua @@ -115,27 +115,13 @@ local function piston_off(pos, node) end end -local orientations = { - [0] = { 4, 8}, - {13, 17}, - {10, 6}, - {20, 15}, -} - local function piston_orientate(pos, placer) mesecon.mvps_set_owner(pos, placer) if not placer then return end - local pitch = math.deg(placer:get_look_vertical()) local node = minetest.get_node(pos) - if pitch > 55 then - node.param2 = orientations[node.param2][1] - elseif pitch < -55 then - node.param2 = orientations[node.param2][2] - else - return - end + node.param2 = core.dir_to_facedir(placer:get_look_dir(), true) minetest.swap_node(pos, node) -- minetest.after, because on_placenode for unoriented piston must be processed first minetest.after(0, mesecon.on_placenode, pos, node) diff --git a/mesecons_pistons/locale/mesecons_pistons.ru.tr b/mesecons_pistons/locale/mesecons_pistons.ru.tr new file mode 100644 index 0000000..4748e51 --- /dev/null +++ b/mesecons_pistons/locale/mesecons_pistons.ru.tr @@ -0,0 +1,9 @@ +# textdomain: mesecons_pistons + +### init.lua ### +Piston=Поршень +Activated Piston Base=Основание активированного поршня +Piston Pusher=Толкающая часть поршня +Sticky Piston=Липкий поршень +Activated Sticky Piston Base=Основание активированного липкого поршня +Sticky Piston Pusher=Толкающая часть липкого поршня diff --git a/mesecons_pistons/locale/mesecons_pistons.uk.tr b/mesecons_pistons/locale/mesecons_pistons.uk.tr new file mode 100644 index 0000000..bcd2630 --- /dev/null +++ b/mesecons_pistons/locale/mesecons_pistons.uk.tr @@ -0,0 +1,9 @@ +# textdomain: mesecons_pistons + +### init.lua ### +Piston=Поршень +Activated Piston Base=Основа активованого поршня +Piston Pusher=Штовхаюча частина поршня +Sticky Piston=Липкий поршень +Activated Sticky Piston Base=Основа активованого липкого поршня +Sticky Piston Pusher=Штовхаюча частина липкого поршня diff --git a/mesecons_powerplant/locale/mesecons_powerplant.ru.tr b/mesecons_powerplant/locale/mesecons_powerplant.ru.tr new file mode 100644 index 0000000..8d6c21d --- /dev/null +++ b/mesecons_powerplant/locale/mesecons_powerplant.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_powerplant + +### init.lua ### +Power Plant=Энергоцветок diff --git a/mesecons_powerplant/locale/mesecons_powerplant.uk.tr b/mesecons_powerplant/locale/mesecons_powerplant.uk.tr new file mode 100644 index 0000000..db6c297 --- /dev/null +++ b/mesecons_powerplant/locale/mesecons_powerplant.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_powerplant + +### init.lua ### +Power Plant=Енергоквітка diff --git a/mesecons_pressureplates/locale/mesecons_pressureplates.ru.tr b/mesecons_pressureplates/locale/mesecons_pressureplates.ru.tr new file mode 100644 index 0000000..f1e26fa --- /dev/null +++ b/mesecons_pressureplates/locale/mesecons_pressureplates.ru.tr @@ -0,0 +1,5 @@ +# textdomain: mesecons_pressureplates + +### init.lua ### +Wooden Pressure Plate=Деревянная нажимная пластина +Stone Pressure Plate=Каменная нажимная пластина diff --git a/mesecons_pressureplates/locale/mesecons_pressureplates.uk.tr b/mesecons_pressureplates/locale/mesecons_pressureplates.uk.tr new file mode 100644 index 0000000..ad7cd32 --- /dev/null +++ b/mesecons_pressureplates/locale/mesecons_pressureplates.uk.tr @@ -0,0 +1,5 @@ +# textdomain: mesecons_pressureplates + +### init.lua ### +Wooden Pressure Plate=Дерев'яна натискна плита +Stone Pressure Plate=Кам'яна натискна плита diff --git a/mesecons_random/locale/mesecons_random.ru.tr b/mesecons_random/locale/mesecons_random.ru.tr new file mode 100644 index 0000000..416760b --- /dev/null +++ b/mesecons_random/locale/mesecons_random.ru.tr @@ -0,0 +1,5 @@ +# textdomain: mesecons_random + +### init.lua ### +Removestone=Исчезающий камень +Ghoststone=Призрачный камень diff --git a/mesecons_random/locale/mesecons_random.uk.tr b/mesecons_random/locale/mesecons_random.uk.tr new file mode 100644 index 0000000..f014b64 --- /dev/null +++ b/mesecons_random/locale/mesecons_random.uk.tr @@ -0,0 +1,5 @@ +# textdomain: mesecons_random + +### init.lua ### +Removestone=Зникаючий камінь +Ghoststone=Примарний камінь diff --git a/mesecons_receiver/init.lua b/mesecons_receiver/init.lua index 8d30b33..6b67fd2 100644 --- a/mesecons_receiver/init.lua +++ b/mesecons_receiver/init.lua @@ -30,6 +30,8 @@ local receiver_get_rules = mesecon.horiz_rules_getter({ {x = 0, y = 0, z = -2}, }) +local use_texture_alpha = minetest.features.use_texture_alpha_string_modes and "clip" or nil + mesecon.register_node("mesecons_receiver:receiver", { drawtype = "nodebox", paramtype = "light", @@ -98,6 +100,7 @@ mesecon.register_node("mesecons_receiver:receiver_up", { groups = {dig_immediate = 3, not_in_creative_inventory = 1}, drop = "mesecons:wire_00000000_off", sounds = mesecon.node_sound.default, + use_texture_alpha = use_texture_alpha, }, { tiles = {"mesecons_wire_off.png"}, mesecons = {conductor = { @@ -143,6 +146,7 @@ mesecon.register_node("mesecons_receiver:receiver_down", { groups = {dig_immediate = 3, not_in_creative_inventory = 1}, drop = "mesecons:wire_00000000_off", sounds = mesecon.node_sound.default, + use_texture_alpha = use_texture_alpha, }, { tiles = {"mesecons_wire_off.png"}, mesecons = {conductor = { diff --git a/mesecons_solarpanel/locale/mesecons_solarpanel.ru.tr b/mesecons_solarpanel/locale/mesecons_solarpanel.ru.tr new file mode 100644 index 0000000..7e14ed3 --- /dev/null +++ b/mesecons_solarpanel/locale/mesecons_solarpanel.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_solarpanel + +### init.lua ### +Solar Panel=Солнечная панель diff --git a/mesecons_solarpanel/locale/mesecons_solarpanel.uk.tr b/mesecons_solarpanel/locale/mesecons_solarpanel.uk.tr new file mode 100644 index 0000000..944fb73 --- /dev/null +++ b/mesecons_solarpanel/locale/mesecons_solarpanel.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_solarpanel + +### init.lua ### +Solar Panel=Сонячна панель diff --git a/mesecons_stickyblocks/locale/mesecons_stickyblocks.ru.tr b/mesecons_stickyblocks/locale/mesecons_stickyblocks.ru.tr new file mode 100644 index 0000000..e484686 --- /dev/null +++ b/mesecons_stickyblocks/locale/mesecons_stickyblocks.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_stickyblocks + +### init.lua ### +Sticky Block=Липкий блок diff --git a/mesecons_stickyblocks/locale/mesecons_stickyblocks.uk.tr b/mesecons_stickyblocks/locale/mesecons_stickyblocks.uk.tr new file mode 100644 index 0000000..e484686 --- /dev/null +++ b/mesecons_stickyblocks/locale/mesecons_stickyblocks.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_stickyblocks + +### init.lua ### +Sticky Block=Липкий блок diff --git a/mesecons_switch/locale/mesecons_switch.ru.tr b/mesecons_switch/locale/mesecons_switch.ru.tr new file mode 100644 index 0000000..8f45ccd --- /dev/null +++ b/mesecons_switch/locale/mesecons_switch.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_switch + +### init.lua ### +Switch=Выключатель diff --git a/mesecons_switch/locale/mesecons_switch.uk.tr b/mesecons_switch/locale/mesecons_switch.uk.tr new file mode 100644 index 0000000..9623de3 --- /dev/null +++ b/mesecons_switch/locale/mesecons_switch.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_switch + +### init.lua ### +Switch=Перемикач diff --git a/mesecons_torch/locale/mesecons_torch.ru.tr b/mesecons_torch/locale/mesecons_torch.ru.tr new file mode 100644 index 0000000..d5bceaf --- /dev/null +++ b/mesecons_torch/locale/mesecons_torch.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_torch + +### init.lua ### +Mesecon Torch=Мезе-факел diff --git a/mesecons_torch/locale/mesecons_torch.uk.tr b/mesecons_torch/locale/mesecons_torch.uk.tr new file mode 100644 index 0000000..b64578c --- /dev/null +++ b/mesecons_torch/locale/mesecons_torch.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_torch + +### init.lua ### +Mesecon Torch=Месескип diff --git a/mesecons_walllever/locale/mesecons_walllever.ru.tr b/mesecons_walllever/locale/mesecons_walllever.ru.tr new file mode 100644 index 0000000..b308bea --- /dev/null +++ b/mesecons_walllever/locale/mesecons_walllever.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_walllever + +### init.lua ### +Lever=Рычаг diff --git a/mesecons_walllever/locale/mesecons_walllever.uk.tr b/mesecons_walllever/locale/mesecons_walllever.uk.tr new file mode 100644 index 0000000..502dbe6 --- /dev/null +++ b/mesecons_walllever/locale/mesecons_walllever.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_walllever + +### init.lua ### +Lever=Важіль diff --git a/mesecons_wires/locale/mesecons_wires.ru.tr b/mesecons_wires/locale/mesecons_wires.ru.tr new file mode 100644 index 0000000..dcd5c1e --- /dev/null +++ b/mesecons_wires/locale/mesecons_wires.ru.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_wires + +### init.lua ### +Mesecon=Мезекон diff --git a/mesecons_wires/locale/mesecons_wires.uk.tr b/mesecons_wires/locale/mesecons_wires.uk.tr new file mode 100644 index 0000000..ed58fa5 --- /dev/null +++ b/mesecons_wires/locale/mesecons_wires.uk.tr @@ -0,0 +1,4 @@ +# textdomain: mesecons_wires + +### init.lua ### +Mesecon=Месекон diff --git a/modpack.conf b/modpack.conf index 2878aae..3cab8e4 100644 --- a/modpack.conf +++ b/modpack.conf @@ -1,3 +1,5 @@ name = mesecons description = Mod that implements a ton of items related to digital circuitry. min_minetest_version = 5.0 +author = Jeija +title = Mesecons diff --git a/settingtypes.txt b/settingtypes.txt index 688baf2..455c90a 100644 --- a/settingtypes.txt +++ b/settingtypes.txt @@ -11,6 +11,11 @@ mesecon.cooldown_granularity (Cooldown step length) float 0.5 0.0 1.0 mesecon.blinky_plant_interval (Plant blinking interval) int 3 1 5 +[mesecons_commandblock] + +mesecon.commandblock_param_maxlen (Maximum command parameter length) int 10000 100 1000000 + + [mesecons_detector] mesecon.detector_radius (Player detector scanning radius) int 6 3 16