From 600e8bede231906cecf7dbb00e7675df465b2a67 Mon Sep 17 00:00:00 2001 From: AFCMS Date: Tue, 30 Mar 2021 00:35:29 +0200 Subject: [PATCH] improve wieldview API (!) to support transform registration without groups this will make detaching screwdriver from mcl more easy --- mods/ITEMS/screwdriver/init.lua | 14 +++++++++----- mods/ITEMS/screwdriver/mod.conf | 3 ++- mods/PLAYER/wieldview/transform.lua | 12 +++++------- 3 files changed, 16 insertions(+), 13 deletions(-) diff --git a/mods/ITEMS/screwdriver/init.lua b/mods/ITEMS/screwdriver/init.lua index e6aedf19c5..364032a15e 100644 --- a/mods/ITEMS/screwdriver/init.lua +++ b/mods/ITEMS/screwdriver/init.lua @@ -1,5 +1,7 @@ local S = minetest.get_translator("screwdriver") +local has_wieldview = minetest.get_modpath("wieldview") + screwdriver = {} screwdriver.ROTATE_FACE = 1 @@ -176,7 +178,7 @@ minetest.register_tool("screwdriver:screwdriver", { description = S("Screwdriver"), inventory_image = "screwdriver.png", wield_image = "screwdriver.png^[transformFX", - groups = { tool = 1, not_in_creative_inventory = 1 }, + groups = { tool = 1 }, --not in creative inventory? on_use = function(itemstack, user, pointed_thing) screwdriver.handler(itemstack, user, pointed_thing, screwdriver.ROTATE_FACE, 200) return itemstack @@ -197,7 +199,9 @@ minetest.register_craft({ } }) -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") +for i = 1, 4 do + minetest.register_alias("screwdriver:screwdriver"..tostring(i), "screwdriver:screwdriver") + if has_wieldview then + wieldview.register_transform("screwdriver:screwdriver"..tostring(i), "R90") + end +end \ No newline at end of file diff --git a/mods/ITEMS/screwdriver/mod.conf b/mods/ITEMS/screwdriver/mod.conf index a18279839d..5d7800c713 100644 --- a/mods/ITEMS/screwdriver/mod.conf +++ b/mods/ITEMS/screwdriver/mod.conf @@ -1,2 +1,3 @@ name = screwdriver -depends = mcl_wip \ No newline at end of file +depends = mcl_wip +optional_depends = wieldview \ No newline at end of file diff --git a/mods/PLAYER/wieldview/transform.lua b/mods/PLAYER/wieldview/transform.lua index a19956796f..b55621d7ee 100644 --- a/mods/PLAYER/wieldview/transform.lua +++ b/mods/PLAYER/wieldview/transform.lua @@ -1,10 +1,8 @@ -- Wielded Item Transformations - http://dev.minetest.net/texture -wieldview.transform = { - ["screwdriver:screwdriver"]="R90", - ["screwdriver:screwdriver1"]="R90", - ["screwdriver:screwdriver2"]="R90", - ["screwdriver:screwdriver3"]="R90", - ["screwdriver:screwdriver4"]="R90", -} +wieldview.register_transform = function(item, rotation) + wieldview.transform[item] = rotation +end + +wieldview.transform = {}