From 4ca6a5ca8f25bfb3536d1ce942971c3705896785 Mon Sep 17 00:00:00 2001 From: h-v-smacker Date: Tue, 15 May 2018 11:46:03 +0300 Subject: locked switch bug fix --- extranodes/extramesecons.lua | 22 +++++++++++------ technic/machines/register/compressor_recipes.lua | 31 ++++++++++++++++++------ technic/machines/register/extractor_recipes.lua | 12 ++++++--- technic/machines/register/grinder_recipes.lua | 16 ++++++------ 4 files changed, 54 insertions(+), 27 deletions(-) diff --git a/extranodes/extramesecons.lua b/extranodes/extramesecons.lua index 1dd712d..05581c5 100644 --- a/extranodes/extramesecons.lua +++ b/extranodes/extramesecons.lua @@ -8,11 +8,11 @@ if minetest.get_modpath("mesecons") then is_ground_content = false, sounds = default.node_sound_stone_defaults(), after_place_node = function(pos, placer, itemstack, pointed_thing) - local meta = minetest:get_meta(pos) + local meta = minetest.get_meta(pos) meta:set_string("owner", placer:get_player_name() or "") end, on_rightclick = function (pos, node, player) - local meta = minetest:get_meta(pos) + local meta = minetest.get_meta(pos) local owner = meta:get_string("owner") local pname = player:get_player_name(); if owner ~= pname then @@ -28,15 +28,21 @@ if minetest.get_modpath("mesecons") then end },{ groups = {dig_immediate=2}, - tiles = { "mesecons_switch_side.png", "mesecons_switch_side.png", - "mesecons_switch_side.png^default_key.png", "mesecons_switch_side.png^default_key.png", - "mesecons_switch_side.png", "mesecons_switch_off.png^mesecons_switch_locked_frame.png"}, + tiles = { "mesecons_switch_side.png", + "mesecons_switch_side.png", + "mesecons_switch_side.png^default_key.png^[transformR180", + "mesecons_switch_side.png^default_key.png^[transformR180FX", + "mesecons_switch_side.png", + "mesecons_switch_off.png^mesecons_switch_locked_frame.png"}, mesecons = {receptor = { state = mesecon.state.off }} },{ groups = {dig_immediate=2, not_in_creative_inventory=1}, - tiles = { "mesecons_switch_side.png", "mesecons_switch_side.png", - "mesecons_switch_side.png^default_key.png", "mesecons_switch_side.png^default_key.png", - "mesecons_switch_side.png", "mesecons_switch_on.png^mesecons_switch_locked_frame.png"}, + tiles = { "mesecons_switch_side.png", + "mesecons_switch_side.png", + "mesecons_switch_side.png^default_key.png^[transformR180", + "mesecons_switch_side.png^default_key.png^[transformR180FX", + "mesecons_switch_side.png", + "mesecons_switch_on.png^mesecons_switch_locked_frame.png"}, mesecons = {receptor = { state = mesecon.state.on }} }) diff --git a/technic/machines/register/compressor_recipes.lua b/technic/machines/register/compressor_recipes.lua index b59478b..b36936c 100644 --- a/technic/machines/register/compressor_recipes.lua +++ b/technic/machines/register/compressor_recipes.lua @@ -48,16 +48,31 @@ if minetest.get_modpath("ethereal") then end +-- liquid oxygen table.insert(recipes, {"vessels:steel_bottle", "technic:lox"}) --- defuse the default sandstone recipe, since we have the compressor to take over in a more realistic manner -minetest.clear_craft({ - output = "default:sandstone", - recipe = { - {'group:sand', 'group:sand'}, - {'group:sand', 'group:sand'} - }, -}) + +-- defuse the default sandstone recipe, since we have the compressor to take over in a +-- more realistic manner. It also uses groups instead of proper sand, which is even more +-- important, given there are many types of sand and sandstone. +-- minetest.clear_craft({ +-- output = "default:sandstone", +-- recipe = { +-- {'group:sand', 'group:sand'}, +-- {'group:sand', 'group:sand'} +-- }, +-- }) +-- +-- -- provide an alternative recipe for sandstone, which demands the default sand in particular +-- -- the compressing recipe offered by technic is still offering superior performance +-- minetest.register_craft({ +-- output = "default:sandstone", +-- recipe = { +-- {'default:sand', 'default:sand'}, +-- {'default:sand', 'default:sand'} +-- }, +-- }) +-- UPD: the above changes were made obsolete by default game development for _, data in pairs(recipes) do diff --git a/technic/machines/register/extractor_recipes.lua b/technic/machines/register/extractor_recipes.lua index 34d97ab..e052971 100644 --- a/technic/machines/register/extractor_recipes.lua +++ b/technic/machines/register/extractor_recipes.lua @@ -64,17 +64,21 @@ if minetest.get_modpath("dye") then end if minetest.get_modpath("bakedclay") then - table.insert(dye_recipes, {"bakedclay:delphinium", "dye:cyan 8"}) - table.insert(dye_recipes, {"bakedclay:thistle", "dye:magenta 8"}) - table.insert(dye_recipes, {"bakedclay:lazarus", "dye:pink 8"}) - table.insert(dye_recipes, {"bakedclay:mannagrass", "dye:dark_green 8"}) + table.insert(dye_recipes, {"bakedclay:delphinium", "dye:cyan 6"}) + table.insert(dye_recipes, {"bakedclay:thistle", "dye:magenta 6"}) + table.insert(dye_recipes, {"bakedclay:lazarus", "dye:pink 6"}) + table.insert(dye_recipes, {"bakedclay:mannagrass", "dye:dark_green 6"}) end + if minetest.get_modpath("wine") then + table.insert(dye_recipes, {"wine:blue_agave", "dye:cyan 6"}) + end if minetest.get_modpath("bonemeal") then table.insert(dye_recipes, {"bonemeal:bone", "dye:white 8"}) table.insert(dye_recipes, {"bonemeal:bonemeal", "dye:white 4"}) end + for _, data in ipairs(dye_recipes) do technic.register_extractor_recipe({input = {data[1]}, output = data[2]}) diff --git a/technic/machines/register/grinder_recipes.lua b/technic/machines/register/grinder_recipes.lua index 3726053..84fbeb7 100644 --- a/technic/machines/register/grinder_recipes.lua +++ b/technic/machines/register/grinder_recipes.lua @@ -45,6 +45,10 @@ if minetest.get_modpath("ethereal") then table.insert(recipes, {"ethereal:charcoal_lump 5", "technic:coal_dust 1"}) end +if minetest.get_modpath("bonemeal") then + table.insert(recipes, {"bonemeal:bone", "bonemeal:bonemeal 8"}) +end + if minetest.get_modpath("moreblocks") then table.insert(recipes, {"moreblocks:cobble_compressed", "default:gravel 9"}) -- there is no other place to throw in the cooking recipe @@ -60,13 +64,11 @@ end -- defuse the sandstone -> 4 sand recipe to avoid infinite sand bugs (also consult the inverse compressor recipe) -- this snippet, when executed, also corrupts some dye+wool combinations. A remedial -- workaround is included in extractor recipes, since it's where we work with dyes. --- UPD: after due consideration, this recipe removal is rejected altogether. --- The dye workaround, however, stays, just to be safe. --- minetest.clear_craft({ --- recipe = { --- {"default:sandstone"} --- } --- }) +minetest.clear_craft({ + recipe = { + {"default:sandstone"} + } +}) if minetest.get_modpath("farming") then table.insert(recipes, {"farming:seed_wheat", "farming:flour 1"}) -- cgit v1.2.3