From 4acee8e64e9418ca576284f3244d43da19d7c5a6 Mon Sep 17 00:00:00 2001 From: AFCMS Date: Fri, 11 Nov 2022 00:41:59 +0100 Subject: [PATCH] Fixes to `mcl_meshhand` - fix actual crash when placing hand in world (undefined function) - remove node fields redundant with default values - remove support for `use_texture_alpha_string_modes` - type annotation - more explicit functions --- mods/PLAYER/mcl_meshhand/init.lua | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/mods/PLAYER/mcl_meshhand/init.lua b/mods/PLAYER/mcl_meshhand/init.lua index 0d4bf091d..1cc31f601 100644 --- a/mods/PLAYER/mcl_meshhand/init.lua +++ b/mods/PLAYER/mcl_meshhand/init.lua @@ -1,22 +1,20 @@ local mcl_skins_enabled = minetest.global_exists("mcl_skins") --- This is a fake node that should never be placed in the world +---This is a fake node that should never be placed in the world +---@type node_definition local node_def = { - description = "", - use_texture_alpha = minetest.features.use_texture_alpha_string_modes and "opaque" or false, - visual_scale = 1, - wield_scale = {x=1,y=1,z=1}, + use_texture_alpha = "opaque", paramtype = "light", drawtype = "mesh", node_placement_prediction = "", on_construct = function(pos) - local name = get_node(pos).name + local name = minetest.get_node(pos).name local message = "[mcl_meshhand] Trying to construct " .. name .. " at " .. minetest.pos_to_string(pos) minetest.log("error", message) minetest.remove_node(pos) end, drop = "", - on_drop = function() return "" end, + on_drop = function(_, _, _) return ItemStack() end, groups = { dig_immediate = 3, not_in_creative_inventory = 1 }, range = minetest.registered_items[""].range } @@ -29,20 +27,20 @@ if mcl_skins_enabled then local female = table.copy(node_def) female._mcl_hand_id = skin.id female.mesh = "mcl_meshhand_female.b3d" - female.tiles = {skin.texture} + female.tiles = { skin.texture } minetest.register_node("mcl_meshhand:" .. skin.id, female) else local male = table.copy(node_def) male._mcl_hand_id = skin.id male.mesh = "mcl_meshhand.b3d" - male.tiles = {skin.texture} + male.tiles = { skin.texture } minetest.register_node("mcl_meshhand:" .. skin.id, male) end end else node_def._mcl_hand_id = "hand" node_def.mesh = "mcl_meshhand.b3d" - node_def.tiles = {"character.png"} + node_def.tiles = { "character.png" } minetest.register_node("mcl_meshhand:hand", node_def) end @@ -54,6 +52,6 @@ if mcl_skins_enabled then end) else minetest.register_on_joinplayer(function(player) - player:get_inventory():set_stack("hand", 1, "mcl_meshhand:hand") + player:get_inventory():set_stack("hand", 1, ItemStack("mcl_meshhand:hand")) end) end