forked from minetest-mods/mesecons
		
	Compare commits
	
		
			18 Commits
		
	
	
		
			2d973fb77b
			...
			master
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| a9feea1b32 | |||
|  | 4bd59137a2 | ||
|  | a0580f9f20 | ||
|  | 93751a9014 | ||
|  | 786094ec06 | ||
|  | 55359c7a0b | ||
|  | 28467fc3cb | ||
|  | 4eeab8f6f5 | ||
|  | 1f9e86c3da | ||
|  | dd073d2e83 | ||
|  | 320ec93544 | ||
|  | 8051129f82 | ||
|  | 5883a0ce65 | ||
|  | d547f5fe43 | ||
|  | 5c82089146 | ||
|  | 31b56063a0 | ||
|  | b46c589a38 | ||
|  | ac83dead50 | 
							
								
								
									
										2
									
								
								.github/workflows/test.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/test.yml
									
									
									
									
										vendored
									
									
								
							| @@ -10,7 +10,7 @@ jobs: | |||||||
|       matrix: |       matrix: | ||||||
|         cfg: |         cfg: | ||||||
|           - { image: 'registry.gitlab.com/minetest/minetest/server:5.0.1', mtg: false } |           - { 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: |     steps: | ||||||
|     - uses: actions/checkout@main |     - uses: actions/checkout@main | ||||||
|  |  | ||||||
|   | |||||||
| @@ -15,6 +15,7 @@ ignore = { | |||||||
| max_line_length = 200 | max_line_length = 200 | ||||||
|  |  | ||||||
| read_globals = { | read_globals = { | ||||||
|  | 	"core", | ||||||
| 	"default", | 	"default", | ||||||
| 	"digiline", | 	"digiline", | ||||||
| 	"doors", | 	"doors", | ||||||
|   | |||||||
							
								
								
									
										4
									
								
								mesecons/locale/mesecons.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons/locale/mesecons.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons | ||||||
|  |  | ||||||
|  | ### oldwires.lua ### | ||||||
|  | Mesecons=Мезеконы | ||||||
							
								
								
									
										5
									
								
								mesecons/locale/mesecons.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								mesecons/locale/mesecons.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | |||||||
|  | # textdomain: mesecons | ||||||
|  |  | ||||||
|  | ### oldwires.lua ### | ||||||
|  | Mesecons=Месекони | ||||||
|  | Mod that implements a ton of items related to digital circuitry.=Мод, який реалізує масу елементів, пов’язаних із цифровою схемою. | ||||||
							
								
								
									
										4
									
								
								mesecons_blinkyplant/locale/mesecons_blinkyplant.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_blinkyplant/locale/mesecons_blinkyplant.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_blinkyplant | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Blinky Plant=Мигающий цветок | ||||||
							
								
								
									
										4
									
								
								mesecons_blinkyplant/locale/mesecons_blinkyplant.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_blinkyplant/locale/mesecons_blinkyplant.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_blinkyplant | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Blinky Plant=Миготлива квітка | ||||||
							
								
								
									
										4
									
								
								mesecons_button/locale/mesecons_button.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_button/locale/mesecons_button.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_button | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Button=Кнопка | ||||||
							
								
								
									
										4
									
								
								mesecons_button/locale/mesecons_button.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_button/locale/mesecons_button.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_button | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Button=Кнопка | ||||||
| @@ -1,4 +1,5 @@ | |||||||
| local S = minetest.get_translator(minetest.get_current_modname()) | local S = minetest.get_translator(minetest.get_current_modname()) | ||||||
|  | local param_maxlen = mesecon.setting("commandblock_param_maxlen", 10000) | ||||||
|  |  | ||||||
| minetest.register_chatcommand("say", { | minetest.register_chatcommand("say", { | ||||||
| 	params = "<text>", | 	params = "<text>", | ||||||
| @@ -48,7 +49,7 @@ minetest.register_chatcommand("hp", { | |||||||
| local function initialize_data(meta) | local function initialize_data(meta) | ||||||
| 	local commands = minetest.formspec_escape(meta:get_string("commands")) | 	local commands = minetest.formspec_escape(meta:get_string("commands")) | ||||||
| 	meta:set_string("formspec", | 	meta:set_string("formspec", | ||||||
| 		"invsize[9,5;]" .. | 		"size[9,5]" .. | ||||||
| 		"textarea[0.5,0.5;8.5,4;commands;Commands;"..commands.."]" .. | 		"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]" .. | 		"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]") | 		"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") | 			minetest.chat_send_player(owner, "The command "..cmd.." does not exist") | ||||||
| 			return | 			return | ||||||
| 		end | 		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) | 		local has_privs, missing_privs = minetest.check_player_privs(owner, cmddef.privs) | ||||||
| 		if not has_privs then | 		if not has_privs then | ||||||
| 			minetest.chat_send_player(owner, "You don't have permission " | 			minetest.chat_send_player(owner, "You don't have permission " | ||||||
|   | |||||||
							
								
								
									
										7
									
								
								mesecons_commandblock/locale/mesecons_commandblock.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								mesecons_commandblock/locale/mesecons_commandblock.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | |||||||
|  | # textdomain: mesecons_commandblock | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Say <text> as the server=Сказать <текст> от имени сервера | ||||||
|  | Say <text> to <name> privately=Сказать <текст> игроку <имя> в личном сообщении | ||||||
|  | Set health of <name> to <value> hitpoints=Установить здоровье игрока <имя> на <значение> хитпоинтов | ||||||
|  | Command Block=Комадный блок | ||||||
							
								
								
									
										7
									
								
								mesecons_commandblock/locale/mesecons_commandblock.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								mesecons_commandblock/locale/mesecons_commandblock.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | |||||||
|  | # textdomain: mesecons_commandblock | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Say <text> as the server=Сказати <текст> від імені сервера | ||||||
|  | Say <text> to <name> privately=Сказати <текст> гравцю <ім'я> в приватному повідомленні | ||||||
|  | Set health of <name> to <value> hitpoints=Встановити здоров'я гравця <ім'я> на <значення> ХП | ||||||
|  | Command Block=Командний блок | ||||||
							
								
								
									
										5
									
								
								mesecons_delayer/locale/mesecons_delayer.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								mesecons_delayer/locale/mesecons_delayer.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | |||||||
|  | # textdomain: mesecons_delayer | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Delayer=Элемент задержки | ||||||
|  | You hacker you=Ти хакер, ти | ||||||
							
								
								
									
										5
									
								
								mesecons_delayer/locale/mesecons_delayer.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								mesecons_delayer/locale/mesecons_delayer.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | |||||||
|  | # textdomain: mesecons_delayer | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Delayer=Затримувач | ||||||
|  | You hacker you=Ти хакер, ти | ||||||
| @@ -66,7 +66,8 @@ local object_detector_digiline = { | |||||||
| 	effector = { | 	effector = { | ||||||
| 		action = function(pos, _, channel, msg) | 		action = function(pos, _, channel, msg) | ||||||
| 			local meta = minetest.get_meta(pos) | 			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) | 				meta:set_string("scanname", msg) | ||||||
| 				object_detector_make_formspec(pos) | 				object_detector_make_formspec(pos) | ||||||
| 			end | 			end | ||||||
| @@ -110,14 +111,16 @@ minetest.register_node("mesecons_detector:object_detector_on", { | |||||||
| 	on_blast = mesecon.on_blastnode, | 	on_blast = mesecon.on_blastnode, | ||||||
| }) | }) | ||||||
|  |  | ||||||
| minetest.register_craft({ | if minetest.get_modpath("mesecons_luacontroller") then | ||||||
| 	output = 'mesecons_detector:object_detector_off', | 	minetest.register_craft({ | ||||||
| 	recipe = { | 		output = 'mesecons_detector:object_detector_off', | ||||||
| 		{"mesecons_gamecompat:steel_ingot", "mesecons_gamecompat:steel_ingot", "mesecons_gamecompat:steel_ingot"}, | 		recipe = { | ||||||
| 		{"mesecons_gamecompat:steel_ingot", "mesecons_luacontroller:luacontroller0000", "mesecons_gamecompat:steel_ingot"}, | 			{"mesecons_gamecompat:steel_ingot", "mesecons_gamecompat:steel_ingot", "mesecons_gamecompat:steel_ingot"}, | ||||||
| 		{"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", "group:mesecon_conductor_craftable", "mesecons_gamecompat:steel_ingot"}, | ||||||
| }) | 		} | ||||||
|  | 	}) | ||||||
|  | end | ||||||
|  |  | ||||||
| minetest.register_craft({ | minetest.register_craft({ | ||||||
| 	output = 'mesecons_detector:object_detector_off', | 	output = 'mesecons_detector:object_detector_off', | ||||||
| @@ -286,14 +289,16 @@ minetest.register_node("mesecons_detector:node_detector_on", { | |||||||
| 	on_blast = mesecon.on_blastnode, | 	on_blast = mesecon.on_blastnode, | ||||||
| }) | }) | ||||||
|  |  | ||||||
| minetest.register_craft({ | if minetest.get_modpath("mesecons_luacontroller") then | ||||||
| 	output = 'mesecons_detector:node_detector_off', | 	minetest.register_craft({ | ||||||
| 	recipe = { | 		output = 'mesecons_detector:node_detector_off', | ||||||
| 		{"mesecons_gamecompat:steel_ingot", "group:mesecon_conductor_craftable", "mesecons_gamecompat:steel_ingot"}, | 		recipe = { | ||||||
| 		{"mesecons_gamecompat:steel_ingot", "mesecons_luacontroller:luacontroller0000", "mesecons_gamecompat:steel_ingot"}, | 			{"mesecons_gamecompat:steel_ingot", "group:mesecon_conductor_craftable", "mesecons_gamecompat:steel_ingot"}, | ||||||
| 		{"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", "mesecons_gamecompat:steel_ingot", "mesecons_gamecompat:steel_ingot"}, | ||||||
| }) | 		} | ||||||
|  | 	}) | ||||||
|  | end | ||||||
|  |  | ||||||
| minetest.register_craft({ | minetest.register_craft({ | ||||||
| 	output = 'mesecons_detector:node_detector_off', | 	output = 'mesecons_detector:node_detector_off', | ||||||
|   | |||||||
							
								
								
									
										5
									
								
								mesecons_detector/locale/mesecons_detector.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								mesecons_detector/locale/mesecons_detector.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | |||||||
|  | # textdomain: mesecons_detector | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Player Detector=Детектор игрока | ||||||
|  | Node Detector=Детектор блока | ||||||
							
								
								
									
										5
									
								
								mesecons_detector/locale/mesecons_detector.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								mesecons_detector/locale/mesecons_detector.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | |||||||
|  | # textdomain: mesecons_detector | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Player Detector=Детектор гравця | ||||||
|  | Node Detector=Детектор блоку | ||||||
| @@ -1,2 +1,3 @@ | |||||||
| name = mesecons_detector | name = mesecons_detector | ||||||
| depends = mesecons, mesecons_gamecompat, mesecons_materials | depends = mesecons, mesecons_gamecompat, mesecons_materials | ||||||
|  | optional_depends = mesecons_luacontroller | ||||||
|   | |||||||
| @@ -1,3 +0,0 @@ | |||||||
| name = mesecons_doors |  | ||||||
| depends = mesecons, doors |  | ||||||
| optional_depends = xpanes |  | ||||||
| @@ -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").."/corner.lua"); | ||||||
| dofile(minetest.get_modpath("mesecons_extrawires").."/doublecorner.lua"); | dofile(minetest.get_modpath("mesecons_extrawires").."/doublecorner.lua"); | ||||||
| dofile(minetest.get_modpath("mesecons_extrawires").."/vertical.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 | ||||||
|   | |||||||
							
								
								
									
										20
									
								
								mesecons_extrawires/locale/mesecons_extrawires.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								mesecons_extrawires/locale/mesecons_extrawires.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -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=Вертикальный мезекон | ||||||
							
								
								
									
										20
									
								
								mesecons_extrawires/locale/mesecons_extrawires.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								mesecons_extrawires/locale/mesecons_extrawires.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -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=Вертикальний месекон | ||||||
| @@ -40,6 +40,8 @@ local bottom_rules = { | |||||||
| 	{x=0, y=2, z=0} -- receive power from pressure plate / detector / ... 2 nodes above | 	{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 function is_vertical_conductor(nodename) | ||||||
| 	local def = minetest.registered_nodes[nodename] | 	local def = minetest.registered_nodes[nodename] | ||||||
| 	return def and def.is_vertical_conductor | 	return def and def.is_vertical_conductor | ||||||
| @@ -96,6 +98,7 @@ mesecon.register_node("mesecons_extrawires:vertical", { | |||||||
| 	after_place_node = vertical_update, | 	after_place_node = vertical_update, | ||||||
| 	after_dig_node = vertical_update, | 	after_dig_node = vertical_update, | ||||||
| 	sounds = mesecon.node_sound.default, | 	sounds = mesecon.node_sound.default, | ||||||
|  | 	use_texture_alpha = use_texture_alpha, | ||||||
| },{ | },{ | ||||||
| 	tiles = {"mesecons_wire_off.png"}, | 	tiles = {"mesecons_wire_off.png"}, | ||||||
| 	groups = {dig_immediate=3}, | 	groups = {dig_immediate=3}, | ||||||
| @@ -130,6 +133,7 @@ mesecon.register_node("mesecons_extrawires:vertical_top", { | |||||||
| 	after_place_node = vertical_update, | 	after_place_node = vertical_update, | ||||||
| 	after_dig_node = vertical_update, | 	after_dig_node = vertical_update, | ||||||
| 	sounds = mesecon.node_sound.default, | 	sounds = mesecon.node_sound.default, | ||||||
|  | 	use_texture_alpha = use_texture_alpha, | ||||||
| },{ | },{ | ||||||
| 	tiles = {"mesecons_wire_off.png"}, | 	tiles = {"mesecons_wire_off.png"}, | ||||||
| 	mesecons = {conductor = { | 	mesecons = {conductor = { | ||||||
| @@ -162,6 +166,7 @@ mesecon.register_node("mesecons_extrawires:vertical_bottom", { | |||||||
| 	after_place_node = vertical_update, | 	after_place_node = vertical_update, | ||||||
| 	after_dig_node = vertical_update, | 	after_dig_node = vertical_update, | ||||||
| 	sounds = mesecon.node_sound.default, | 	sounds = mesecon.node_sound.default, | ||||||
|  | 	use_texture_alpha = use_texture_alpha, | ||||||
| },{ | },{ | ||||||
| 	tiles = {"mesecons_wire_off.png"}, | 	tiles = {"mesecons_wire_off.png"}, | ||||||
| 	mesecons = {conductor = { | 	mesecons = {conductor = { | ||||||
|   | |||||||
							
								
								
									
										7
									
								
								mesecons_fpga/locale/mesecons_fpga.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								mesecons_fpga/locale/mesecons_fpga.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | |||||||
|  | # textdomain: mesecons_fpga | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | FPGA=ПЛИС | ||||||
|  |  | ||||||
|  | ### tool.lua ### | ||||||
|  | FPGA Programmer=ПЛИС-программер | ||||||
							
								
								
									
										7
									
								
								mesecons_fpga/locale/mesecons_fpga.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								mesecons_fpga/locale/mesecons_fpga.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | |||||||
|  | # textdomain: mesecons_fpga | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | FPGA=ПКВМ | ||||||
|  |  | ||||||
|  | ### tool.lua ### | ||||||
|  | FPGA Programmer=ПКВМ-программер | ||||||
| @@ -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:cobble", "mcl_core:cobble") | ||||||
| minetest.register_alias("mesecons_gamecompat:glass", "mcl_core:glass") | 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:lava_source", "mcl_core:lava_source") | ||||||
| minetest.register_alias("mesecons_gamecompat:mese", "mesecons:redstoneblock") | minetest.register_alias("mesecons_gamecompat:mese", "mcl_redstone_torch:redstoneblock") | ||||||
| minetest.register_alias("mesecons_gamecompat:mese_crystal", "mesecoms:redstone") | minetest.register_alias("mesecons_gamecompat:mese_crystal", "mcl_redstone:redstone") | ||||||
| minetest.register_alias("mesecons_gamecompat:mese_crystal_fragment", "mesecons: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:obsidian_glass", "mcl_core:glass") | ||||||
| minetest.register_alias("mesecons_gamecompat:stone", "mcl_core:stone") | 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: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") | minetest.register_alias("mesecons_gamecompat:torch", "mcl_torches:torch") | ||||||
| 
 | 
 | ||||||
| if minetest.get_modpath("mcl_dyes") then | if minetest.get_modpath("mcl_dyes") then | ||||||
| @@ -41,3 +41,48 @@ end | |||||||
| -- Textures | -- Textures | ||||||
| 
 | 
 | ||||||
| mesecon.texture.steel_block = "default_steel_block.png" | 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"}} | ||||||
|  | }) | ||||||
| @@ -48,28 +48,26 @@ if minetest.get_modpath("mesecons_mvps") then | |||||||
| 	for _, name in ipairs({ | 	for _, name in ipairs({ | ||||||
| 		"default:chest_locked", | 		"default:chest_locked", | ||||||
| 		"default:chest_locked_open", | 		"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:hidden", | ||||||
| 		"doors:trapdoor_steel", | 		"doors:trapdoor_steel", | ||||||
| 		"doors:trapdoor_steel_open", | 		"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", | ||||||
| 		"xpanes:trapdoor_steel_bar_open", | 		"xpanes:trapdoor_steel_bar_open", | ||||||
| 	}) do | 	}) do | ||||||
| 		mesecon.register_mvps_stopper(name) | 		mesecon.register_mvps_stopper(name) | ||||||
| 	end | 	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 | end | ||||||
|   | |||||||
| @@ -22,6 +22,11 @@ end | |||||||
| local function meseconify_door(name) | local function meseconify_door(name) | ||||||
| 	if minetest.registered_items[name .. "_b_1"] then | 	if minetest.registered_items[name .. "_b_1"] then | ||||||
| 		-- old style double-node doors | 		-- 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) | 		local function toggle_state1 (pos) | ||||||
| 			on_rightclick(pos, 1, name.."_t_1", name.."_b_2", name.."_t_2", {1,2,3,0}) | 			on_rightclick(pos, 1, name.."_t_1", name.."_b_2", name.."_t_2", {1,2,3,0}) | ||||||
| 		end | 		end | ||||||
| @@ -47,6 +52,10 @@ local function meseconify_door(name) | |||||||
| 		}) | 		}) | ||||||
| 	elseif minetest.registered_items[name .. "_a"] then | 	elseif minetest.registered_items[name .. "_a"] then | ||||||
| 		-- new style mesh node based doors | 		-- 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 = { | 		local override = { | ||||||
| 			mesecons = {effector = { | 			mesecons = {effector = { | ||||||
| 				action_on = function(pos) | 				action_on = function(pos) | ||||||
| @@ -73,15 +82,6 @@ local function meseconify_door(name) | |||||||
| 	end | 	end | ||||||
| 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 | -- Trapdoor | ||||||
| local function trapdoor_switch(name) | local function trapdoor_switch(name) | ||||||
| 	return function(pos, node) | 	return function(pos, node) | ||||||
| @@ -131,9 +131,15 @@ local function meseconify_trapdoor(name) | |||||||
| 	end | 	end | ||||||
| end | end | ||||||
| 
 | 
 | ||||||
| local trapdoors_list = { | minetest.register_on_mods_loaded(function() | ||||||
| 	"doors:trapdoor", | 	for k,_ in pairs(doors.registered_doors) do | ||||||
| 	"doors:trapdoor_steel", | 		if k:find("_a$") then | ||||||
| 	"xpanes:trapdoor_steel_bar" | 			meseconify_door(k:sub(1,-3)) | ||||||
| } | 		end | ||||||
| for i=1,#trapdoors_list do meseconify_trapdoor(trapdoors_list[i]) end | 	end | ||||||
|  | 	for k,_ in pairs(doors.registered_trapdoors) do | ||||||
|  | 		if not k:find("_open$") then | ||||||
|  | 			meseconify_trapdoor(k) | ||||||
|  | 		end | ||||||
|  | 	end | ||||||
|  | end) | ||||||
| @@ -14,7 +14,11 @@ if minetest.get_modpath("default") then | |||||||
| 	dofile(minetest.get_modpath("mesecons_gamecompat").."/compat_mtg.lua") | 	dofile(minetest.get_modpath("mesecons_gamecompat").."/compat_mtg.lua") | ||||||
| end | 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") | 	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 | end | ||||||
|   | |||||||
| @@ -1,3 +1,3 @@ | |||||||
| name = mesecons_gamecompat | name = mesecons_gamecompat | ||||||
| depends = mesecons | 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 | ||||||
|   | |||||||
| @@ -1,3 +1,5 @@ | |||||||
|  | local S = minetest.get_translator(minetest.get_current_modname()) | ||||||
|  |  | ||||||
| local selection_box = { | local selection_box = { | ||||||
| 	type = "fixed", | 	type = "fixed", | ||||||
| 	fixed = { -8/16, -8/16, -8/16, 8/16, -6/16, 8/16 } | 	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, | register_gate("diode", 1, function (input) return input end, | ||||||
| 	{{"mesecons:mesecon", "mesecons_torch:mesecon_torch_on", "mesecons_torch:mesecon_torch_on"}}, | 	{{"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, | register_gate("not", 1, function (input) return not input end, | ||||||
| 	{{"mesecons:mesecon", "mesecons_torch:mesecon_torch_on", "mesecons:mesecon"}}, | 	{{"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, | register_gate("and", 2, function (val1, val2) return val1 and val2 end, | ||||||
| 	{{"mesecons:mesecon", "", ""}, | 	{{"mesecons:mesecon", "", ""}, | ||||||
| 	 {"", "mesecons_materials:silicon", "mesecons:mesecon"}, | 	 {"", "mesecons_materials:silicon", "mesecons:mesecon"}, | ||||||
| 	 {"mesecons:mesecon", "", ""}}, | 	 {"mesecons:mesecon", "", ""}}, | ||||||
| 	"AND Gate") | 	S("AND Gate")) | ||||||
|  |  | ||||||
| register_gate("nand", 2, function (val1, val2) return not (val1 and val2) end, | register_gate("nand", 2, function (val1, val2) return not (val1 and val2) end, | ||||||
| 	{{"mesecons:mesecon", "", ""}, | 	{{"mesecons:mesecon", "", ""}, | ||||||
| 	 {"", "mesecons_materials:silicon", "mesecons_torch:mesecon_torch_on"}, | 	 {"", "mesecons_materials:silicon", "mesecons_torch:mesecon_torch_on"}, | ||||||
| 	 {"mesecons:mesecon", "", ""}}, | 	 {"mesecons:mesecon", "", ""}}, | ||||||
| 	"NAND Gate") | 	S("NAND Gate")) | ||||||
|  |  | ||||||
| register_gate("xor", 2, function (val1, val2) return (val1 or val2) and not (val1 and val2) end, | register_gate("xor", 2, function (val1, val2) return (val1 or val2) and not (val1 and val2) end, | ||||||
| 	{{"mesecons:mesecon", "", ""}, | 	{{"mesecons:mesecon", "", ""}, | ||||||
| 	 {"", "mesecons_materials:silicon", "mesecons_materials:silicon"}, | 	 {"", "mesecons_materials:silicon", "mesecons_materials:silicon"}, | ||||||
| 	 {"mesecons:mesecon", "", ""}}, | 	 {"mesecons:mesecon", "", ""}}, | ||||||
| 	"XOR Gate") | 	S("XOR Gate")) | ||||||
|  |  | ||||||
| register_gate("nor", 2, function (val1, val2) return not (val1 or val2) end, | register_gate("nor", 2, function (val1, val2) return not (val1 or val2) end, | ||||||
| 	{{"mesecons:mesecon", "", ""}, | 	{{"mesecons:mesecon", "", ""}, | ||||||
| 	 {"", "mesecons:mesecon", "mesecons_torch:mesecon_torch_on"}, | 	 {"", "mesecons:mesecon", "mesecons_torch:mesecon_torch_on"}, | ||||||
| 	 {"mesecons:mesecon", "", ""}}, | 	 {"mesecons:mesecon", "", ""}}, | ||||||
| 	"NOR Gate") | 	S("NOR Gate")) | ||||||
|  |  | ||||||
| register_gate("or", 2, function (val1, val2) return (val1 or val2) end, | register_gate("or", 2, function (val1, val2) return (val1 or val2) end, | ||||||
| 	{{"mesecons:mesecon", "", ""}, | 	{{"mesecons:mesecon", "", ""}, | ||||||
| 	 {"", "mesecons:mesecon", "mesecons:mesecon"}, | 	 {"", "mesecons:mesecon", "mesecons:mesecon"}, | ||||||
| 	 {"mesecons:mesecon", "", ""}}, | 	 {"mesecons:mesecon", "", ""}}, | ||||||
| 	"OR Gate") | 	S("OR Gate")) | ||||||
|   | |||||||
							
								
								
									
										8
									
								
								mesecons_gates/locale/mesecons_gates.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								mesecons_gates/locale/mesecons_gates.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | |||||||
|  | # textdomain: mesecons_gates | ||||||
|  | Diode=Диод | ||||||
|  | NOT Gate=НЕ-шлюз | ||||||
|  | AND Gate=И-шлюз | ||||||
|  | NAND Gate=NAND-шлюз | ||||||
|  | XOR Gate=XOR-шлюз | ||||||
|  | NOR Gate=NOR-шлюз | ||||||
|  | OR Gate=ИЛИ-шлюз | ||||||
							
								
								
									
										8
									
								
								mesecons_gates/locale/mesecons_gates.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								mesecons_gates/locale/mesecons_gates.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -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 перехідник | ||||||
							
								
								
									
										8
									
								
								mesecons_gates/locale/template.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								mesecons_gates/locale/template.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | |||||||
|  | # textdomain: mesecons_gates | ||||||
|  | Diode= | ||||||
|  | NOT Gate= | ||||||
|  | AND Gate= | ||||||
|  | NAND Gate= | ||||||
|  | XOR Gate= | ||||||
|  | NOR Gate= | ||||||
|  | OR Gate= | ||||||
							
								
								
									
										4
									
								
								mesecons_hydroturbine/locale/mesecons_hydroturbine.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_hydroturbine/locale/mesecons_hydroturbine.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_hydroturbine | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Water Turbine=Гидротурбина | ||||||
							
								
								
									
										4
									
								
								mesecons_hydroturbine/locale/mesecons_hydroturbine.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_hydroturbine/locale/mesecons_hydroturbine.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_hydroturbine | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Water Turbine=Гідротурбіна | ||||||
							
								
								
									
										4
									
								
								mesecons_insulated/locale/mesecons_insulated.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_insulated/locale/mesecons_insulated.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_insulated | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Straight Insulated Mesecon=Прямой изолированный мезекон | ||||||
							
								
								
									
										4
									
								
								mesecons_insulated/locale/mesecons_insulated.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_insulated/locale/mesecons_insulated.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_insulated | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Straight Insulated Mesecon=Прямий ізольований месекон | ||||||
							
								
								
									
										4
									
								
								mesecons_lamp/locale/mesecons_lamp.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_lamp/locale/mesecons_lamp.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_lamp | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Mesecon Lamp=Мезеконовая лампа | ||||||
							
								
								
									
										4
									
								
								mesecons_lamp/locale/mesecons_lamp.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_lamp/locale/mesecons_lamp.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_lamp | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Mesecon Lamp=Месеконова лампа | ||||||
							
								
								
									
										15
									
								
								mesecons_lightstone/locale/mesecons_lightstone.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								mesecons_lightstone/locale/mesecons_lightstone.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -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=Фиолетовый светящийся камень | ||||||
							
								
								
									
										15
									
								
								mesecons_lightstone/locale/mesecons_lightstone.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								mesecons_lightstone/locale/mesecons_lightstone.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -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=Фіолетовий світловий камінь | ||||||
| @@ -509,6 +509,7 @@ local function create_environment(pos, mem, event, itbl, send_warning) | |||||||
| 		print = safe_print, | 		print = safe_print, | ||||||
| 		interrupt = get_interrupt(pos, itbl, send_warning), | 		interrupt = get_interrupt(pos, itbl, send_warning), | ||||||
| 		digiline_send = get_digiline_send(pos, itbl, send_warning), | 		digiline_send = get_digiline_send(pos, itbl, send_warning), | ||||||
|  | 		sha256sum = minetest.sha256, | ||||||
| 		string = { | 		string = { | ||||||
| 			byte = string.byte, | 			byte = string.byte, | ||||||
| 			char = string.char, | 			char = string.char, | ||||||
|   | |||||||
| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_luacontroller | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Luacontroller=Lua-контроллер | ||||||
| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_luacontroller | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Luacontroller=Lua-контролер | ||||||
							
								
								
									
										6
									
								
								mesecons_materials/locale/mesecons_materials.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								mesecons_materials/locale/mesecons_materials.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | |||||||
|  | # textdomain: mesecons_materials | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Glue=Клей | ||||||
|  | Fiber=Волокно | ||||||
|  | Silicon=Кремний | ||||||
							
								
								
									
										6
									
								
								mesecons_materials/locale/mesecons_materials.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								mesecons_materials/locale/mesecons_materials.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | |||||||
|  | # textdomain: mesecons_materials | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Glue=Клей | ||||||
|  | Fiber=Волокно | ||||||
|  | Silicon=Кремній | ||||||
| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_microcontroller | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Microcontroller=Микроконтроллер | ||||||
| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_microcontroller | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Microcontroller=Мікроконтролер | ||||||
							
								
								
									
										7
									
								
								mesecons_movestones/locale/mesecons_movestones.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								mesecons_movestones/locale/mesecons_movestones.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | |||||||
|  | # textdomain: mesecons_movestones | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Movestone=Ходовой камень | ||||||
|  | Sticky Movestone=Липкий ходовой камень | ||||||
|  | Vertical Movestone=Вертикальный ходовой камень | ||||||
|  | Vertical Sticky Movestone=Вертикальный липкий ходовой камень | ||||||
							
								
								
									
										7
									
								
								mesecons_movestones/locale/mesecons_movestones.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								mesecons_movestones/locale/mesecons_movestones.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | |||||||
|  | # textdomain: mesecons_movestones | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Movestone=Ходовий камінь | ||||||
|  | Sticky Movestone=Липкий ходовий камінь | ||||||
|  | Vertical Movestone=Вертикальний ходовий камінь | ||||||
|  | Vertical Sticky Movestone=Вертикальний липкий ходовий камінь | ||||||
							
								
								
									
										4
									
								
								mesecons_noteblock/locale/mesecons_noteblock.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_noteblock/locale/mesecons_noteblock.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_noteblock | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Noteblock=Нотный блок | ||||||
							
								
								
									
										4
									
								
								mesecons_noteblock/locale/mesecons_noteblock.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_noteblock/locale/mesecons_noteblock.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_noteblock | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Noteblock=Нотний блок | ||||||
| @@ -115,27 +115,13 @@ local function piston_off(pos, node) | |||||||
| 	end | 	end | ||||||
| end | end | ||||||
|  |  | ||||||
| local orientations = { |  | ||||||
| 	[0] = { 4,  8}, |  | ||||||
| 	      {13, 17}, |  | ||||||
| 	      {10,  6}, |  | ||||||
| 	      {20, 15}, |  | ||||||
| } |  | ||||||
|  |  | ||||||
| local function piston_orientate(pos, placer) | local function piston_orientate(pos, placer) | ||||||
| 	mesecon.mvps_set_owner(pos, placer) | 	mesecon.mvps_set_owner(pos, placer) | ||||||
| 	if not placer then | 	if not placer then | ||||||
| 		return | 		return | ||||||
| 	end | 	end | ||||||
| 	local pitch = math.deg(placer:get_look_vertical()) |  | ||||||
| 	local node = minetest.get_node(pos) | 	local node = minetest.get_node(pos) | ||||||
| 	if pitch > 55 then | 	node.param2 = core.dir_to_facedir(placer:get_look_dir(), true) | ||||||
| 		node.param2 = orientations[node.param2][1] |  | ||||||
| 	elseif pitch < -55 then |  | ||||||
| 		node.param2 = orientations[node.param2][2] |  | ||||||
| 	else |  | ||||||
| 		return |  | ||||||
| 	end |  | ||||||
| 	minetest.swap_node(pos, node) | 	minetest.swap_node(pos, node) | ||||||
| 	-- minetest.after, because on_placenode for unoriented piston must be processed first | 	-- minetest.after, because on_placenode for unoriented piston must be processed first | ||||||
| 	minetest.after(0, mesecon.on_placenode, pos, node) | 	minetest.after(0, mesecon.on_placenode, pos, node) | ||||||
|   | |||||||
							
								
								
									
										9
									
								
								mesecons_pistons/locale/mesecons_pistons.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								mesecons_pistons/locale/mesecons_pistons.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | |||||||
|  | # textdomain: mesecons_pistons | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Piston=Поршень | ||||||
|  | Activated Piston Base=Основание активированного поршня | ||||||
|  | Piston Pusher=Толкающая часть поршня | ||||||
|  | Sticky Piston=Липкий поршень | ||||||
|  | Activated Sticky Piston Base=Основание активированного липкого поршня | ||||||
|  | Sticky Piston Pusher=Толкающая часть липкого поршня | ||||||
							
								
								
									
										9
									
								
								mesecons_pistons/locale/mesecons_pistons.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								mesecons_pistons/locale/mesecons_pistons.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,9 @@ | |||||||
|  | # textdomain: mesecons_pistons | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Piston=Поршень | ||||||
|  | Activated Piston Base=Основа активованого поршня | ||||||
|  | Piston Pusher=Штовхаюча частина поршня | ||||||
|  | Sticky Piston=Липкий поршень | ||||||
|  | Activated Sticky Piston Base=Основа активованого липкого поршня | ||||||
|  | Sticky Piston Pusher=Штовхаюча частина липкого поршня | ||||||
							
								
								
									
										4
									
								
								mesecons_powerplant/locale/mesecons_powerplant.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_powerplant/locale/mesecons_powerplant.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_powerplant | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Power Plant=Энергоцветок | ||||||
							
								
								
									
										4
									
								
								mesecons_powerplant/locale/mesecons_powerplant.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_powerplant/locale/mesecons_powerplant.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_powerplant | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Power Plant=Енергоквітка | ||||||
| @@ -0,0 +1,5 @@ | |||||||
|  | # textdomain: mesecons_pressureplates | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Wooden Pressure Plate=Деревянная нажимная пластина | ||||||
|  | Stone Pressure Plate=Каменная нажимная пластина | ||||||
| @@ -0,0 +1,5 @@ | |||||||
|  | # textdomain: mesecons_pressureplates | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Wooden Pressure Plate=Дерев'яна натискна плита | ||||||
|  | Stone Pressure Plate=Кам'яна натискна плита | ||||||
							
								
								
									
										5
									
								
								mesecons_random/locale/mesecons_random.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								mesecons_random/locale/mesecons_random.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | |||||||
|  | # textdomain: mesecons_random | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Removestone=Исчезающий камень | ||||||
|  | Ghoststone=Призрачный камень | ||||||
							
								
								
									
										5
									
								
								mesecons_random/locale/mesecons_random.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								mesecons_random/locale/mesecons_random.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | |||||||
|  | # textdomain: mesecons_random | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Removestone=Зникаючий камінь | ||||||
|  | Ghoststone=Примарний камінь | ||||||
| @@ -30,6 +30,8 @@ local receiver_get_rules = mesecon.horiz_rules_getter({ | |||||||
| 	{x = 0, y = 0, z = -2}, | 	{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", { | mesecon.register_node("mesecons_receiver:receiver", { | ||||||
| 	drawtype = "nodebox", | 	drawtype = "nodebox", | ||||||
| 	paramtype = "light", | 	paramtype = "light", | ||||||
| @@ -98,6 +100,7 @@ mesecon.register_node("mesecons_receiver:receiver_up", { | |||||||
| 	groups = {dig_immediate = 3, not_in_creative_inventory = 1}, | 	groups = {dig_immediate = 3, not_in_creative_inventory = 1}, | ||||||
| 	drop = "mesecons:wire_00000000_off", | 	drop = "mesecons:wire_00000000_off", | ||||||
| 	sounds = mesecon.node_sound.default, | 	sounds = mesecon.node_sound.default, | ||||||
|  | 	use_texture_alpha = use_texture_alpha, | ||||||
| }, { | }, { | ||||||
| 	tiles = {"mesecons_wire_off.png"}, | 	tiles = {"mesecons_wire_off.png"}, | ||||||
| 	mesecons = {conductor = { | 	mesecons = {conductor = { | ||||||
| @@ -143,6 +146,7 @@ mesecon.register_node("mesecons_receiver:receiver_down", { | |||||||
| 	groups = {dig_immediate = 3, not_in_creative_inventory = 1}, | 	groups = {dig_immediate = 3, not_in_creative_inventory = 1}, | ||||||
| 	drop = "mesecons:wire_00000000_off", | 	drop = "mesecons:wire_00000000_off", | ||||||
| 	sounds = mesecon.node_sound.default, | 	sounds = mesecon.node_sound.default, | ||||||
|  | 	use_texture_alpha = use_texture_alpha, | ||||||
| }, { | }, { | ||||||
| 	tiles = {"mesecons_wire_off.png"}, | 	tiles = {"mesecons_wire_off.png"}, | ||||||
| 	mesecons = {conductor = { | 	mesecons = {conductor = { | ||||||
|   | |||||||
							
								
								
									
										4
									
								
								mesecons_solarpanel/locale/mesecons_solarpanel.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_solarpanel/locale/mesecons_solarpanel.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_solarpanel | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Solar Panel=Солнечная панель | ||||||
							
								
								
									
										4
									
								
								mesecons_solarpanel/locale/mesecons_solarpanel.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_solarpanel/locale/mesecons_solarpanel.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_solarpanel | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Solar Panel=Сонячна панель | ||||||
							
								
								
									
										4
									
								
								mesecons_stickyblocks/locale/mesecons_stickyblocks.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_stickyblocks/locale/mesecons_stickyblocks.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_stickyblocks | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Sticky Block=Липкий блок | ||||||
							
								
								
									
										4
									
								
								mesecons_stickyblocks/locale/mesecons_stickyblocks.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_stickyblocks/locale/mesecons_stickyblocks.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_stickyblocks | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Sticky Block=Липкий блок | ||||||
							
								
								
									
										4
									
								
								mesecons_switch/locale/mesecons_switch.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_switch/locale/mesecons_switch.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_switch | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Switch=Выключатель | ||||||
							
								
								
									
										4
									
								
								mesecons_switch/locale/mesecons_switch.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_switch/locale/mesecons_switch.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_switch | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Switch=Перемикач | ||||||
							
								
								
									
										4
									
								
								mesecons_torch/locale/mesecons_torch.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_torch/locale/mesecons_torch.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_torch | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Mesecon Torch=Мезе-факел | ||||||
							
								
								
									
										4
									
								
								mesecons_torch/locale/mesecons_torch.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_torch/locale/mesecons_torch.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_torch | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Mesecon Torch=Месескип | ||||||
							
								
								
									
										4
									
								
								mesecons_walllever/locale/mesecons_walllever.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_walllever/locale/mesecons_walllever.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_walllever | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Lever=Рычаг | ||||||
							
								
								
									
										4
									
								
								mesecons_walllever/locale/mesecons_walllever.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_walllever/locale/mesecons_walllever.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_walllever | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Lever=Важіль | ||||||
							
								
								
									
										4
									
								
								mesecons_wires/locale/mesecons_wires.ru.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_wires/locale/mesecons_wires.ru.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_wires | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Mesecon=Мезекон | ||||||
							
								
								
									
										4
									
								
								mesecons_wires/locale/mesecons_wires.uk.tr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								mesecons_wires/locale/mesecons_wires.uk.tr
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | # textdomain: mesecons_wires | ||||||
|  |  | ||||||
|  | ### init.lua ### | ||||||
|  | Mesecon=Месекон | ||||||
| @@ -1,3 +1,5 @@ | |||||||
| name = mesecons | name = mesecons | ||||||
| description = Mod that implements a ton of items related to digital circuitry. | description = Mod that implements a ton of items related to digital circuitry. | ||||||
| min_minetest_version = 5.0 | min_minetest_version = 5.0 | ||||||
|  | author = Jeija | ||||||
|  | title = Mesecons | ||||||
|   | |||||||
| @@ -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 | 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] | [mesecons_detector] | ||||||
|  |  | ||||||
| mesecon.detector_radius (Player detector scanning radius) int 6 3 16 | mesecon.detector_radius (Player detector scanning radius) int 6 3 16 | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user