From 2028ef40cb61d0e6e1fa99d50f6e803b1ed40720 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Fri, 22 Feb 2019 05:29:17 +0100 Subject: [PATCH 01/22] Add screwdriver --- mods/ITEMS/screwdriver/README.txt | 13 ++ mods/ITEMS/screwdriver/init.lua | 170 ++++++++++++++++++ mods/ITEMS/screwdriver/license.txt | 50 ++++++ .../screwdriver/textures/screwdriver.png | Bin 0 -> 182 bytes 4 files changed, 233 insertions(+) create mode 100644 mods/ITEMS/screwdriver/README.txt create mode 100644 mods/ITEMS/screwdriver/init.lua create mode 100644 mods/ITEMS/screwdriver/license.txt create mode 100644 mods/ITEMS/screwdriver/textures/screwdriver.png diff --git a/mods/ITEMS/screwdriver/README.txt b/mods/ITEMS/screwdriver/README.txt new file mode 100644 index 00000000..9d39c58c --- /dev/null +++ b/mods/ITEMS/screwdriver/README.txt @@ -0,0 +1,13 @@ +Minetest Game mod: screwdriver +============================== +See license.txt for license information. + +License of source code +---------------------- +Originally by RealBadAngel, Maciej Kasatkin (LGPL 2.1) +Various Minetest developers and contributors (LGPL 2.1) + +License of media (textures) +--------------------------- +Created by Gambit (CC BY-SA 3.0): + screwdriver.png diff --git a/mods/ITEMS/screwdriver/init.lua b/mods/ITEMS/screwdriver/init.lua new file mode 100644 index 00000000..4d38bbc2 --- /dev/null +++ b/mods/ITEMS/screwdriver/init.lua @@ -0,0 +1,170 @@ +screwdriver = {} + +screwdriver.ROTATE_FACE = 1 +screwdriver.ROTATE_AXIS = 2 +screwdriver.disallow = function(pos, node, user, mode, new_param2) + return false +end +screwdriver.rotate_simple = function(pos, node, user, mode, new_param2) + if mode ~= screwdriver.ROTATE_FACE then + return false + end +end + +-- For attached wallmounted nodes: returns true if rotation is valid +-- simplified version of minetest:builtin/game/falling.lua#L148. +local function check_attached_node(pos, rotation) + local d = minetest.wallmounted_to_dir(rotation) + local p2 = vector.add(pos, d) + local n = minetest.get_node(p2).name + local def2 = minetest.registered_nodes[n] + if def2 and not def2.walkable then + return false + end + return true +end + +screwdriver.rotate = {} + +local facedir_tbl = { + [screwdriver.ROTATE_FACE] = { + [0] = 1, [1] = 2, [2] = 3, [3] = 0, + [4] = 5, [5] = 6, [6] = 7, [7] = 4, + [8] = 9, [9] = 10, [10] = 11, [11] = 8, + [12] = 13, [13] = 14, [14] = 15, [15] = 12, + [16] = 17, [17] = 18, [18] = 19, [19] = 16, + [20] = 21, [21] = 22, [22] = 23, [23] = 20, + }, + [screwdriver.ROTATE_AXIS] = { + [0] = 4, [1] = 4, [2] = 4, [3] = 4, + [4] = 8, [5] = 8, [6] = 8, [7] = 8, + [8] = 12, [9] = 12, [10] = 12, [11] = 12, + [12] = 16, [13] = 16, [14] = 16, [15] = 16, + [16] = 20, [17] = 20, [18] = 20, [19] = 20, + [20] = 0, [21] = 0, [22] = 0, [23] = 0, + }, +} + +screwdriver.rotate.facedir = function(pos, node, mode) + local rotation = node.param2 % 32 -- get first 5 bits + local other = node.param2 - rotation + rotation = facedir_tbl[mode][rotation] or 0 + return rotation + other +end + +screwdriver.rotate.colorfacedir = screwdriver.rotate.facedir + +local wallmounted_tbl = { + [screwdriver.ROTATE_FACE] = {[2] = 5, [3] = 4, [4] = 2, [5] = 3, [1] = 0, [0] = 1}, + [screwdriver.ROTATE_AXIS] = {[2] = 5, [3] = 4, [4] = 2, [5] = 1, [1] = 0, [0] = 3} +} + +screwdriver.rotate.wallmounted = function(pos, node, mode) + local rotation = node.param2 % 8 -- get first 3 bits + local other = node.param2 - rotation + rotation = wallmounted_tbl[mode][rotation] or 0 + if minetest.get_item_group(node.name, "attached_node") ~= 0 then + -- find an acceptable orientation + for i = 1, 5 do + if not check_attached_node(pos, rotation) then + rotation = wallmounted_tbl[mode][rotation] or 0 + else + break + end + end + end + return rotation + other +end + +screwdriver.rotate.colorwallmounted = screwdriver.rotate.wallmounted + +-- Handles rotation +screwdriver.handler = function(itemstack, user, pointed_thing, mode, uses) + if pointed_thing.type ~= "node" then + return + end + + local pos = pointed_thing.under + local player_name = user and user:get_player_name() or "" + + if minetest.is_protected(pos, player_name) then + minetest.record_protection_violation(pos, player_name) + return + end + + local node = minetest.get_node(pos) + local ndef = minetest.registered_nodes[node.name] + if not ndef then + return itemstack + end + -- can we rotate this paramtype2? + local fn = screwdriver.rotate[ndef.paramtype2] + if not fn and not ndef.on_rotate then + return itemstack + end + + local should_rotate = true + local new_param2 + if fn then + new_param2 = fn(pos, node, mode) + else + new_param2 = node.param2 + end + + -- Node provides a handler, so let the handler decide instead if the node can be rotated + if ndef.on_rotate then + -- Copy pos and node because callback can modify it + local result = ndef.on_rotate(vector.new(pos), + {name = node.name, param1 = node.param1, param2 = node.param2}, + user, mode, new_param2) + if result == false then -- Disallow rotation + return itemstack + elseif result == true then + should_rotate = false + end + elseif ndef.on_rotate == false then + return itemstack + elseif ndef.can_dig and not ndef.can_dig(pos, user) then + return itemstack + end + + if should_rotate and new_param2 ~= node.param2 then + node.param2 = new_param2 + minetest.swap_node(pos, node) + minetest.check_for_falling(pos) + end + + if not (minetest.settings:get_bool("creative_mode")) then + itemstack:add_wear(65535 / ((uses or 200) - 1)) + end + + return itemstack +end + +-- Screwdriver +minetest.register_tool("screwdriver:screwdriver", { + description = "Screwdriver", + inventory_image = "screwdriver.png", + on_use = function(itemstack, user, pointed_thing) + screwdriver.handler(itemstack, user, pointed_thing, screwdriver.ROTATE_FACE, 200) + return itemstack + end, + on_place = function(itemstack, user, pointed_thing) + screwdriver.handler(itemstack, user, pointed_thing, screwdriver.ROTATE_AXIS, 200) + return itemstack + end, +}) + + +minetest.register_craft({ + output = "screwdriver:screwdriver", + recipe = { + {"mcl_core:iron_ingot"}, + {"mcl_core:stick"} + } +}) + +minetest.register_alias("screwdriver:screwdriver1", "screwdriver:screwdriver") +minetest.register_alias("screwdriver:screwdriver2", "screwdriver:screwdriver") +minetest.register_alias("screwdriver:screwdriver3", "screwdriver:screwdriver") +minetest.register_alias("screwdriver:screwdriver4", "screwdriver:screwdriver") diff --git a/mods/ITEMS/screwdriver/license.txt b/mods/ITEMS/screwdriver/license.txt new file mode 100644 index 00000000..d9b721bb --- /dev/null +++ b/mods/ITEMS/screwdriver/license.txt @@ -0,0 +1,50 @@ +License of source code +---------------------- + +GNU Lesser General Public License, version 2.1 +Copyright (C) 2013-2016 RealBadAngel, Maciej Kasatkin +Copyright (C) 2013-2016 Various Minetest developers and contributors + +This program is free software; you can redistribute it and/or modify it under the terms +of the GNU Lesser General Public License as published by the Free Software Foundation; +either version 2.1 of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU Lesser General Public License for more details: +https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2013-2016 Gambit + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/ITEMS/screwdriver/textures/screwdriver.png b/mods/ITEMS/screwdriver/textures/screwdriver.png new file mode 100644 index 0000000000000000000000000000000000000000..b2a56d558b34392a3275da443c0ba32a3b4db340 GIT binary patch literal 182 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdq5|d_r7(G7EiF`7$#yc628s z7z)39`EqWWSx=l*xtH3CQum7&FUG~i<>uyAR#xuYw{K^Hk@fK_H)R%)Y32O5POM=Q-*yMdNzVclr=>h< gNl@c3I>5*vUczopr0RG23A^-pY literal 0 HcmV?d00001 From eeac1435f9063bdb9d01bfd95e072ea6240ab4ff Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 15:14:16 +0100 Subject: [PATCH 02/22] Update screwdriver mod for MT 5.0.0 --- mods/ITEMS/screwdriver/init.lua | 5 ++++- mods/ITEMS/screwdriver/locale/screwdriver.de.tr | 2 ++ mods/ITEMS/screwdriver/locale/template.txt | 2 ++ 3 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 mods/ITEMS/screwdriver/locale/screwdriver.de.tr create mode 100644 mods/ITEMS/screwdriver/locale/template.txt diff --git a/mods/ITEMS/screwdriver/init.lua b/mods/ITEMS/screwdriver/init.lua index 4d38bbc2..ca77e400 100644 --- a/mods/ITEMS/screwdriver/init.lua +++ b/mods/ITEMS/screwdriver/init.lua @@ -1,3 +1,5 @@ +local S = minetest.get_translator("screwdriver") + screwdriver = {} screwdriver.ROTATE_FACE = 1 @@ -143,8 +145,9 @@ end -- Screwdriver minetest.register_tool("screwdriver:screwdriver", { - description = "Screwdriver", + description = S("Screwdriver"), inventory_image = "screwdriver.png", + groups = { tool = 1 }, on_use = function(itemstack, user, pointed_thing) screwdriver.handler(itemstack, user, pointed_thing, screwdriver.ROTATE_FACE, 200) return itemstack diff --git a/mods/ITEMS/screwdriver/locale/screwdriver.de.tr b/mods/ITEMS/screwdriver/locale/screwdriver.de.tr new file mode 100644 index 00000000..35c99c05 --- /dev/null +++ b/mods/ITEMS/screwdriver/locale/screwdriver.de.tr @@ -0,0 +1,2 @@ +# textdomain: screwdriver +Screwdriver=Schraubendreher diff --git a/mods/ITEMS/screwdriver/locale/template.txt b/mods/ITEMS/screwdriver/locale/template.txt new file mode 100644 index 00000000..b3871a11 --- /dev/null +++ b/mods/ITEMS/screwdriver/locale/template.txt @@ -0,0 +1,2 @@ +#textdomain: screwdriver +Screwdriver= From 5fd746710fc92a2590d2fbe1105fbb68e658f1bf Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 16:08:24 +0100 Subject: [PATCH 03/22] Add rotation support for pistons --- mods/ITEMS/REDSTONE/mesecons_pistons/init.lua | 70 ++++++++++++++----- 1 file changed, 51 insertions(+), 19 deletions(-) diff --git a/mods/ITEMS/REDSTONE/mesecons_pistons/init.lua b/mods/ITEMS/REDSTONE/mesecons_pistons/init.lua index 65b1e9be..09309e5f 100644 --- a/mods/ITEMS/REDSTONE/mesecons_pistons/init.lua +++ b/mods/ITEMS/REDSTONE/mesecons_pistons/init.lua @@ -177,7 +177,9 @@ local usagehelp_piston = S("This block can have one of 6 possible orientations." local on_rotate if minetest.get_modpath("screwdriver") then - on_rotate = screwdriver.disallow + on_rotate = function(pos, node, user, mode, new_param2) + return false + end end -- offstate @@ -206,7 +208,12 @@ minetest.register_node("mesecons_pistons:piston_normal_off", { }}, _mcl_blast_resistance = 2.5, _mcl_hardness = 0.5, - on_rotate = on_rotate, + on_rotate = function(pos, node, user, mode) + if mode == screwdriver.ROTATE_AXIS then + minetest.set_node(pos, {name="mesecons_pistons:piston_up_normal_off"}) + return false + end + end, }) -- onstate @@ -236,7 +243,7 @@ minetest.register_node("mesecons_pistons:piston_normal_on", { }}, _mcl_blast_resistance = 2.5, _mcl_hardness = 0.5, - on_rotate = on_rotate, + on_rotate = false, }) -- pusher @@ -260,7 +267,7 @@ minetest.register_node("mesecons_pistons:piston_pusher_normal", { node_box = piston_pusher_box, sounds = mcl_sounds.node_sound_wood_defaults(), _mcl_blast_resistance = 2.5, - on_rotate = on_rotate, + on_rotate = false, }) -- Sticky ones @@ -302,7 +309,12 @@ minetest.register_node("mesecons_pistons:piston_sticky_off", { }}, _mcl_blast_resistance = 2.5, _mcl_hardness = 0.5, - on_rotate = on_rotate, + on_rotate = function(pos, node, user, mode) + if mode == screwdriver.ROTATE_AXIS then + minetest.set_node(pos, {name="mesecons_pistons:piston_up_sticky_off"}) + return false + end + end, }) -- onstate @@ -332,7 +344,7 @@ minetest.register_node("mesecons_pistons:piston_sticky_on", { }}, _mcl_blast_resistance = 2.5, _mcl_hardness = 0.5, - on_rotate = on_rotate, + on_rotate = false, }) -- pusher @@ -356,7 +368,7 @@ minetest.register_node("mesecons_pistons:piston_pusher_sticky", { node_box = piston_pusher_box, sounds = mcl_sounds.node_sound_wood_defaults(), _mcl_blast_resistance = 2.5, - on_rotate = on_rotate, + on_rotate = false, }) -- @@ -414,7 +426,12 @@ minetest.register_node("mesecons_pistons:piston_up_normal_off", { }), _mcl_blast_resistance = 2.5, _mcl_hardness = 0.5, - on_rotate = on_rotate, + on_rotate = function(pos, node, user, mode) + if mode == screwdriver.ROTATE_AXIS then + minetest.set_node(pos, {name="mesecons_pistons:piston_down_normal_off"}) + end + return false + end, }) -- onstate @@ -444,7 +461,7 @@ minetest.register_node("mesecons_pistons:piston_up_normal_on", { }}, _mcl_blast_resistance = 2.5, _mcl_hardness = 0.5, - on_rotate = on_rotate, + on_rotate = false, }) -- pusher @@ -468,7 +485,7 @@ minetest.register_node("mesecons_pistons:piston_up_pusher_normal", { node_box = piston_up_pusher_box, sounds = mcl_sounds.node_sound_wood_defaults(), _mcl_blast_resistance = 2.5, - on_rotate = on_rotate, + on_rotate = false, }) @@ -509,7 +526,12 @@ minetest.register_node("mesecons_pistons:piston_up_sticky_off", { }}, _mcl_blast_resistance = 2.5, _mcl_hardness = 0.5, - on_rotate = on_rotate, + on_rotate = function(pos, node, user, mode) + if mode == screwdriver.ROTATE_AXIS then + minetest.set_node(pos, {name="mesecons_pistons:piston_down_sticky_off"}) + end + return false + end, }) -- onstate @@ -539,7 +561,7 @@ minetest.register_node("mesecons_pistons:piston_up_sticky_on", { }}, _mcl_blast_resistance = 2.5, _mcl_hardness = 0.5, - on_rotate = on_rotate, + on_rotate = false, }) -- pusher @@ -563,7 +585,7 @@ minetest.register_node("mesecons_pistons:piston_up_pusher_sticky", { node_box = piston_up_pusher_box, sounds = mcl_sounds.node_sound_wood_defaults(), _mcl_blast_resistance = 2.5, - on_rotate = on_rotate, + on_rotate = false, }) -- @@ -621,7 +643,12 @@ minetest.register_node("mesecons_pistons:piston_down_normal_off", { }}, _mcl_blast_resistance = 2.5, _mcl_hardness = 0.5, - on_rotate = on_rotate, + on_rotate = function(pos, node, user, mode) + if mode == screwdriver.ROTATE_AXIS then + minetest.set_node(pos, {name="mesecons_pistons:piston_normal_off"}) + end + return false + end, }) -- onstate @@ -651,7 +678,7 @@ minetest.register_node("mesecons_pistons:piston_down_normal_on", { }}, _mcl_blast_resistance = 2.5, _mcl_hardness = 0.5, - on_rotate = on_rotate, + on_rotate = false, }) -- pusher @@ -675,7 +702,7 @@ minetest.register_node("mesecons_pistons:piston_down_pusher_normal", { node_box = piston_down_pusher_box, sounds = mcl_sounds.node_sound_wood_defaults(), _mcl_blast_resistance = 2.5, - on_rotate = on_rotate, + on_rotate = false, }) -- Sticky @@ -711,7 +738,12 @@ minetest.register_node("mesecons_pistons:piston_down_sticky_off", { }}, _mcl_blast_resistance = 2.5, _mcl_hardness = 0.5, - on_rotate = on_rotate, + on_rotate = function(pos, node, user, mode) + if mode == screwdriver.ROTATE_AXIS then + minetest.set_node(pos, {name="mesecons_pistons:piston_sticky_off"}) + end + return false + end, }) -- onstate @@ -741,7 +773,7 @@ minetest.register_node("mesecons_pistons:piston_down_sticky_on", { }}, _mcl_blast_resistance = 2.5, _mcl_hardness = 0.5, - on_rotate = on_rotate, + on_rotate = false, }) -- pusher @@ -765,7 +797,7 @@ minetest.register_node("mesecons_pistons:piston_down_pusher_sticky", { node_box = piston_down_pusher_box, sounds = mcl_sounds.node_sound_wood_defaults(), _mcl_blast_resistance = 2.5, - on_rotate = on_rotate, + on_rotate = false, }) From 644187e204c9b4777a28f57e836eb2da7fb9e69d Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 16:27:11 +0100 Subject: [PATCH 04/22] Add secondary screwdriver support for stairs --- mods/ITEMS/mcl_stairs/api.lua | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/mods/ITEMS/mcl_stairs/api.lua b/mods/ITEMS/mcl_stairs/api.lua index a6e6c659..b28d2d24 100644 --- a/mods/ITEMS/mcl_stairs/api.lua +++ b/mods/ITEMS/mcl_stairs/api.lua @@ -121,6 +121,31 @@ function mcl_stairs.register_stair(subname, recipeitem, groups, images, descript return place_stair(itemstack, placer, pointed_thing) end, + on_rotate = function(pos, node, user, mode, param2) + -- Flip stairs vertically + if mode == screwdriver.ROTATE_AXIS then + local minor = node.param2 + if node.param2 >= 20 then + minor = node.param2 - 20 + if minor == 3 then + minor = 1 + elseif minor == 1 then + minor = 3 + end + node.param2 = minor + else + if minor == 3 then + minor = 1 + elseif minor == 1 then + minor = 3 + end + node.param2 = minor + node.param2 = node.param2 + 20 + end + minetest.set_node(pos, node) + return false + end + end, _mcl_hardness = hardness, }) From d502ac3bec40472abb4013f2ef676d874ad00a43 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 16:44:10 +0100 Subject: [PATCH 05/22] Add screwdriver support for itemframes --- mods/ITEMS/mcl_itemframes/init.lua | 40 +++++++++++++++++++++++------- 1 file changed, 31 insertions(+), 9 deletions(-) diff --git a/mods/ITEMS/mcl_itemframes/init.lua b/mods/ITEMS/mcl_itemframes/init.lua index e844e95d..2d5ec5c0 100644 --- a/mods/ITEMS/mcl_itemframes/init.lua +++ b/mods/ITEMS/mcl_itemframes/init.lua @@ -56,14 +56,17 @@ local remove_item_entity = function(pos, node) end end -local update_item_entity = function(pos, node) +local update_item_entity = function(pos, node, param2) remove_item_entity(pos, node) local meta = minetest.get_meta(pos) local inv = meta:get_inventory() local item = inv:get_stack("main", 1) if not item:is_empty() then + if not param2 then + param2 = node.param2 + end if node.name == "mcl_itemframes:item_frame" then - local posad = facedir[node.param2] + local posad = facedir[param2] pos.x = pos.x + posad.x*6.5/16 pos.y = pos.y + posad.y*6.5/16 pos.z = pos.z + posad.z*6.5/16 @@ -78,7 +81,7 @@ local update_item_entity = function(pos, node) end lua:_update_texture() if node.name == "mcl_itemframes:item_frame" then - local yaw = math.pi*2 - node.param2 * math.pi/2 + local yaw = math.pi*2 - param2 * math.pi/2 e:set_yaw(yaw) end end @@ -96,11 +99,6 @@ local drop_item = function(pos, node, meta) remove_item_entity(pos, node) end -local on_rotate -if minetest.get_modpath("screwdriver") then - on_rotate = screwdriver.disallow -end - minetest.register_node("mcl_itemframes:item_frame",{ description = S("Item Frame"), _doc_items_longdesc = S("Item frames are decorative blocks in which items can be placed."), @@ -189,7 +187,31 @@ minetest.register_node("mcl_itemframes:item_frame",{ local node = minetest.get_node(pos) drop_item(pos, node, meta) end, - on_rotate = on_rotate, + on_rotate = function(pos, node, user, mode, param2) + if mode == screwdriver.ROTATE_FACE then + -- Rotate face + local meta = minetest.get_meta(pos) + local node = minetest.get_node(pos) + + local objs = nil + if node.name == "mcl_itemframes:item_frame" then + objs = minetest.get_objects_inside_radius(pos, .5) + end + if objs then + for _, obj in ipairs(objs) do + if obj and obj:get_luaentity() and obj:get_luaentity().name == "mcl_itemframes:item" then + update_item_entity(pos, node, (node.param2+1) % 4) + break + end + end + end + return + elseif mode == screwdriver.ROTATE_AXIS then + -- Place screwdriver into itemframe + minetest.registered_nodes["mcl_itemframes:item_frame"].on_rightclick(pos, node, user, ItemStack("screwdriver:screwdriver")) + return false + end + end, }) minetest.register_craft({ From f218180eaad251bac6373965e900d0ca118b7585 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 16:58:25 +0100 Subject: [PATCH 06/22] Disable rotation of torches and signs --- mods/ITEMS/mcl_signs/init.lua | 8 ++------ mods/ITEMS/mcl_torches/init.lua | 1 + 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/mods/ITEMS/mcl_signs/init.lua b/mods/ITEMS/mcl_signs/init.lua index 133c8dc6..a643bbf7 100644 --- a/mods/ITEMS/mcl_signs/init.lua +++ b/mods/ITEMS/mcl_signs/init.lua @@ -390,15 +390,11 @@ minetest.register_node("mcl_signs:wall_sign", { on_punch = function(pos, node, puncher) update_sign(pos) end, + on_rotate = false, _mcl_hardness = 1, _mcl_blast_resistance = 5, }) -local on_rotate -if minetest.get_modpath("screwdriver") then - on_rotate = screwdriver.disallow -end - -- Standing sign nodes. -- 4 rotations at 0°, 22.5°, 45° and 67.5°. -- These are 4 out of 16 possible rotations. @@ -424,8 +420,8 @@ local ssign = { on_punch = function(pos, node, puncher) update_sign(pos) end, + on_rotate = false, - on_rotate = on_rotate, _mcl_hardness = 1, _mcl_blast_resistance = 5, } diff --git a/mods/ITEMS/mcl_torches/init.lua b/mods/ITEMS/mcl_torches/init.lua index 24d61f9d..35cdf259 100644 --- a/mods/ITEMS/mcl_torches/init.lua +++ b/mods/ITEMS/mcl_torches/init.lua @@ -153,6 +153,7 @@ mcl_torches.register_torch = function(substring, description, doc_items_longdesc wall_side = {-0.5, -0.5, -0.1, -0.2, 0.1, 0.1}, }, sounds = sounds, + on_rotate = false, } if moredef ~= nil then for k,v in pairs(moredef) do From d25922b325e0a6ba13458cf33bf63cffee98caa8 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 17:46:55 +0100 Subject: [PATCH 07/22] Implement sign rotation --- mods/ITEMS/mcl_signs/init.lua | 104 +++++++++++++++++++++++++++------- 1 file changed, 85 insertions(+), 19 deletions(-) diff --git a/mods/ITEMS/mcl_signs/init.lua b/mods/ITEMS/mcl_signs/init.lua index a643bbf7..168d1083 100644 --- a/mods/ITEMS/mcl_signs/init.lua +++ b/mods/ITEMS/mcl_signs/init.lua @@ -201,7 +201,7 @@ local destruct_sign = function(pos) end end -local update_sign = function(pos, fields, sender) +local update_sign = function(pos, fields, sender, force_remove) local meta = minetest.get_meta(pos) if not meta then return @@ -214,16 +214,7 @@ local update_sign = function(pos, fields, sender) if text == nil then text = "" end - local objects = minetest.get_objects_inside_radius(pos, 0.5) - for _, v in ipairs(objects) do - local ent = v:get_luaentity() - if ent and ent.name == "mcl_signs:text" then - v:set_properties({textures={generate_texture(create_lines(text), ent._signnodename)}}) - return - end - end - - -- if there is no entity + local sign_info local n = minetest.get_node(pos) local nn = n.name @@ -233,12 +224,30 @@ local update_sign = function(pos, fields, sender) sign_info = signtext_info_wall[get_wall_signtext_info(n.param2)] end if sign_info == nil then + minetest.log("error", "[mcl_signs] Missing sign_info!") return end - local text_entity = minetest.add_entity({ + + local objects = minetest.get_objects_inside_radius(pos, 0.5) + local text_entity + for _, v in ipairs(objects) do + local ent = v:get_luaentity() + if ent and ent.name == "mcl_signs:text" then + if force_remove then + v:remove() + else + text_entity = v + break + end + end + end + + if not text_entity then + text_entity = minetest.add_entity({ x = pos.x + sign_info.delta.x, y = pos.y + sign_info.delta.y, z = pos.z + sign_info.delta.z}, "mcl_signs:text") + end text_entity:get_luaentity()._signnodename = nn text_entity:set_properties({textures={generate_texture(create_lines(text), nn)}}) @@ -390,7 +399,17 @@ minetest.register_node("mcl_signs:wall_sign", { on_punch = function(pos, node, puncher) update_sign(pos) end, - on_rotate = false, + on_rotate = function(pos, node, user, mode) + if mode == screwdriver.ROTATE_FACE then + local r = screwdriver.rotate.wallmounted(pos, node, mode) + node.param2 = r + minetest.swap_node(pos, node) + update_sign(pos, nil, nil, true) + return true + else + return false + end + end, _mcl_hardness = 1, _mcl_blast_resistance = 5, }) @@ -420,27 +439,74 @@ local ssign = { on_punch = function(pos, node, puncher) update_sign(pos) end, - on_rotate = false, + on_rotate = function(pos, node, user, mode) + if mode == screwdriver.ROTATE_FACE then + node.name = "mcl_signs:standing_sign22_5" + minetest.swap_node(pos, node) + -- reverse rotation + elseif mode == screwdriver.ROTATE_AXIS then + node.name = "mcl_signs:standing_sign67_5" + node.param2 = (node.param2 - 1) % 4 + minetest.swap_node(pos, node) + end + update_sign(pos, nil, nil, true) + return true + end, _mcl_hardness = 1, _mcl_blast_resistance = 5, } --- 22.5° minetest.register_node("mcl_signs:standing_sign", ssign) + +-- 22.5° local ssign22_5 = table.copy(ssign) ssign22_5.mesh = "mcl_signs_sign22.5.obj" +ssign22_5.on_rotate = function(pos, node, user, mode) + if mode == screwdriver.ROTATE_FACE then + node.name = "mcl_signs:standing_sign45" + minetest.swap_node(pos, node) + elseif mode == screwdriver.ROTATE_AXIS then + node.name = "mcl_signs:standing_sign" + minetest.swap_node(pos, node) + end + update_sign(pos, nil, nil, true) + return true +end +minetest.register_node("mcl_signs:standing_sign22_5", ssign22_5) -- 45° -minetest.register_node("mcl_signs:standing_sign22_5", ssign22_5) local ssign45 = table.copy(ssign) ssign45.mesh = "mcl_signs_sign45.obj" +ssign45.on_rotate = function(pos, node, user, mode) + if mode == screwdriver.ROTATE_FACE then + node.name = "mcl_signs:standing_sign67_5" + minetest.swap_node(pos, node) + elseif mode == screwdriver.ROTATE_AXIS then + node.name = "mcl_signs:standing_sign22_5" + minetest.swap_node(pos, node) + end + update_sign(pos, nil, nil, true) + return true +end minetest.register_node("mcl_signs:standing_sign45", ssign45) -- 67.5° -local ssign67 = table.copy(ssign) -ssign67.mesh = "mcl_signs_sign67.5.obj" -minetest.register_node("mcl_signs:standing_sign67_5", ssign67) +local ssign67_5 = table.copy(ssign) +ssign67_5.mesh = "mcl_signs_sign67.5.obj" +ssign67_5.on_rotate = function(pos, node, user, mode) + if mode == screwdriver.ROTATE_FACE then + node.name = "mcl_signs:standing_sign" + node.param2 = (node.param2 + 1) % 4 + minetest.swap_node(pos, node) + elseif mode == screwdriver.ROTATE_AXIS then + node.name = "mcl_signs:standing_sign45" + minetest.swap_node(pos, node) + end + update_sign(pos, nil, nil, true) + return true +end +minetest.register_node("mcl_signs:standing_sign67_5", ssign67_5) -- FIXME: Prevent entity destruction by /clearobjects minetest.register_entity("mcl_signs:text", { From bbcab7275e6e7751b4f4aaf44f0c3ecdf9432bfc Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 17:51:35 +0100 Subject: [PATCH 08/22] Make ladders rotatable --- mods/ITEMS/mcl_core/nodes_climb.lua | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/mods/ITEMS/mcl_core/nodes_climb.lua b/mods/ITEMS/mcl_core/nodes_climb.lua index 2c71f677..9e372d4a 100644 --- a/mods/ITEMS/mcl_core/nodes_climb.lua +++ b/mods/ITEMS/mcl_core/nodes_climb.lua @@ -1,6 +1,16 @@ -- Climbable nodes local S = minetest.get_translator("mcl_core") +local rotate_climbable = function(pos, node, user, mode) + if mode == screwdriver.ROTATE_FACE then + local r = screwdriver.rotate.wallmounted(pos, node, mode) + node.param2 = r + minetest.swap_node(pos, node) + return true + end + return false +end + minetest.register_node("mcl_core:ladder", { description = S("Ladder"), _doc_items_longdesc = S("A piece of ladder which allows you to climb vertically. Ladders can only be placed on the side of solid blocks and not on glass, leaves, ice, slabs, glowstone, nor sea lanterns."), @@ -73,7 +83,7 @@ minetest.register_node("mcl_core:ladder", { _mcl_blast_resistance = 2, _mcl_hardness = 0.4, - on_rotate = function() return false end, + on_rotate = rotate_climbable, }) @@ -156,5 +166,5 @@ minetest.register_node("mcl_core:vine", { _mcl_blast_resistance = 1, _mcl_hardness = 0.2, - on_rotate = function() return false end, + on_rotate = false, }) From 643b1e79336eed128dcbc168158831f7ba4a0b9e Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 18:27:30 +0100 Subject: [PATCH 09/22] Implement banner rotation with screwdriver --- mods/ITEMS/mcl_banners/init.lua | 58 ++++++++++++++++++++++++++------- 1 file changed, 47 insertions(+), 11 deletions(-) diff --git a/mods/ITEMS/mcl_banners/init.lua b/mods/ITEMS/mcl_banners/init.lua index fc871511..d10b6847 100644 --- a/mods/ITEMS/mcl_banners/init.lua +++ b/mods/ITEMS/mcl_banners/init.lua @@ -50,6 +50,10 @@ local layer_ratio = 255 local standing_banner_entity_offset = { x=0, y=-0.499, z=0 } local hanging_banner_entity_offset = { x=0, y=-1.7, z=0 } +local rotation_level_to_yaw = function(rotation_level) + return (rotation_level * (math.pi/8)) + math.pi +end + local on_dig_banner = function(pos, node, digger) -- Check protection local name = digger:get_player_name() @@ -151,7 +155,7 @@ local spawn_banner_entity = function(pos, hanging, itemstack) return banner end -local respawn_banner_entity = function(pos, node) +local respawn_banner_entity = function(pos, node, force) local hanging = node.name == "mcl_banners:hanging_banner" local offset if hanging then @@ -165,7 +169,11 @@ local respawn_banner_entity = function(pos, node) for _, v in ipairs(objects) do local ent = v:get_luaentity() if ent and (ent.name == "mcl_banners:standing_banner" or ent.name == "mcl_banners:hanging_banner") then - return + if force then + v:remove() + else + return + end end end -- Spawn new entity @@ -174,17 +182,11 @@ local respawn_banner_entity = function(pos, node) local banner_entity = spawn_banner_entity(bpos, hanging, banner_item) -- Set rotation - local final_yaw local rotation_level = meta:get_int("rotation_level") - final_yaw = (rotation_level * (math.pi/8)) + math.pi + local final_yaw = rotation_level_to_yaw(rotation_level) banner_entity:set_yaw(final_yaw) end -local on_rotate -if minetest.get_modpath("screwdriver") then - on_rotate = screwdriver.disallow -end - -- Banner nodes. -- These are an invisible nodes which are only used to destroy the banner entity. -- All the important banner information (such as color) is stored in the entity. @@ -229,6 +231,18 @@ S("You can copy the pattern of a banner by placing two banners of the same color end, _mcl_hardness = 1, _mcl_blast_resistance = 5, + on_rotate = function(pos, node, user, mode, param2) + if mode == screwdriver.ROTATE_FACE then + local meta = minetest.get_meta(pos) + local rot = meta:get_int("rotation_level") + rot = (rot - 1) % 16 + meta:set_int("rotation_level", rot) + respawn_banner_entity(pos, node, true) + return true + else + return false + end + end, }) -- Hanging banner node @@ -261,7 +275,29 @@ minetest.register_node("mcl_banners:hanging_banner", { end, _mcl_hardness = 1, _mcl_blast_resistance = 5, - on_rotate = on_rotate, + on_rotate = function(pos, node, user, mode, param2) + if mode == screwdriver.ROTATE_FACE then + local r = screwdriver.rotate.wallmounted(pos, node, mode) + node.param2 = r + minetest.swap_node(pos, node) + local meta = minetest.get_meta(pos) + local rot = 0 + if node.param2 == 2 then + rot = 12 + elseif node.param2 == 3 then + rot = 4 + elseif node.param2 == 4 then + rot = 0 + elseif node.param2 == 5 then + rot = 8 + end + meta:set_int("rotation_level", rot) + respawn_banner_entity(pos, node, true) + return true + else + return false + end + end, }) for colorid, colortab in pairs(mcl_banners.colors) do @@ -410,7 +446,7 @@ for colorid, colortab in pairs(mcl_banners.colors) do if rotation_level >= 16 then rotation_level = 0 end - final_yaw = (rotation_level * (math.pi/8)) + math.pi + final_yaw = rotation_level_to_yaw(rotation_level) end meta:set_int("rotation_level", rotation_level) From 2528463db6f5f075ddf738c3d7439c35fb1461ac Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 18:28:31 +0100 Subject: [PATCH 10/22] Remove reverse sign rotation --- mods/ITEMS/mcl_signs/init.lua | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/mods/ITEMS/mcl_signs/init.lua b/mods/ITEMS/mcl_signs/init.lua index 168d1083..a4e6b3b1 100644 --- a/mods/ITEMS/mcl_signs/init.lua +++ b/mods/ITEMS/mcl_signs/init.lua @@ -443,11 +443,8 @@ local ssign = { if mode == screwdriver.ROTATE_FACE then node.name = "mcl_signs:standing_sign22_5" minetest.swap_node(pos, node) - -- reverse rotation elseif mode == screwdriver.ROTATE_AXIS then - node.name = "mcl_signs:standing_sign67_5" - node.param2 = (node.param2 - 1) % 4 - minetest.swap_node(pos, node) + return false end update_sign(pos, nil, nil, true) return true @@ -467,8 +464,7 @@ ssign22_5.on_rotate = function(pos, node, user, mode) node.name = "mcl_signs:standing_sign45" minetest.swap_node(pos, node) elseif mode == screwdriver.ROTATE_AXIS then - node.name = "mcl_signs:standing_sign" - minetest.swap_node(pos, node) + return false end update_sign(pos, nil, nil, true) return true @@ -483,8 +479,7 @@ ssign45.on_rotate = function(pos, node, user, mode) node.name = "mcl_signs:standing_sign67_5" minetest.swap_node(pos, node) elseif mode == screwdriver.ROTATE_AXIS then - node.name = "mcl_signs:standing_sign22_5" - minetest.swap_node(pos, node) + return false end update_sign(pos, nil, nil, true) return true @@ -500,8 +495,7 @@ ssign67_5.on_rotate = function(pos, node, user, mode) node.param2 = (node.param2 + 1) % 4 minetest.swap_node(pos, node) elseif mode == screwdriver.ROTATE_AXIS then - node.name = "mcl_signs:standing_sign45" - minetest.swap_node(pos, node) + return false end update_sign(pos, nil, nil, true) return true From 33ef45245ccd00b9d857714242418667630684d4 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 18:30:19 +0100 Subject: [PATCH 11/22] Fix incorrect return value of piston on_rotate --- mods/ITEMS/REDSTONE/mesecons_pistons/init.lua | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/mods/ITEMS/REDSTONE/mesecons_pistons/init.lua b/mods/ITEMS/REDSTONE/mesecons_pistons/init.lua index 09309e5f..7c2feb7c 100644 --- a/mods/ITEMS/REDSTONE/mesecons_pistons/init.lua +++ b/mods/ITEMS/REDSTONE/mesecons_pistons/init.lua @@ -175,13 +175,6 @@ local pistonspec_normal = { local usagehelp_piston = S("This block can have one of 6 possible orientations.") -local on_rotate -if minetest.get_modpath("screwdriver") then - on_rotate = function(pos, node, user, mode, new_param2) - return false - end -end - -- offstate minetest.register_node("mesecons_pistons:piston_normal_off", { description = S("Piston"), @@ -211,7 +204,7 @@ minetest.register_node("mesecons_pistons:piston_normal_off", { on_rotate = function(pos, node, user, mode) if mode == screwdriver.ROTATE_AXIS then minetest.set_node(pos, {name="mesecons_pistons:piston_up_normal_off"}) - return false + return true end end, }) @@ -312,7 +305,7 @@ minetest.register_node("mesecons_pistons:piston_sticky_off", { on_rotate = function(pos, node, user, mode) if mode == screwdriver.ROTATE_AXIS then minetest.set_node(pos, {name="mesecons_pistons:piston_up_sticky_off"}) - return false + return true end end, }) @@ -429,6 +422,7 @@ minetest.register_node("mesecons_pistons:piston_up_normal_off", { on_rotate = function(pos, node, user, mode) if mode == screwdriver.ROTATE_AXIS then minetest.set_node(pos, {name="mesecons_pistons:piston_down_normal_off"}) + return true end return false end, @@ -529,6 +523,7 @@ minetest.register_node("mesecons_pistons:piston_up_sticky_off", { on_rotate = function(pos, node, user, mode) if mode == screwdriver.ROTATE_AXIS then minetest.set_node(pos, {name="mesecons_pistons:piston_down_sticky_off"}) + return true end return false end, @@ -646,6 +641,7 @@ minetest.register_node("mesecons_pistons:piston_down_normal_off", { on_rotate = function(pos, node, user, mode) if mode == screwdriver.ROTATE_AXIS then minetest.set_node(pos, {name="mesecons_pistons:piston_normal_off"}) + return true end return false end, @@ -741,6 +737,7 @@ minetest.register_node("mesecons_pistons:piston_down_sticky_off", { on_rotate = function(pos, node, user, mode) if mode == screwdriver.ROTATE_AXIS then minetest.set_node(pos, {name="mesecons_pistons:piston_sticky_off"}) + return true end return false end, From ad13c71bf1f84ffbefbcc89e6649081be4aa6c0c Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 18:49:59 +0100 Subject: [PATCH 12/22] Add partial rotation of levers --- .../REDSTONE/mesecons_walllever/init.lua | 28 +++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/mods/ITEMS/REDSTONE/mesecons_walllever/init.lua b/mods/ITEMS/REDSTONE/mesecons_walllever/init.lua index 3c04f72a..035c32e0 100644 --- a/mods/ITEMS/REDSTONE/mesecons_walllever/init.lua +++ b/mods/ITEMS/REDSTONE/mesecons_walllever/init.lua @@ -2,6 +2,30 @@ local S = minetest.get_translator("mesecons_wallever") local lever_get_output_rules = mesecon.rules.buttonlike_get +local on_rotate = function(pos, node, user, mode) + if mode == screwdriver.ROTATE_FACE then + if node.param2 == 10 then + node.param2 = 13 + minetest.swap_node(pos, node) + return true + elseif node.param2 == 13 then + node.param2 = 10 + minetest.swap_node(pos, node) + return true + elseif node.param2 == 8 then + node.param2 = 15 + minetest.swap_node(pos, node) + return true + elseif node.param2 == 15 then + node.param2 = 8 + minetest.swap_node(pos, node) + return true + end + end + -- TODO: Rotate axis + return false +end + -- LEVER minetest.register_node("mesecons_walllever:wall_lever_off", { drawtype = "mesh", @@ -102,7 +126,7 @@ minetest.register_node("mesecons_walllever:wall_lever_off", { rules = lever_get_output_rules, state = mesecon.state.off }}, - on_rotate = false, + on_rotate = on_rotate, _mcl_blast_resistance = 2.5, _mcl_hardness = 0.5, }) @@ -136,7 +160,7 @@ minetest.register_node("mesecons_walllever:wall_lever_on", { rules = lever_get_output_rules, state = mesecon.state.on }}, - on_rotate = false, + on_rotate = on_rotate, _mcl_blast_resistance = 2.5, _mcl_hardness = 0.5, }) From da47d7917cf30c8baa24be790a92072bccd3991d Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 19:06:18 +0100 Subject: [PATCH 13/22] Disable rotation of corner stairs --- mods/ITEMS/mcl_stairs/cornerstair.lua | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mods/ITEMS/mcl_stairs/cornerstair.lua b/mods/ITEMS/mcl_stairs/cornerstair.lua index 33d52e98..2d5f214e 100644 --- a/mods/ITEMS/mcl_stairs/cornerstair.lua +++ b/mods/ITEMS/mcl_stairs/cornerstair.lua @@ -664,6 +664,7 @@ function mcl_stairs.cornerstair.add(name, stairtiles) stairs = {name, name.."_outer", name.."_inner"}, after_dig_node = function(pos, oldnode) after_dig_node(pos, oldnode) end, _mcl_hardness = node_def._mcl_hardness, + on_rotate = false, }) minetest.register_node(":"..name.."_inner", { description = node_def.description, @@ -687,6 +688,7 @@ function mcl_stairs.cornerstair.add(name, stairtiles) stairs = {name, name.."_outer", name.."_inner"}, after_dig_node = function(pos, oldnode) after_dig_node(pos, oldnode) end, _mcl_hardness = node_def._mcl_hardness, + on_rotate = false, }) if minetest.get_modpath("doc") then From 26ac17f1adeedfaf64c6f190060bc610ce1cd20e Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 19:09:44 +0100 Subject: [PATCH 14/22] Can flip slabs with screwdriver --- mods/ITEMS/mcl_stairs/api.lua | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/mods/ITEMS/mcl_stairs/api.lua b/mods/ITEMS/mcl_stairs/api.lua index b28d2d24..9f396473 100644 --- a/mods/ITEMS/mcl_stairs/api.lua +++ b/mods/ITEMS/mcl_stairs/api.lua @@ -143,7 +143,7 @@ function mcl_stairs.register_stair(subname, recipeitem, groups, images, descript node.param2 = node.param2 + 20 end minetest.set_node(pos, node) - return false + return true end end, _mcl_hardness = hardness, @@ -262,6 +262,15 @@ function mcl_stairs.register_slab(subname, recipeitem, groups, images, descripti end, _mcl_hardness = hardness, _mcl_other_slab_half = upper_slab, + on_rotate = function(pos, node, user, mode, param2) + -- Flip slab + if mode == screwdriver.ROTATE_AXIS then + node.name = upper_slab + minetest.set_node(pos, node) + return true + end + return false + end, } minetest.register_node(":"..lower_slab, slabdef) @@ -280,6 +289,15 @@ function mcl_stairs.register_slab(subname, recipeitem, groups, images, descripti topdef._doc_items_usagehelp = nil topdef.drop = lower_slab topdef._mcl_other_slab_half = lower_slab + topdef.on_rotate = function(pos, node, user, mode, param2) + -- Flip slab + if mode == screwdriver.ROTATE_AXIS then + node.name = lower_slab + minetest.set_node(pos, node) + return true + end + return false + end topdef.node_box = { type = "fixed", fixed = {-0.5, 0, -0.5, 0.5, 0.5, 0.5}, From 31fbe97e4ee8f1a604e2bc6403ee8ca8e654b8db Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 19:28:08 +0100 Subject: [PATCH 15/22] Allow axis rotation of trapdoors --- mods/ITEMS/mcl_doors/api_trapdoors.lua | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/mods/ITEMS/mcl_doors/api_trapdoors.lua b/mods/ITEMS/mcl_doors/api_trapdoors.lua index 9e69a552..dc507023 100644 --- a/mods/ITEMS/mcl_doors/api_trapdoors.lua +++ b/mods/ITEMS/mcl_doors/api_trapdoors.lua @@ -19,7 +19,31 @@ end local on_rotate if minetest.get_modpath("screwdriver") then - on_rotate = screwdriver.rotate_simple + on_rotate = function(pos, node, user, mode, param2) + -- Flip trapdoor vertically + if mode == screwdriver.ROTATE_AXIS then + local minor = node.param2 + if node.param2 >= 20 then + minor = node.param2 - 20 + if minor == 3 then + minor = 1 + elseif minor == 1 then + minor = 3 + end + node.param2 = minor + else + if minor == 3 then + minor = 1 + elseif minor == 1 then + minor = 3 + end + node.param2 = minor + node.param2 = node.param2 + 20 + end + minetest.set_node(pos, node) + return true + end + end end function mcl_doors:register_trapdoor(name, def) From 4e08e978f555ee15298936722ecf506e469f56ba Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 9 Dec 2019 19:41:10 +0100 Subject: [PATCH 16/22] Add screwdriver support for armor stand --- .../minetest-3d_armor/3d_armor_stand/init.lua | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/mods/ITEMS/minetest-3d_armor/3d_armor_stand/init.lua b/mods/ITEMS/minetest-3d_armor/3d_armor_stand/init.lua index c2282f2c..85c7c3de 100644 --- a/mods/ITEMS/minetest-3d_armor/3d_armor_stand/init.lua +++ b/mods/ITEMS/minetest-3d_armor/3d_armor_stand/init.lua @@ -83,11 +83,6 @@ local drop_armor = function(pos) end end -local on_rotate -if minetest.get_modpath("screwdriver") then - on_rotate = screwdriver.disallow -end - -- TODO: The armor stand should be an entity minetest.register_node("3d_armor_stand:armor_stand", { description = S("Armor Stand"), @@ -231,7 +226,15 @@ minetest.register_node("3d_armor_stand:armor_stand", { update_entity(pos) end, pos) end, - on_rotate = on_rotate, + on_rotate = function(pos, node, user, mode) + if mode == screwdriver.ROTATE_FACE then + node.param2 = (node.param2 + 1) % 4 + minetest.swap_node(pos, node) + update_entity(pos) + return true + end + return false + end, }) minetest.register_entity("3d_armor_stand:armor_entity", { From 0d3b8e11c3b7d073166cca0dc1fd42cf5b64ce90 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Wed, 11 Dec 2019 00:46:55 +0100 Subject: [PATCH 17/22] Hide WIP mobs in creative inventory --- mods/ENTITIES/mobs_mc/ender_dragon.lua | 2 +- mods/ENTITIES/mobs_mc/parrot.lua | 2 +- mods/ENTITIES/mobs_mc/witch.lua | 2 +- mods/ENTITIES/mobs_mc/wither.lua | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/mods/ENTITIES/mobs_mc/ender_dragon.lua b/mods/ENTITIES/mobs_mc/ender_dragon.lua index ccd2fe30..10a82ce3 100644 --- a/mods/ENTITIES/mobs_mc/ender_dragon.lua +++ b/mods/ENTITIES/mobs_mc/ender_dragon.lua @@ -150,4 +150,4 @@ mobs:register_arrow(":mobs_mc:fireball2", { end }) -mobs:register_egg("mobs_mc:enderdragon", S("Ender Dragon"), "mobs_mc_spawn_icon_dragon.png", 0) +mobs:register_egg("mobs_mc:enderdragon", S("Ender Dragon"), "mobs_mc_spawn_icon_dragon.png", 0, true) diff --git a/mods/ENTITIES/mobs_mc/parrot.lua b/mods/ENTITIES/mobs_mc/parrot.lua index 9474c2b7..ab798842 100644 --- a/mods/ENTITIES/mobs_mc/parrot.lua +++ b/mods/ENTITIES/mobs_mc/parrot.lua @@ -85,7 +85,7 @@ mobs:register_mob("mobs_mc:parrot", { --mobs:spawn_specific("mobs_mc:parrot", mobs_mc.spawn.jungle, {"air"}, 0, minetest.LIGHT_MAX+1, 30, 30000, 1, mobs_mc.spawn_height.water+1, mobs_mc.spawn_height.overworld_max) -- spawn eggs -mobs:register_egg("mobs_mc:parrot", S("Parrot"), "mobs_mc_spawn_icon_parrot.png", 0) +mobs:register_egg("mobs_mc:parrot", S("Parrot"), "mobs_mc_spawn_icon_parrot.png", 0, true) if minetest.settings:get_bool("log_mods") then minetest.log("action", "MC Parrot loaded") diff --git a/mods/ENTITIES/mobs_mc/witch.lua b/mods/ENTITIES/mobs_mc/witch.lua index db183e67..be7fda08 100644 --- a/mods/ENTITIES/mobs_mc/witch.lua +++ b/mods/ENTITIES/mobs_mc/witch.lua @@ -101,7 +101,7 @@ mobs:register_arrow(":mobs:potion_arrow", { --mobs:spawn_specific("mobs_mc:witch", mobs_mc.spawn.jungle, {"air"}, 0, minetest.LIGHT_MAX-6, 12, 20000, 2, mobs_mc.spawn_height.water-6, mobs_mc.spawn_height.overworld_max) -- spawn eggs -mobs:register_egg("mobs_mc:witch", S("Witch"), "mobs_mc_spawn_icon_witch.png", 0) +mobs:register_egg("mobs_mc:witch", S("Witch"), "mobs_mc_spawn_icon_witch.png", 0, true) if minetest.settings:get_bool("log_mods") then minetest.log("action", "MC mobs loaded") diff --git a/mods/ENTITIES/mobs_mc/wither.lua b/mods/ENTITIES/mobs_mc/wither.lua index 871496d0..31fa0ada 100644 --- a/mods/ENTITIES/mobs_mc/wither.lua +++ b/mods/ENTITIES/mobs_mc/wither.lua @@ -147,7 +147,7 @@ mobs:register_arrow(":mobs_mc:fireball", { end }) --Spawn egg -mobs:register_egg("mobs_mc:wither", S("Wither"), "mobs_mc_spawn_icon_wither.png", 0) +mobs:register_egg("mobs_mc:wither", S("Wither"), "mobs_mc_spawn_icon_wither.png", 0, true) --Compatibility mobs:alias_mob("nssm:mese_dragon", "mobs_mc:wither") From a177d3cbbae17f8bfb3d39a34e88ea02b1350636 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Wed, 11 Dec 2019 02:02:16 +0100 Subject: [PATCH 18/22] More saturated grass color --- mods/ITEMS/mcl_core/textures/default_grass.png | Bin 428 -> 428 bytes .../mcl_core/textures/default_grass_side.png | Bin 306 -> 423 bytes .../textures/mcl_core_palette_grass.png | Bin 93 -> 138 bytes .../mcl_flowers_double_plant_fern_inv.png | Bin 178 -> 429 bytes .../mcl_flowers_double_plant_grass_inv.png | Bin 166 -> 421 bytes .../textures/mcl_flowers_fern_inv.png | Bin 202 -> 454 bytes .../textures/mcl_flowers_tallgrass_inv.png | Bin 196 -> 447 bytes 7 files changed, 0 insertions(+), 0 deletions(-) diff --git a/mods/ITEMS/mcl_core/textures/default_grass.png b/mods/ITEMS/mcl_core/textures/default_grass.png index 56176e5ee73cfa906cbd7c0155f3fb9241849247..dd57bb1ce169daf7c0464f2cb9fcab335b7d5f6f 100644 GIT binary patch delta 96 zcmZ3(yoPx~s<5`dhE9xuezuvKyVC#v|4-f8`)Oi@HrHbwZUzmhcc=cvOkCR{WvOdm xq-$UvVq|D#Xk=wKdAa7#Ug_8(0~bXd4(>85oF1r*cj9W>gR~wKA}@GO^G$FtRc*U@}Ounq0$Z000vA B976yA diff --git a/mods/ITEMS/mcl_core/textures/default_grass_side.png b/mods/ITEMS/mcl_core/textures/default_grass_side.png index a44b9788f982748a830d7f5ff105e19f296e588d..d3db928d371940a541344c99c38fb6653a7ddb94 100644 GIT binary patch literal 423 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdp969eo`c7&i8E|4C$JU|>*4 z_6YK2V5m}KU}$JzVEDzrz|io5fuYoZf#FpG1B2BJ1_tqhIlBUF7#J8t1AIbU85kIJ zVhr@N&9wbBOe$?u?B)Oe|G&03y@i2+fw3gWFPOpM*^M+1C&}C0g)K2{M=b*b180Fp zWHAE+-vJP2%(~Xe$-uzCUgGKN%Kn&#n?XbB-Kl>u3=9mOo-U3d9M{(#j23NB5MVvv z%_7FTL7b_gfcwPb_=*1_ukf8auzJs4rAvK6s!hw5N|tX}#qzlI%FNPh4Qut4d#5to zx%b84L^zswJ)wB`Jv|saDBFsfi`23`Pcqmb!*Ux`u`!1_o9p z23AI9+6D$z1_rgt*6UF;(0r%WME);?n}*I_Q!oACTH?c~xkltqhbsrSct*Iw(ICDD;b-^MelEMW z&T3AdaDzDK^|S-m4&1F}^KouwY0%sM zV7X!Lzr)vmM(^GCe);q5w*O_C{=QQL70(Y)*J~21_t&LPhVH| z$2{B&`qI~WB6t}X7{onY978nDCwEv$)%|l5JFFqWy11c{k>Q9fbH{zI3tt!*7#KWV L{an^LB{Ts5SJ@u? delta 63 zcmeBTjGdrj$yglZ?!>U}oXkrG1_p6Y7sn8d^T`?()9e1Zi5=FEU|rnM$jA`N_!@hljQC0!j_n}qn3ezfwRCPvY3H^TbqZ0ft!cX-a+XE0|NtliKnkC z`(qw%1`Wyb!|R_hFfjOgx;Tb#Tu)9=V3-(bUcVtJE!Ekbb;E>>N&&hInZoSKMj~(S zGcYiymbgZgq$HN4S|t~yCYGc!7#SE^>KYp98XATe7+9GYSQ(jW8yHv_82Fr4G(ypk zo1c=IR*74K?X;PF3=9ksC9V;gCBgY=CFO}lsSE{)nRz98d8s7|CVB>Xrm3w)sSFGZ N44$rjF6*2UngIMwUyT3& delta 98 zcmZ3>yoqswim6b5Plzi61A}$GgL#6bS&+VKySIUtrrqmBHVh05j3q&S!3+-1Zlp0V zF!*`8IEGX(CM&Q^JZG-NxFIUl*`0O6gpEo8x(u1Z?8*4 z_6YK2V5m}KU}$JzVEDzrz|io5fuYoZf#FpG1B2BJ1_tqhIlBUF7#J8N0(?ST85kIh z{gw5z%}gq7^j+n3VhptXHU9tqpVhbI4g&)NV@Z%-FoVOh8)+a;lDE4HyI5k!YX$}e z&H|6fVg?3o0T5D)|xP@lztbBWME)WEpd$~Nl7e8wMs5ZO)N=eFfuT-)HO8HH8cz{Ft9Q)ure~$ zHZZUx@zOxsIk6UZPtimMd(Zj&Nz~JfX=dzC3DWM4f=ejWl diff --git a/mods/ITEMS/mcl_flowers/textures/mcl_flowers_fern_inv.png b/mods/ITEMS/mcl_flowers/textures/mcl_flowers_fern_inv.png index 66a58b7b46c89d4c761cb46410f86f9738d4d031..1bdac2d248599feba1561f6d562287ae49ed9332 100644 GIT binary patch delta 403 zcmX@bc#L_1NO>_tjEB>w-w!`V_P1w^g@X0f>|53T-mTifQ^CU4lhr<-cb(* z1_sp<*NBpo#FA927!w>@lD-#1NBU5by11kdqpVNv)Fbz>) z9l7}_nQ4`{b=Xdu*~h@ZAPKS}I6tkVJh3R1p&&6cuS72|wM4;0&p^-6$eAVk4FdxM NgQu&X%Q~loCIH5Ea=icm delta 149 zcmX@ce2Q^`iiK!^Plzi61A}$GgL#6bW4*gskiLPJrmmyP?zeeY7#J8BOM?7@862M7 zNMm4NNcMDb45?sDKEOZmqD)Ye1EaI3dZM~3;{v&*3R4Bx+1SFwuM4;*hc9SYv7lp7 z#sUWB#X$>J1$8W9Vr~vz6_l|`D8M%&Dk~z2gPDQj4lj?>1d$>J1_lOCS3j3^P6O>_tjEB>cL0PLv#xb=GB7Z(mw5WR zvOnhGX3&r Date: Wed, 11 Dec 2019 02:02:34 +0100 Subject: [PATCH 19/22] Change menu icon to match new grass color --- menu/icon.png | Bin 1471 -> 4158 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/menu/icon.png b/menu/icon.png index 4db6979f81b6de3e4a53e577b99f2730431459e7..caed255e6ad79c83af2837e199ea2b0a49a11977 100644 GIT binary patch literal 4158 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 literal 1471 zcmeAS@N?(olHy`uVBq!ia0y~yV2A@@4rT@hhPgb!F$@e0fdM`tt_%zex;}=6=}vl) zHX5#4YFj~k_L{m$wkm#x3PuXyF4jJ_MtPCG$^I@4nXzu>29g?* zE+#s*h8mF`cIhEr0ruu*S}MY}XTC5nFff(``2{mLJiC#`z`!cw>Eakt!I&gbl_1i? zy@5)l0XOJ28lZ19set{o84FBr3-@(yqvf{64V}kblP?7MGuv!Bimw!cvb}xCZ-rv>GYkaG(@*i8=`?jN+c5Dx= z4lCwqm!$02A7ymb@!{?a+egJ>dhzjnvl5QDFRI=hbgrUh(}xA^v0Fa;pS$Gsx5(x*SRI?wxdw>sVZ z(Bj9|_fD-?F5dU!+~V{fGLE19F8Kuf(Ck}jzpJ2O`@QESC%?D-a1cB`(a25q`eyES z8>M}^_q2=VukB&1v)Na0!TOVXwCsizea?Y0?W`rQ{DhNlNnd{d-|>5W-ug3k6FS50 zF(&`6_>(m`<($l)>*s|3hM#4$aD29Wf4s#9&9^om!!HKC{w06D({jGr$969D=X2E$ z#&g(we=tk@?a|8z51nL@%eCJpUa@wgJzuSrc00HFQlGRmyC2;@EKaJ|S#;?IN9Ni(N^{u20*MZbPtt=qE)o%1jGbFu&9iuXFiTlcT||GyOlUc2Jfe^7lG zx25#K)8g%)!zm{op+AXd0`?P%JtiACTQq!NB{O#9QUGL(};D5s*e)7a}?)2vu%l934E@b!R z-<~-)=0CW4PkYXT<(JQ?zdiY&SSbF^^`ra4vbUCVsaLSs2H5yKl2l1+Js$gb(WGxx z59d5(t5^GQw02v6{^@rXjRN@o_gfTo%e629uj=NUUA;WYpE}7{c;13+|T>hQ~EUQrEFb{#XmF}(S=Vm{9cenk?ZEK~QLpP*Pu%p-GD<&E3`;r@DVYP5p-;TtV{15wE?`Lo8=pT)Z(>j)(!<2yc>dVg Date: Wed, 11 Dec 2019 03:37:53 +0100 Subject: [PATCH 20/22] Update sand, sandstone, TNT, iron nugget textures --- mods/ITEMS/mcl_core/textures/default_sand.png | Bin 215 -> 315 bytes .../mcl_core/textures/mcl_core_iron_nugget.png | Bin 136 -> 255 bytes .../mcl_core/textures/mcl_core_red_sand.png | Bin 215 -> 341 bytes .../textures/mcl_core_red_sandstone_bottom.png | Bin 438 -> 350 bytes .../textures/mcl_core_red_sandstone_carved.png | Bin 222 -> 357 bytes .../textures/mcl_core_red_sandstone_normal.png | Bin 209 -> 355 bytes .../textures/mcl_core_red_sandstone_smooth.png | Bin 217 -> 350 bytes .../textures/mcl_core_red_sandstone_top.png | Bin 167 -> 333 bytes .../textures/mcl_core_sandstone_bottom.png | Bin 449 -> 330 bytes .../textures/mcl_core_sandstone_carved.png | Bin 225 -> 337 bytes .../textures/mcl_core_sandstone_normal.png | Bin 207 -> 338 bytes .../textures/mcl_core_sandstone_smooth.png | Bin 217 -> 330 bytes .../textures/mcl_core_sandstone_top.png | Bin 167 -> 318 bytes .../mcl_tnt/textures/default_tnt_bottom.png | Bin 227 -> 274 bytes .../ITEMS/mcl_tnt/textures/default_tnt_side.png | Bin 252 -> 339 bytes mods/ITEMS/mcl_tnt/textures/default_tnt_top.png | Bin 223 -> 380 bytes 16 files changed, 0 insertions(+), 0 deletions(-) diff --git a/mods/ITEMS/mcl_core/textures/default_sand.png b/mods/ITEMS/mcl_core/textures/default_sand.png index 6411f86e08d993991a3762062bfa4f5c35889b7e..7fc254aa232078d5edd22ecf598146297d5f740d 100644 GIT binary patch delta 300 zcmcc4xSMH$L_G%+0|Uc^i5X@L3=Aykj=qiz3>*8o|0J?9FfecyctjR6F!1dKVMh1g z6V@^?Fi4iTMwA5Sr)5S5w!oPLm zK~5$|9@pTnaeFwLzOOyNW>X!{y@6SJL-XFBhvfgY@zg8XOjE417fyRzYTfz$FVFnr zOE=lC-?FWgF;h7~n%QE-rJRmsT%w{Y0yyJyGcvMd-v~->I90iA;)>VYjmuZu+8p(k zXN7rlNWR#d#eF8PZeHVZ&}N<#^VLRD^hu28rTFNc^tIcjbP0l+XkK DYYcP% delta 199 zcmdnZbe(a6L_G^L0|Ud`yN`kx7#Ji1d_r80&#$|^zU9&W3GdI(-QH9F=I()2hAK}N$B+s}-cuWSn+*gUF7j`3nQhIv^r-kohkzBa6--L^8APre?7iN< zI{puP^S&HT&XhWC$t7hsnV6REnEdqEpK-9BbFtF4;t=<)a!`ya-C-l8s(3YeZVFfcH9y85}S Ib4q9e0Q#p`;Q#;t diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_iron_nugget.png b/mods/ITEMS/mcl_core/textures/mcl_core_iron_nugget.png index 6d9f6c7c477ad944497b49b9c9587db932464e99..bbb89d6a3d07d60846fa4ab517ed6dddb0b13515 100644 GIT binary patch delta 239 zcmeBR{LeT+qMn0|fq_B(^Z!H!1_qXNM_)$E)e-c?47#KJUJR*x382Ao>Fr%o3 zR|5kBgJg+oL`iUdT1k0gQ7S`0VrE{6US4X6f{C7io}uNHYnxIS7#M0iT^vI!{Fk0L zT z%zW(5Ha#Q%#deRr8|?ag7srqa#$*L)11`tRL}68q!$(Yc&m? e%F3gs>rc3Lv#p`(w-y5f1B0ilpUXO@geCy5`hT+k delta 199 zcmcc0be(a6L_G^L0|Ud`yN`kx7#Ji1d_r6gHx^#)ExtLY?&<1|%|+SQ*H3!5W9Heq zoQ$a0s|*YbRh}-6Ar*|gr#A978wfaDbP0 Hl+XkKh#Xdj diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_red_sandstone_bottom.png b/mods/ITEMS/mcl_core/textures/mcl_core_red_sandstone_bottom.png index 0f2b5517e64b3d7e44ea2eea30e888b30101d099..f6e6ea499e864420eca14012065cf2fd7415fefc 100644 GIT binary patch delta 334 zcmdnSe2-~@WIYoD1H*)g8D4nJaPxyOg}{*Rdc{l|aSS}u5>`>yqBxJ#PHFU$8bNBuOEj1z9}^{bwxdn~G939DF? z0joh*M21evxqb5#8XT_%+&ob=-z}srbFP`nV`a_-Tq?_bxMy$&Gl<>vX<$3nyW-HU zGq1OQD+>Q@=eyQj{Y9>3W|np1xz*CQf~uQeGDvV*Zn+k3)KyekVIw~|kvZl|8~eJM lOc~#kvY01(UN!m0C>*if>s-~Bp9~BP44$rjF6*2UngB{6eyIQe delta 423 zcmcb|w2gU!WIZzj1A~Sxe=q|B!_oks5Z5d7x=v1Mdb4fW+3BrU=XPD2-~C|i-22NW zo|)EiYHIU^+3knm*OyJNf3bP-gXNRn z?O1+uVehRKGjA@RvA4VG_R3jDCe&Y?({Xxw%eAG`PETz}hsM3=9lsJY5_^Di~Q0wl+R?5MVhV_j>zuowR9Z-q@e9-?Ex1Mfgwfm19=>c_kJ7 zF8LIl7HD-^X~MBGVz+?rYipqwH%~oisyBSxa>(z9PQ;F7m(OuuI8!ZhwIGAV{r0>z zrO6T-?N86Scq-(}TUI94w4J+pcHG<4`kl*lN}{894twd;?v#Mb%DXMK4=C1|oqAAO zdTw9niT}d-U#~RxPYzjR_V>s?<@t=uJVP%%oNV&XwV_2~=d;qktZud+|8B12j(Nb* qD*Y}(A?}lO^`2e3qISn!vlnF(IOiId%FDpOz~JfX=d#Wzp$P!au;H%& diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_red_sandstone_carved.png b/mods/ITEMS/mcl_core/textures/mcl_core_red_sandstone_carved.png index 675e923a62ac495c347f9be2ecc05648acd4fa7c..fc8b2a09ea3c424ced4c8e2ddaa4ddf2b39343a3 100644 GIT binary patch delta 342 zcmcb|_>^gaL_G%+0|Uc^i5X@L3=Aykj=qiz3>*8o|0J?9FfecyctjR6FmUsOFyo}3 z%u5*<7}!fZeO=k_ajlsBHx}LBtVAWc{p{1arp1Q_T zx0>B!@z=V0w|5tRx5$g1{`a%VJ$~t=w!prIWzJ{W*F8QJ*5fR);HAXmyJgv2lj`M? z4Ht+-@%An^3h+7YS|C>yApY-^!`i-e6U<-rH_lq2c)!sjnAt$Lf11G)<9dllELj0> ztE~MxpL(S{;_(l;UC6pqTD!S|*YRN3thb#17|U7A6y+oCEs&b=GedOR#hJWf3&Ys; tre%mVyULx|o^EDw;>g?LAc9dpRyM(3a`WF^EBl_!@6A_`R^KkJ;F73wg^PiK Ofx*+&&t;ucLK6W0WLr@H diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_red_sandstone_normal.png b/mods/ITEMS/mcl_core/textures/mcl_core_red_sandstone_normal.png index 04475f3234bfb6a61f1477d8e5b9b5848928a970..446f35cd265d6d7765e7cc2d6e290714a0924177 100644 GIT binary patch delta 340 zcmcb}_?T&eL_G%+0|Uc^i5X@L3=Aykj=qiz3>*8o|0J?9FfecyctjR6FmUsMFr&l1 zhmH&k4D2PIzOL-|I9Pc!B$lKup2EPuAW`BPQ4*Y=R#Ki=l*&+$n3-3imzP?iV4`QJ zXPV+35yZg2aL&`kF~q_@chW}QLk1!)wyL5f0ShNgt8e0Q=sv=7q3$HZ4K2W+j=o*{GS>34)3`&>(?w$16WoGF1ZTrKsPW+hlvc>1? zx;0)Wgaa9@UCoco^>y$uEpFhN&&SngCK>c>y1S?@l*@69>3+mi3D_yWe|47?w2W-u@?FnGH9xvXxBcydb9#?s6y^SU0ao!jE& zYJK4J6b1%{5>FS$kP1f8a|byOIY_WRyx7aSX94REAI9$4Ow*oxm*aSSvpY=T#=etZ zn;RPsubnc-;Zx-%m*~%hyJ`|tCFJxqSngXkU;X_&n?LqS6ze1_v&}EFzopr0D%ot AHvj+t diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_red_sandstone_smooth.png b/mods/ITEMS/mcl_core/textures/mcl_core_red_sandstone_smooth.png index 6e3839a09326e82110d6e058ace96672449e9e47..f6e6ea499e864420eca14012065cf2fd7415fefc 100644 GIT binary patch delta 335 zcmcb~c#mm*8o|0J?9FfecyctjR6FmUsOFyo}3 z%u5*<7}!fZeO=k_aj^2J%kQ13^@D+dL88Ppq9iy!t)x7$D3zfgF*C13FE6!3!9>qc z&osq7B8Y*3;iRXFV~B-+>4e?9ha3c4VpllJC>D4z)U!?qV%p-sD&ol6@?^=L%hqS- z=0r-Z{Z{tuZvKy${{6>))>6dD|_2HZSRHQz0yE_1G#%422D1zal2eYj_E2Q!G>^l4x_*1O`+ zt~0NYsZ7Tt2V4|+ALdRe`Kbl!bFWHpBW~d zedbXb;CyNEgym9Q=OkvVUFZ_v`b)#JY^j)dg||%6A=bE6YCKN0drtnp`(Ju_(J%AJ z-?O{UT>Y}mRn_Y7!D|{_t1s=U;K|*8pMTenb$bE?I8L2r)Cy407P+AQj)8%J!PC{x JWt~$(695(_R+az& diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_red_sandstone_top.png b/mods/ITEMS/mcl_core/textures/mcl_core_red_sandstone_top.png index 4df752ae783b27bb5f846a0cd0fb569f21b2854f..807094464a20423249dc7be05bbe3522d051b42c 100644 GIT binary patch delta 318 zcmZ3^c$R5`L_G%+0|Uc^i5X@L3=Aykj=qiz3>*8o|0J?9FfecyctjR6FmUsOFyo}3 z%u5*<7}!fZeO=k_aj^1eDDB#d>VE`riw3ZWeptfs%_O77tI4GB z-0Rr+N$FMh_12f(yZrUagsPz0xbq(Ke_xV)Wso}Wda`BU8{>uPtC;hcq|XGTui;y? z{_(v4*^>9h(&aq+8ONuP9#?TZHK;A3YeUOD=e*J0`In@gF_89p?- zd{;Cd7Bq;l`TFy_v-Pp@nzpg_`04S;td(ix z;p*#_kP!2G51B0ilpUXO@ GgeCxzYcw|i diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_sandstone_bottom.png b/mods/ITEMS/mcl_core/textures/mcl_core_sandstone_bottom.png index b8851e24628b2180590a0a39def8ed1f89ae2c25..51d4174d4de27a8bbe2b15465c9755ab81c89ca8 100644 GIT binary patch delta 314 zcmX@ee2Qs;WIYoD1H*)g8D4nJ@a+R(##c@o z4=^w=NR+rnlmzFem6RtIr7{#GX6BXX<)xM=nCKbmnWnf$1Tio$obYsU46*PpooLN> z$UwlQ_|6p(4?$ibUS0JC3zoLpi9cYAX$bzXCcRhJy?&zG>aXW)>L!1XEMaBi^i8Q#H2`^|YR9>|~@AEf#rSh%sFJGx@x;JmqvTedI z_Uu|{yVZOKU&F)+#?IM)z1#xV@%2AXHp*$}zW3pPZZN~!IG@}Eqm@z5?DZn-J13yuWwy?#TsP`f^S#slU9r`@*W` zdwV7woKbRRbI*khop*Ony0*1<-|UKGi)wdH%0E26dSiFiu{q`E*LPgq(sOQI$C+h~ z=T|o0*xq+-ef#xoea9EoZJ&^LZbj39xs|tfPT16w{b>KxZT-1N7uM9DUe<7PNB_aO zRR^XQKiD_r((2ZW8@rAysJXbR<_KzP3x_l6AsTT-8Z%9?7H^TYufhC zDnGuW`O4b1t6ehR85kJOdAc};R4}q0WOia@WMH{4bL-g++g6|d9lz!~1J@!IZKIW0 zS9palFh(tMx?%KUhrz>}On(>>1x^;$Pf|MVdj9`{=JWdYNCL9e z*=6FR{W|>^x9*gZn%hPT#qOJhmHUe~M*9C_UaKIS@Tz|?D+2=qgQu&X%Q~loCIFWf BL_G%+0|Uc^i5X@L3=Aykj=qiz3>*8o|0J?9FfecyctjR6F!1dIVa8WZ z8xJrrFi4cRMwA5SrY1jvM+7l2Fr4>vaSXBWFP&h^ zbtplAwK#NlNmHvp4vTcObToH#^xM4+<{y~m9pc<w@<8WI2z1zN*_U8XS|CnL@ z>2oR;UMwcEto%FV&9@o#X)Mq@{CUe#g`dw2r!j85Fw5|>56|i3h~8oh(<;uJ;k8L5WGykA-;{d>~HwZtvs>XBU+q^=|~ z{AY~r{LHn?ZM7F&o|Fqshn;b*zY-GMn~Rdy?N7mw%Q!td@&@;*8o|0J?9FfecyctjR6F!1dGVaBO@ ziaZ$@7$izuBT9nv(@M${i&7a15;OBk^zu?m6ioCC^-NRTBZ3$h7%q6aIEGmGr%o{B zJLJH_@;7u>$wZ9_O0zsnwwP=Y*^;^NIrEC*C%7 zP@NI_nCY+4H;0V2J7@MT-7!r!#7wAr%U;xbK501Vzjf*9I;ZHa db^eF>8<(GZYu@))kb!}L!PC{xWt~$(69B|via7uP delta 191 zcmcb_be?g7L_G^L0|Ud`yN`kx7#KtYd_r9JOes9ExNcK>=C!T8J;`1RN+KQ{n8v^0 zvMd7wL#d~WV@L&~sE@f2lOxaNrFEq%)xOIa|882UK6Bce|MrZJWmFcfntEscw1m0y zJ(3YNZFkpE@r5o2cd#IkyeBvXyn>r9)IRxfZ` z{qfnmu8`i{?nfmobcH837*0?)7rlA^1^(=9;tReOXT&iuFfe$!`njxgN@xNASEo`p diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_sandstone_smooth.png b/mods/ITEMS/mcl_core/textures/mcl_core_sandstone_smooth.png index b4dc2654df51bc4f3a6c5438ddcefcc360ccd8ea..51d4174d4de27a8bbe2b15465c9755ab81c89ca8 100644 GIT binary patch delta 315 zcmcb~c#3I)L_G%+0|Uc^i5X@L3=Aykj=qiz3>*8o|0J?9FfecyctjR6F!1dIVa8WZ z8xJrrFi4cRMwA5SrY1jvM+7l2Fr4soaSXBWFP&)3 zcgR4%rTESj5f4FLAzoee1q+t8+KE44i)je{uqM4%x88lC+v>09Z0aYy{B869-t_Z- zTQaILmnszu@lwF_MWTz_eJmMs+%uke;BI>Z{cN{z>*8o|0J?9FfecyctjR6F!1dGVaBO@ ziaZ$@7$izuBT9nv(@M${i&7a15;OBk^zu?m6ioCC^-NRTBZ3$h81{I&IEGmG*G@3x zV>0And4EB|ZmJ$8ji9rphDza@{c$OKByadZ)NU0dj!|3OFV@sAI`FYZzgTy?N_XXkZk z?**64mrO|Of3_p^R{SitR~{^Pt+JVC`rnC{O`UVq%)-t>C$BGvw`Pj5b)Kx-YN=I? z83$GJIyAn%_~N6n;I^3m{RGGO3+AuBPM`Ac%ay|D{mBjYQfsrerZO-vFnGH9xvXB%~KRq6qwK9!7 zTz%aV5@LRjJQ6d!FT6>JkT|-jL-BB+t`#PdS841e6ZHlwe?BVDNPHb6Mw< G&;$Sv7Be6K diff --git a/mods/ITEMS/mcl_tnt/textures/default_tnt_bottom.png b/mods/ITEMS/mcl_tnt/textures/default_tnt_bottom.png index df411b6840ba0c2f09e6f519202c56e46894fade..61b911be9f93f988d1c183e546c20088e5a707ea 100644 GIT binary patch delta 258 zcmaFNIEiV3L_G%+0|Uc^i5X@L3=Aykj=qiz3>*8o|0J?9FfecyctjR6Fz_7!VaBX$ zotz8|3=$=-5hcO-X(i=}MX3x0iJ5sNdU>fO3MP7ndZsDv5kVmHJY5_^Ec~}lyvx~O zz|(Sfg+7;7(}SdQ4|w<<^5i|Ri1V=Q`_bMZ@M3zk_ocWD!>M;;OgS1h9iGT7;~l%c z_BCtj0W+7oYz`;(Ht_K^tlWHDr?N+L_pbEngUmaPE+62xz93X89dLiS@2dLSjE?&* zJ?6{uFWtm@VZQi}$W@;g)&Fz+n(?xW@#Z8o^D_^pTQ5mtPo5$8v}T3MTLuOO22WQ% Jmvv4FO#p}WW9t9_ delta 211 zcmbQl^q6siL_G^L0|Ud`yN`kx7#Ji1d_r7Z%(VmUjgoz=y{+|Z^wq*$OiVQt3PK#K z4;!&EFfg=vx;TbZFpByvZE6V+v5ly&IHLGSV4`|y?dMk^U;eva+Iw8l^@v917oI~$ z=I=1ze1B^B-G7rLdnKh!do?*8o|0J?9FfecyctjR6Fz_7!VaBX$ zotz8|3=$=-5hcO-X(i=}MX3x0iJ5sNdU>fO3MP7ndZsDv5kU+L3>Q6J978PpdnZ}* z9WoGbsaJ>qwx z_f^@wJ85T^&EdIdSg=YfLj0?MEVE1Gir}#2;XzTeW@U2ESUz7NIIR76rM_PKTm3zX zHt&zG+uQYW2TN8CQ`Od(2+xvb{dOpLvsmP%~U z*q|!!! c@vq$fqU-K@&$IStU|?YIboFyt=akR{02~~Bw2d(V z0TUkn{r$aXx8y&WgoMI`gan=t)3OvEk%Xj#6oHHfi3Q0?sVO%C&KERJY;1ifz%HI_ z$;>R=?7Vmv(_u!1=7+&&LfM$vmbEbROy>E=wDg(rhq{h?pBfrFTNge$T-?XcK11lA rrGd|ng9jSUu2WzY diff --git a/mods/ITEMS/mcl_tnt/textures/default_tnt_top.png b/mods/ITEMS/mcl_tnt/textures/default_tnt_top.png index eb52ab5abe950a53f0ab4f84f0dad8d5d60ddb39..b8f8d39a63126c2a34b686fb6b199bb62af66b71 100644 GIT binary patch delta 365 zcmcc5_=jnNL_G%+0|Uc^i5X@L3=Aykj=qiz3>*8o|0J?9FfecyctjR6Fz_7!VaBX$ zotz8|3=$=-5hcO-X(i=}MX3x0iJ5sNdU>fO3MP7ndZsDv5kU+L48J^G978PpTPGgm zJmetYs_XhejK9i5g|lmgxnREB5jK|Y4Q$yPII=e|*Ps5VtKXAm%V9rxzw!U`Z&aG2 zE%%4>Hq;cK)R+HIb>(aE&8Q#Gj@+*?Ie0^xu zi$P0J#wXc;#SU-N_!#_ne77@e&SrHw8}ak_0lo@}=dq4APB56PFTJgMmN|qu{7Hvy zU%~YkZyyA7#!e`@lGFL*`R1Y%7DxOw->*C3IJfnOqh!0l2FfcTEx;TbZFpBmbs40f`8eUwm+-hngzvAa771?E{&V<-myzQ{iv-UX0yS;7B#rFFd+r(b% zm{2q`FnsYUKF)t>@lDIKPy9Fcnl$@_t?IFaTjwojl{ZM=Iw&6Wk1@_ns=7oWrh$Qh Ofx*+&&t;ucLK6U7$XCe# From f91619cae1814d9fba80a5b1907d2ee2d14a42f0 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Wed, 11 Dec 2019 04:17:38 +0100 Subject: [PATCH 21/22] New PP cobblestone and brick block textures --- mods/ITEMS/mcl_core/textures/default_brick.png | Bin 185 -> 333 bytes mods/ITEMS/mcl_core/textures/default_cobble.png | Bin 219 -> 560 bytes .../mcl_core/textures/default_mossycobble.png | Bin 255 -> 710 bytes mods/ITEMS/mcl_walls/register.lua | 4 ++-- .../mcl_walls_cobble_mossy_wall_side.png | Bin 0 -> 684 bytes .../mcl_walls_cobble_mossy_wall_top.png | Bin 0 -> 588 bytes .../textures/mcl_walls_cobble_wall_side.png | Bin 0 -> 527 bytes .../textures/mcl_walls_cobble_wall_top.png | Bin 0 -> 414 bytes tools/Conversion_Table.csv | 4 ++++ 9 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 mods/ITEMS/mcl_walls/textures/mcl_walls_cobble_mossy_wall_side.png create mode 100644 mods/ITEMS/mcl_walls/textures/mcl_walls_cobble_mossy_wall_top.png create mode 100644 mods/ITEMS/mcl_walls/textures/mcl_walls_cobble_wall_side.png create mode 100644 mods/ITEMS/mcl_walls/textures/mcl_walls_cobble_wall_top.png diff --git a/mods/ITEMS/mcl_core/textures/default_brick.png b/mods/ITEMS/mcl_core/textures/default_brick.png index cb57018f86dd1b6d76e510b28f8322b697eb8e26..78555439559eaca6b314590993594899f3af12ab 100644 GIT binary patch delta 318 zcmdnVc$R5`L_G%+0|Uc^i5X@L3=Aykj=qiz3>*8o|0J?9FfecyctjR6F!1dGVaBO@ ziaZ$@7$izuBT9nv(@M${i&7a15;OBk^zu?m6ioCC^^AK}{-!f9Fr4;uaSXBWPo21t zi^)*H<+Ha~S8qhrPswRX>Dn6C+NZAlv2@>uzMZOvCe+`ad-JBxj&D{u2Xpt=#rcWM zf6Ny$DLANvIppe=Q0IyZZ_dvSHHrRM7sI~E@cZ0%jKYpjC53g%H#YAR^I%;2gX)rv=Ahf>gnPb zQo$&Dx{>p+1CMjy&a({DYK3R;6|6JkxL3a{?w8{S29}nV(r1cFvl6ycTU-oZ#q4x8 z*8c)q_^a;iOK#dI{LQm2_^h(KEKibnvvkAX(B{2w&)-haZ+5(qAmGGS*1LDdq1RLDgJ*Ae^UzASYLegb`^W#5 zeEN6y_R}oc*B)M+4CgHGF*sZAtrOmj`7TJg&cd`l^+8+Pn#G_f^)Ob(f!S zA;)_7$DY$ka!Pq?LpxlKbaK9rP^|m$qtkv7fAx#sKRy*@uYJ#XW08|ecKqHo7ViHK zG9K?e+QlHxVPiTjkf*!9$l*60)W5o=A zd@~+#s+-mN9%xn+y%+zPh{{8V@<3#CO;w~HAe&z?OndseJW$ya- zmTBRt0&BZzf*%;1bX1Dg?)n-tA+$7GV8Tg}vpjj5f9L&Uma`PUC1LTrf`Ng7!PC{x JWt~$(695}~Q9A$t diff --git a/mods/ITEMS/mcl_core/textures/default_mossycobble.png b/mods/ITEMS/mcl_core/textures/default_mossycobble.png index de3ce82554830e9d9900a2949686b70605302b65..0cbd5a5ba7b0a046f503318eecae59b0e4b09c51 100644 GIT binary patch delta 698 zcmey*c#L&|L_G%+0|Uc^i5X@L3=C{Z-tI08j~V_mJpFNAC5wT9fwRCPvY3H^Zzl*d z?qCz&&%nUIUgGKN%Kn&#o0*NjD{So{1_q{JPZ!4!jq|pX4*Cl_iX7YTSAN@X`|h0C zyl1zGahfPD6A_wnMB||fd$0N7gWdHlo#y|Q)(i2e#q`u~ce4qx@Cf$u-kcZPR=WLl zj^v!G87Hjwp82z{GXLIhqxbjszWvJHm-|$c)!=cAD#NjP@#U-87j4de8+7G_mzIJ!jve(Jy`P^c3!1dNqi(4NBit3SW{*%`aC;2dMh(RGF^k6k-&GxN0Tb=Clro}E*4 zKku7&nlZsqz<=`R?u)$wA5AWX+&|v>@YRMlW>T()cg*r(Xz6L~VdOaUqP$*Yz24Qk zZq4ePH*NO2`%Ef5*_66TA;9Fh4TrL6{PAsKI>8qiwv_F@>c-6w@9A_bZO&@{)hB|j z9^cuhE5Q2cAy6$|+~oh4h_TZZz$)rcB;b&Cpqg4~0vf+z!4 zdWP}zHuIvhdCU0Egg<@M|Leke%j;W@sO-IP{oShXznXVNhyGlB=3M*B=L)@L z^X$UD%BDS(a+FFnms_)RPJC6J`n$P;^=kuySzjMobM;PZQ6$I0=S5B&_6ZCp=IR$o zx9;DcSM}HNM8tagfZ6+I`E<1{obl{b(eArSd5ah7C?x-^`aE;fwB+dMmy;f?QxncN z`Biaup>Z3dL-6I=iFPe~TWd_uS}ooC@4*g(GgBCNqhC%^`p;MvsI9+Xft(iu0|SGn LtDnm{r-UW|AFoRB delta 239 zcmX@c`k!%vL_G^L0|Ud`yN`kx7#LInd_r6&cQ$7yCR)z2wz0O3^mDH(DO4%f*KIOs zZ>TBAN%M8Il1$V2=qBLGz`!ug)5S5Qf|2)3Bio?>5w-{SOC%3umh*35VbVD4V4j|I z@K_(4!$uA*!-fUyJH9Y!ZctcqBW~Sq+XL(g7Qrj{1tcXFWnAPd+PmbMpHs-xbSKW5 z1J;J0Kk@!Ei!}N>x3Ml*s_VFh#l2U`?h1R~h0RsGaa)NyYg@+8i3O9j?=UV^7ThuI vROJk1)kT-uowQun-{rmj{`T|NpV>FPR+(LHz5Y7`0|SGntDnm{r-UW|0#9LF diff --git a/mods/ITEMS/mcl_walls/register.lua b/mods/ITEMS/mcl_walls/register.lua index 363ef55c..0ccefd62 100644 --- a/mods/ITEMS/mcl_walls/register.lua +++ b/mods/ITEMS/mcl_walls/register.lua @@ -1,7 +1,7 @@ local S = minetest.get_translator("mcl_walls") -mcl_walls.register_wall("mcl_walls:cobble", S("Cobblestone Wall"), "mcl_core:cobble") -mcl_walls.register_wall("mcl_walls:mossycobble", S("Mossy Cobblestone Wall"), "mcl_core:mossycobble") +mcl_walls.register_wall("mcl_walls:cobble", S("Cobblestone Wall"), "mcl_core:cobble", {"mcl_walls_cobble_wall_top.png", "default_cobble.png", "mcl_walls_cobble_wall_side.png"}) +mcl_walls.register_wall("mcl_walls:mossycobble", S("Mossy Cobblestone Wall"), "mcl_core:mossycobble", {"mcl_walls_cobble_mossy_wall_top.png", "default_mossycobble.png", "mcl_walls_cobble_mossy_wall_side.png"}) mcl_walls.register_wall("mcl_walls:andesite", S("Andesite Wall"), "mcl_core:andesite") mcl_walls.register_wall("mcl_walls:granite", S("Granite Wall"), "mcl_core:granite") mcl_walls.register_wall("mcl_walls:diorite", S("Diorite Wall"), "mcl_core:diorite") diff --git a/mods/ITEMS/mcl_walls/textures/mcl_walls_cobble_mossy_wall_side.png b/mods/ITEMS/mcl_walls/textures/mcl_walls_cobble_mossy_wall_side.png new file mode 100644 index 0000000000000000000000000000000000000000..69d575d986f3caa45ad6a6088056b8efb570de06 GIT binary patch literal 684 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4kiW$h6xih%orFL*pj^6T^JrS{AYOj z!j2NPyCW}cIeF%oN$$;--n0DN(_BJUuurv(2>Oua`O=fczsdc-(tl1z{&_Z{x(h|U za!vCtw;d}jFIzVIuF1<|hdo>h`3@hi&cA2=es*BqzFp$o6-AA!<)?SHrW^|R_`S>3 z=HIvWpkzVsq~0sbx+0E*@4f%qzWu7$)~GADv?3VHf=U_A7Rnw7JD3%itsFW(CLwhb zOTyh~)&=L5U1pf^`dx?e%fuOJ-BAo_mopEWERV}y{8w!2l5o%jEf z3Wf8#vsQ9A6ia;H$xyIjj`N)LA5=Z%wVoTz@H^RO(ZqD)f@UD&izzbtRVSlYng;!j z`j|4=H0biFlVv+^>y>XU5^~rYawdJ{w%OZfKdyQ-YuCHAY1%ve)6Ie=lxO$7c00z? z%pl^vg!#eTZSyNWW>|9_X6G*NT-Wcu_)!PLj|o4EY+gLhdGdRoRp(*@8JEM3COIl+ zT@D&N3o@47EgjFd*q}s0-sN!btG~BDo8ROA{w(I}<2`pT&YgEm%JXt!O!oBM8#`v- z+;zBO?WUX=&+gqzXGj##kSyW(pZUzNA%Jtn>vzv`bAu~6xSs8@6aVC!HTCKBz2;hh z?=6;^z5M3qw`u1bnZoX<&Zfj2a<9M6&01M;aObj2hBQC*y|3evBUZU^^F20dJG|qy zp>NbVeLcP=1sFdh=n1`F0mDO>bxI6;`<4sQ&#}JFtwUh5> zNjXX!tvA*_&9&RqyEQ>DI@nWl(W14L44$*>T;Ba=s+}44jIn6$C69GQ>8mA9x(eSu zq14hK-X^G|c-N)?Z&{$xw6Oy=wJ`BfHoxO*T2^>fvbwet4<`tzLr ztGGt@uLp`%@74a4kh*4mSETurY}Ct$yr)*&4(9eO4<6QZ#gU&gw9%% z>5s(Lnh3nzdTGmChK8HHeUV!)$;8P9&we)Hn8D$UYp*oiOGPAalrgn%_ZCikTVQ-_ z%Up$7O$Ev;OV@8G*gw6F>*2ZOMY{?eU$u&_?(w}dcj|}jHNWcFKlb}sMVx5NycAR` zlxcnMbODq4ciX;0#!;*MlVe<}jHcypN~kevc{Zy^KQd}U?XJScuvvaq9W#3;`Wv=6 z>^qgV(Wpq(WA|pEFgGRJ&Z!eQrnjn;eRkgUQ!&X>BHw=M;kN~oy$iV=?rL8Msy%aa zzWnp^`&oCtF<5cuqvdzT-ES^9;`uDx9 tAOCJY*tlDMcg~@p+0Pz@?~M7+u)TkSdm`IYV+IBW22WQ%mvv4FO#si%3G)B| literal 0 HcmV?d00001 diff --git a/mods/ITEMS/mcl_walls/textures/mcl_walls_cobble_wall_side.png b/mods/ITEMS/mcl_walls/textures/mcl_walls_cobble_wall_side.png new file mode 100644 index 0000000000000000000000000000000000000000..01937236d1b6d063a42b23db450dc972d27b2034 GIT binary patch literal 527 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7*pj^6T^JrS{AYOjZ#GC}Xn zPLH26r>;9UXQpNPvnRK|UO&FJ_|2T;jWH8vwRlc5rgyIxu1w!_g7L?{WIx?&Tag(Tw)r)^3N5>;C^donSUw&Sch+@VRG~ z?Tsye`r?IE;sVZB8(!&m&+!fYc`#F%LI0i`ny3cMk>zMr}_Q#}JFtt-+_W zS`0*Nv&^ajcXF&_|5$&^w>~Xl*9@onWwXCIbG7DqzqC?tR87k?pFF`L?OEQDC-Z(= zJXblniKlLk|M9CCZ~ql5NvxeH%*Ze=K2F%){^;Bd3Hw*bE3s+l$xi1s2z#>X!1?#` z$1>ewr@qUX^Xx^-qZ+Gq+deP*XkBk%Ux_KWTK`sv#v`8%`b-}%$- Sv4DYrfx*+&&t;ucLK6V{)vQ$j literal 0 HcmV?d00001 diff --git a/tools/Conversion_Table.csv b/tools/Conversion_Table.csv index a01d38f2..242381c6 100644 --- a/tools/Conversion_Table.csv +++ b/tools/Conversion_Table.csv @@ -958,3 +958,7 @@ Source path,Source file,Target path,Target file,xs,ys,xl,yl,xt,yt,Blacklisted? /assets/minecraft/textures/blocks,red_nether_brick.png,,mcl_fences_fence_gate_red_nether_brick.png,,,,,,, /assets/minecraft/textures/blocks,nether_brick.png,,mcl_fences_fence_gate_nether_brick.png,,,,,,, /assets/minecraft/textures/blocks,stonebrick_carved.png,,mcl_supplemental_stonebrick_carved_slab.png,,,,,,, +/assets/minecraft/textures/blocks,cobblestone.png,/mods/ITEMS/mcl_walls/textures,mcl_walls_cobble_wall_top.png,,,,,,, +/assets/minecraft/textures/blocks,cobblestone.png,/mods/ITEMS/mcl_walls/textures,mcl_walls_cobble_wall_side.png,,,,,,, +/assets/minecraft/textures/blocks,cobblestone_mossy.png,/mods/ITEMS/mcl_walls/textures,mcl_walls_cobble_mossy_wall_top.png,,,,,,, +/assets/minecraft/textures/blocks,cobblestone_mossy.png,/mods/ITEMS/mcl_walls/textures,mcl_walls_cobble_mossy_wall_side.png,,,,,,, From 2e09febaae7420a6d8b2fe751a78989ab25637d8 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Wed, 11 Dec 2019 04:23:26 +0100 Subject: [PATCH 22/22] Rename Moss Stone to Mossy Cobblestone --- mods/ITEMS/mcl_core/locale/mcl_core.de.tr | 3 +-- mods/ITEMS/mcl_core/locale/template.txt | 2 +- mods/ITEMS/mcl_core/nodes_base.lua | 2 +- mods/ITEMS/mcl_stairs/locale/mcl_stairs.de.tr | 8 ++++---- mods/ITEMS/mcl_stairs/locale/template.txt | 6 +++--- mods/ITEMS/mcl_stairs/register.lua | 2 +- mods/MAPGEN/mcl_biomes/init.lua | 4 ++-- mods/MAPGEN/mcl_dungeons/init.lua | 2 +- 8 files changed, 14 insertions(+), 15 deletions(-) diff --git a/mods/ITEMS/mcl_core/locale/mcl_core.de.tr b/mods/ITEMS/mcl_core/locale/mcl_core.de.tr index 3460001d..cab01c2e 100644 --- a/mods/ITEMS/mcl_core/locale/mcl_core.de.tr +++ b/mods/ITEMS/mcl_core/locale/mcl_core.de.tr @@ -142,8 +142,7 @@ Lit Redstone Ore=Leuchtendes Redstoneerz Magenta Stained Glass=Magenta Buntglas Molten gold. It is used to craft armor, tools, and whatnot.=Geschmolzenes Gold. Es wird benutzt, um Rüstungen, Werkzeuge, und anderes herzustellen. Molten iron. It is used to craft armor, tools, and whatnot.=Geschmolzenes Eisen. Es wird benutzt, um Rüstungen, Werkzeuge, und vieles mehr herzustellen. - -Moss Stone=Moosstein +Mossy Cobblestone=Moosiges Kopfsteinpflaster Mossy Stone Bricks=Moosige Steinziegel Mycelium=Myzel Mycelium is a type of dirt and the ideal soil for mushrooms. Unlike other dirt-type blocks, it can not be turned into farmland with a hoe. In light, mycelium slowly spreads over nearby dirt. Under an opaque block or a liquid, it eventually turns back into dirt.=Myzel ist eine Art Erde und der perfekte Nährboden für Pilze. Anders als bei anderen erdähnlichen Blöcken kann es mit einer Hacke nicht zu Ackerboden verwandelt werden. Im Licht wird sich Myzel langsam auf benachbarte Erde ausbreiten. Unter einem lichtundurchlässigen Block oder einer Flüssigkeit wird es sich früher oder später zurück zu Erde verwandeln. diff --git a/mods/ITEMS/mcl_core/locale/template.txt b/mods/ITEMS/mcl_core/locale/template.txt index 8460b90f..5ad9a8d9 100644 --- a/mods/ITEMS/mcl_core/locale/template.txt +++ b/mods/ITEMS/mcl_core/locale/template.txt @@ -142,7 +142,7 @@ Lit Redstone Ore= Magenta Stained Glass= Molten gold. It is used to craft armor, tools, and whatnot.= Molten iron. It is used to craft armor, tools, and whatnot.= -Moss Stone= +Mossy Cobblestone= Mossy Stone Bricks= Mycelium= Mycelium is a type of dirt and the ideal soil for mushrooms. Unlike other dirt-type blocks, it can not be turned into farmland with a hoe. In light, mycelium slowly spreads over nearby dirt. Under an opaque block or a liquid, it eventually turns back into dirt.= diff --git a/mods/ITEMS/mcl_core/nodes_base.lua b/mods/ITEMS/mcl_core/nodes_base.lua index 50c1d1cc..75df8e5e 100644 --- a/mods/ITEMS/mcl_core/nodes_base.lua +++ b/mods/ITEMS/mcl_core/nodes_base.lua @@ -672,7 +672,7 @@ minetest.register_node("mcl_core:cobble", { }) minetest.register_node("mcl_core:mossycobble", { - description = S("Moss Stone"), + description = S("Mossy Cobblestone"), _doc_items_longdesc = doc.sub.items.temp.build, tiles = {"default_mossycobble.png"}, is_ground_content = false, diff --git a/mods/ITEMS/mcl_stairs/locale/mcl_stairs.de.tr b/mods/ITEMS/mcl_stairs/locale/mcl_stairs.de.tr index 495aa577..8b53d8d1 100644 --- a/mods/ITEMS/mcl_stairs/locale/mcl_stairs.de.tr +++ b/mods/ITEMS/mcl_stairs/locale/mcl_stairs.de.tr @@ -39,9 +39,9 @@ Double Diorite Slab=Doppeldioritplatte Cobblestone Stairs=Kopfsteinpflastertreppe Cobblestone Slab=Kopfsteinpflasterplatte Double Cobblestone Slab=Doppelkopfsteinpflasterplatte -Moss Stone Stairs=Moossteintreppe -Moss Stone Slab=Moossteinplatte -Double Moss Stone Slab=Doppelmoossteinplatte +Mossy Cobblestone Slab=Moosige Kopfsteinpflasterplatte +Mossy Cobblestone Stairs=Moosige Kopfsteinpflastertreppe +Double Mossy Cobblestone Slab=Doppelte moosige Kopfsteinpflasterplatte Brick Stairs=Ziegeltreppe Brick Slab=Ziegelplatte Double Brick Slab=Doppelziegelplatte @@ -98,4 +98,4 @@ Double Polished Diorite Slab=Doppelte polierte Dioritplatte Polished Diorite Stairs=Polierte Diorittreppe Mossy Stone Brick Stairs=Moosige Steinziegeltreppe Mossy Stone Brick Slab=Moosige Steinziegelplatte -Double Mossy Stone Brick Slab=Doppelte Steinziegelplatte +Double Mossy Stone Brick Slab=Doppelte moosige Steinziegelplatte diff --git a/mods/ITEMS/mcl_stairs/locale/template.txt b/mods/ITEMS/mcl_stairs/locale/template.txt index bec58b3a..0638af3d 100644 --- a/mods/ITEMS/mcl_stairs/locale/template.txt +++ b/mods/ITEMS/mcl_stairs/locale/template.txt @@ -39,9 +39,9 @@ Double Diorite Slab= Cobblestone Stairs= Cobblestone Slab= Double Cobblestone Slab= -Moss Stone Stairs= -Moss Stone Slab= -Double Moss Stone Slab= +Mossy Cobblestone Stairs= +Mossy Cobblestone Slab= +Double Mossy Cobblestone Slab= Brick Stairs= Brick Slab= Double Brick Slab= diff --git a/mods/ITEMS/mcl_stairs/register.lua b/mods/ITEMS/mcl_stairs/register.lua index fbbedf2c..9f4c3425 100644 --- a/mods/ITEMS/mcl_stairs/register.lua +++ b/mods/ITEMS/mcl_stairs/register.lua @@ -45,7 +45,7 @@ mcl_stairs.register_stair_and_slab_simple("granite", "mcl_core:granite", S("Gran mcl_stairs.register_stair_and_slab_simple("diorite", "mcl_core:diorite", S("Diorite Stairs"), S("Diorite Slab"), S("Double Diorite Slab")) mcl_stairs.register_stair_and_slab_simple("cobble", "mcl_core:cobble", S("Cobblestone Stairs"), S("Cobblestone Slab"), S("Double Cobblestone Slab")) -mcl_stairs.register_stair_and_slab_simple("mossycobble", "mcl_core:mossycobble", S("Moss Stone Stairs"), S("Moss Stone Slab"), S("Double Moss Stone Slab")) +mcl_stairs.register_stair_and_slab_simple("mossycobble", "mcl_core:mossycobble", S("Mossy Cobblestone Stairs"), S("Mossy Cobblestone Slab"), S("Double Mossy Cobblestone Slab")) mcl_stairs.register_stair_and_slab_simple("brick_block", "mcl_core:brick_block", S("Brick Stairs"), S("Brick Slab"), S("Double Brick Slab")) diff --git a/mods/MAPGEN/mcl_biomes/init.lua b/mods/MAPGEN/mcl_biomes/init.lua index 19880f5b..3727dfcf 100644 --- a/mods/MAPGEN/mcl_biomes/init.lua +++ b/mods/MAPGEN/mcl_biomes/init.lua @@ -2765,7 +2765,7 @@ local function register_decorations() rotation = "0", }) - -- Moss stone boulder (3×3) + -- Mossy cobblestone boulder (3×3) minetest.register_decoration({ deco_type = "schematic", place_on = {"mcl_core:podzol", "mcl_core:dirt", "mcl_core:coarse_dirt"}, @@ -2785,7 +2785,7 @@ local function register_decorations() flags = "place_center_x, place_center_z", }) - -- Small moss stone boulder (2×2) + -- Small mossy cobblestone boulder (2×2) minetest.register_decoration({ deco_type = "schematic", place_on = {"mcl_core:podzol", "mcl_core:dirt", "mcl_core:coarse_dirt"}, diff --git a/mods/MAPGEN/mcl_dungeons/init.lua b/mods/MAPGEN/mcl_dungeons/init.lua index dc19a6e1..b10f73be 100644 --- a/mods/MAPGEN/mcl_dungeons/init.lua +++ b/mods/MAPGEN/mcl_dungeons/init.lua @@ -253,7 +253,7 @@ minetest.register_on_generated(function(minp, maxp) local p_pos = area:index(tx, ty, tz) -- Do not overwrite nodes with is_ground_content == false (e.g. bedrock) - -- Exceptions: cobblestone and moss stone so neighborings dungeons nicely connect to each other + -- Exceptions: cobblestone and mossy cobblestone so neighborings dungeons nicely connect to each other local name = minetest.get_name_from_content_id(data[p_pos]) if name == "mcl_core:cobble" or name == "mcl_core:mossycobble" or minetest.registered_nodes[name].is_ground_content then -- Floor