1
0
Fork 0

Fix crash with cape when player has default skin

This commit is contained in:
Araca 2024-02-04 21:59:12 +01:00
parent 87abd0f4dc
commit 37fadc9099
1 changed files with 9 additions and 7 deletions

View File

@ -163,13 +163,15 @@ function mcl_skins.update_player_skin(player)
local skin = mcl_skins.player_skins[player]
local skinval = mcl_skins.compile_skin(skin)
if not skin.cape then skin.cape = "blank.png" end
if skin then
if not skin.cape then skin.cape = "blank.png" end
if player:get_inventory():get_stack("armor", 3):get_name() == "mcl_armor:elytra" then
skinval = skinval:gsub("%^" .. skin.cape, "")
-- don't render the "normal" cape on players while wearing the elytra.
-- this is NOT used when the player puts an elytra on, see register.lua in mcl_armor for that.
-- this is used when a player joins or changes something regarding their skin.
if player:get_inventory():get_stack("armor", 3):get_name() == "mcl_armor:elytra" then
skinval = skinval:gsub("%^" .. skin.cape, "")
-- don't render the "normal" cape on players while wearing the elytra.
-- this is NOT used when the player puts an elytra on, see register.lua in mcl_armor for that.
-- this is used when a player joins or changes something regarding their skin.
end
end
mcl_player.player_set_skin(player, skinval)