adjustments from code review

This commit is contained in:
Alexander Weber 2022-03-05 12:42:45 +01:00
parent 482a13b495
commit e0765da839
3 changed files with 13 additions and 4 deletions

7
API.md
View File

@ -60,9 +60,10 @@ Set the hand node to be used with this skin
## skin:set_hand_from_texture()
Register and set hand node based on skin texture
Only works on mod load
##skin:get_hand()
Get hand node
## skin:get_hand()
Get hand node. Returns ItemStack
## skin:set_preview(texture)
Set the skin preview - usually at the init time only
@ -76,7 +77,7 @@ Could be redefined for dynamic preview texture generation
Hook for dynamic skins updates on select. Is called in skins.set_player_skin()
In skinsdb the default implementation for this function is empty.
skin:apply_skin_to_player(player)
## skin:apply_skin_to_player(player)
Apply the skin to the player. Called in skins.update_player_skin() to update visuals
## skin:set_meta(key, value)

View File

@ -93,3 +93,10 @@ if not default_skin_obj then
default_skin_obj:set_meta("name", "Sam")
default_skin_obj:set_hand_from_texture()
end
-- Secure hand inventory slot
minetest.register_allow_player_inventory_action(function(player, action, inv, data)
if data.to_list == "hand" or data.from_list == "hand" or data.listname == "hand" then
return 0
end
end)

View File

@ -55,6 +55,7 @@ function skin_class:set_hand(hand)
self._hand = hand
end
local ALPHA_CLIP = minetest.features.use_texture_alpha_string_modes and "clip" or true
function skin_class:set_hand_from_texture()
local hand = core.get_current_modname()..':'..self._texture:gsub('[%p%c%s]', '')
@ -66,7 +67,7 @@ function skin_class:set_hand_from_texture()
paramtype = "light",
drawtype = "mesh",
mesh = "skinsdb_hand.b3d",
use_texture_alpha = "clip",
use_texture_alpha = ALPHA_CLIP,
node_placement_prediction = "",
groups = { not_in_creative_inventory = 1 }
})