From e5829f719d10d4c8376bcce3b603f42261ecb8e3 Mon Sep 17 00:00:00 2001 From: seventeenthShulker Date: Sun, 2 Jul 2023 17:08:44 +0200 Subject: [PATCH] All signs are mvps_stopper upon registration All buttons are mvps_unsticky upon registration Add some missing unmovable nodes Bamboo trapdoor is now sticky --- mods/ITEMS/REDSTONE/mesecons_button/init.lua | 5 +++ mods/ITEMS/REDSTONE/mesecons_mvps/init.lua | 36 +++++--------------- mods/ITEMS/mcl_signs/signs_api.lua | 34 ++++++++++++++++++ 3 files changed, 48 insertions(+), 27 deletions(-) diff --git a/mods/ITEMS/REDSTONE/mesecons_button/init.lua b/mods/ITEMS/REDSTONE/mesecons_button/init.lua index 275cac2e2..b812ea956 100644 --- a/mods/ITEMS/REDSTONE/mesecons_button/init.lua +++ b/mods/ITEMS/REDSTONE/mesecons_button/init.lua @@ -211,6 +211,11 @@ function mesecon.register_button(basename, description, texture, recipeitem, sou output = "mesecons_button:button_"..basename.."_off", recipe = {{ recipeitem }}, }) + + if minetest.get_modpath("mesecons_mvps") then + mesecon.register_mvps_unsticky("mesecons_button:button_"..basename.."_off") + mesecon.register_mvps_unsticky("mesecons_button:button_"..basename.."_on") + end end mesecon.register_button( diff --git a/mods/ITEMS/REDSTONE/mesecons_mvps/init.lua b/mods/ITEMS/REDSTONE/mesecons_mvps/init.lua index f282f4dca..12bfd0ca8 100644 --- a/mods/ITEMS/REDSTONE/mesecons_mvps/init.lua +++ b/mods/ITEMS/REDSTONE/mesecons_mvps/init.lua @@ -433,10 +433,8 @@ mesecon.register_mvps_stopper("mesecons_solarpanel:solar_panel_inverted_on") mesecon.register_mvps_stopper("mesecons_solarpanel:solar_panel_inverted_off") mesecon.register_mvps_stopper("mcl_banners:hanging_banner") mesecon.register_mvps_stopper("mcl_banners:standing_banner") -mesecon.register_mvps_stopper("mcl_campfires:campfire") -mesecon.register_mvps_stopper("mcl_campfires:campfire_lit") -mesecon.register_mvps_stopper("mcl_campfires:soul_campfire") -mesecon.register_mvps_stopper("mcl_campfires:soul_campfire_lit") +mesecon.register_mvps_stopper("mcl_beehives:bee_nest") +mesecon.register_mvps_stopper("mcl_beehives:beehive") -- Unmovable by technical restrictions. -- Open formspec would screw up if node is destroyed (minor problem) @@ -467,13 +465,14 @@ mesecon.register_mvps_stopper("mcl_chests:trapped_chest") mesecon.register_mvps_stopper("mcl_chests:trapped_chest_small") mesecon.register_mvps_stopper("mcl_chests:trapped_chest_left") mesecon.register_mvps_stopper("mcl_chests:trapped_chest_right") -mesecon.register_mvps_stopper("mcl_signs:wall_sign") -mesecon.register_mvps_stopper("mcl_signs:standing_sign") -mesecon.register_mvps_stopper("mcl_signs:standing_sign22_5") -mesecon.register_mvps_stopper("mcl_signs:standing_sign45") -mesecon.register_mvps_stopper("mcl_signs:standing_sign67_5") mesecon.register_mvps_stopper("mcl_barrels:barrel_open") mesecon.register_mvps_stopper("mcl_barrels:barrel_closed") +mesecon.register_mvps_stopper("mcl_campfires:campfire") +mesecon.register_mvps_stopper("mcl_campfires:campfire_lit") +mesecon.register_mvps_stopper("mcl_campfires:soul_campfire") +mesecon.register_mvps_stopper("mcl_campfires:soul_campfire_lit") +mesecon.register_mvps_stopper("mcl_lectern:lectern") +mesecon.register_mvps_stopper("mcl_grindstone:grindstone") -- Unmovable by design: objects @@ -517,8 +516,6 @@ mesecon.register_mvps_unsticky("mcl_bamboo:bamboo_2") mesecon.register_mvps_unsticky("mcl_bamboo:bamboo_3") mesecon.register_mvps_unsticky("mcl_bamboo:bamboo_door") -mesecon.register_mvps_unsticky("mcl_bamboo:bamboo_trapdoor") -mesecon.register_mvps_unsticky("mcl_signs:wall_sign_bamboo") mesecon.register_mvps_unsticky("mcl_bamboo:scaffolding") -- Beds @@ -554,21 +551,6 @@ mesecon.register_mvps_unsticky("mcl_beds:bed_white_top") mesecon.register_mvps_unsticky("mcl_beds:bed_white_bottom") mesecon.register_mvps_unsticky("mcl_beds:bed_yellow_top") mesecon.register_mvps_unsticky("mcl_beds:bed_yellow_bottom") --- Buttons -mesecon.register_mvps_unsticky("mesecons_button:button_stone_off") -mesecon.register_mvps_unsticky("mesecons_button:button_stone_on") -mesecon.register_mvps_unsticky("mesecons_button:button_wood_off") -mesecon.register_mvps_unsticky("mesecons_button:button_wood_on") -mesecon.register_mvps_unsticky("mesecons_button:button_acaciawood_off") -mesecon.register_mvps_unsticky("mesecons_button:button_acaciawood_on") -mesecon.register_mvps_unsticky("mesecons_button:button_birchwood_off") -mesecon.register_mvps_unsticky("mesecons_button:button_birchwood_on") -mesecon.register_mvps_unsticky("mesecons_button:button_darkwood_off") -mesecon.register_mvps_unsticky("mesecons_button:button_darkwood_on") -mesecon.register_mvps_unsticky("mesecons_button:button_sprucewood_off") -mesecon.register_mvps_unsticky("mesecons_button:button_sprucewood_on") -mesecon.register_mvps_unsticky("mesecons_button:button_junglewood_off") -mesecon.register_mvps_unsticky("mesecons_button:button_junglewood_on") -- Cactus, Sugarcane & Vines mesecon.register_mvps_unsticky("mcl_core:cactus") mesecon.register_mvps_unsticky("mcl_core:reeds") @@ -581,7 +563,7 @@ mesecon.register_mvps_unsticky("mcl_cake:cake_4") mesecon.register_mvps_unsticky("mcl_cake:cake_5") mesecon.register_mvps_unsticky("mcl_cake:cake_6") mesecon.register_mvps_unsticky("mcl_cake:cake") --- Carpet +-- Carpet - pullable in MC but breaks when pulled downwards. At the moment, it just cannot be pulled. mesecon.register_mvps_unsticky("mcl_wool:black_carpet") mesecon.register_mvps_unsticky("mcl_wool:blue_carpet") mesecon.register_mvps_unsticky("mcl_wool:brown_carpet") diff --git a/mods/ITEMS/mcl_signs/signs_api.lua b/mods/ITEMS/mcl_signs/signs_api.lua index 7ada6a646..52bb7bbbf 100644 --- a/mods/ITEMS/mcl_signs/signs_api.lua +++ b/mods/ITEMS/mcl_signs/signs_api.lua @@ -764,6 +764,15 @@ function mcl_signs.register_sign (modname, color, _name, ttsign) table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign22_5" .. _name, 1 }) table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign45" .. _name, 2 }) table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign67_5" .. _name, 3 }) + + -- register as unpushable + if minetest.get_modpath("mesecons_mvps") then + mesecon.register_mvps_stopper("mcl_signs:wall_sign" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign22_5" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign45" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign67_5" .. _name) + end end --- The same as register_sign, except caller defines the textures. Note, there is a greyscale version of the sign, @@ -1002,6 +1011,14 @@ function mcl_signs.register_sign_custom (modname, _name, tiles, color, inventory table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign45" .. _name, 2 }) table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign67_5" .. _name, 3 }) + -- register as unpushable + if minetest.get_modpath("mesecons_mvps") then + mesecon.register_mvps_stopper("mcl_signs:wall_sign" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign22_5" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign45" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign67_5" .. _name) + end end --- Override an existing sign, tint the textures, and gives it an unique node name. Creates both wall and standing signs. @@ -1234,6 +1251,15 @@ function mcl_signs.reregister_sign (modname, color, _name, ttsign) table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign22_5" .. _name, 1 }) table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign45" .. _name, 2 }) table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign67_5" .. _name, 3 }) + + -- register as unpushable + if minetest.get_modpath("mesecons_mvps") then + mesecon.register_mvps_stopper("mcl_signs:wall_sign" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign22_5" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign45" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign67_5" .. _name) + end end --- The same as reregister_sign, except caller defines the textures. Note, there is a greyscale version of the sign, @@ -1469,6 +1495,14 @@ function mcl_signs.reregister_sign_custom (modname, _name, tiles, color, invento table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign45" .. _name, 2 }) table.insert(mcl_signs.standing_rotation_levels, { "mcl_signs:standing_sign67_5" .. _name, 3 }) + -- register as unpushable + if minetest.get_modpath("mesecons_mvps") then + mesecon.register_mvps_stopper("mcl_signs:wall_sign" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign22_5" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign45" .. _name) + mesecon.register_mvps_stopper("mcl_signs:standing_sign67_5" .. _name) + end end --- Usage: Call this with the mod's name, the wood's item string (for the planks), and with the sign's suffix.