Updated skin box hiding logic

Updated skin box hiding logic after testing a newer version PCK-Studio revealing the original logic wasn't accurate, also removed code that added arm and tool offsets to held items as it was not working correctly.
This commit is contained in:
Langtanium 2026-04-28 19:21:07 -07:00
parent 28f0110339
commit 878547dec8
5 changed files with 13 additions and 56 deletions

View file

@ -286,7 +286,6 @@ void ItemInHandRenderer::renderItem(shared_ptr<LivingEntity> mob, shared_ptr<Ite
float xo = 0.0f;
float yo = 0.3f;
float zo = 0.0f;
// Re position height of held item if skin is small
@ -302,39 +301,8 @@ void ItemInHandRenderer::renderItem(shared_ptr<LivingEntity> mob, shared_ptr<Ite
}
}
// Change height of held item by tool0 and arm0 offset
shared_ptr<Player> player = dynamic_pointer_cast<Player>(mob);
vector<SKIN_OFFSET *>* pModelOffsets = nullptr;
if (player != nullptr)
pModelOffsets = player->GetModelOffsets();
if (pModelOffsets != nullptr)
{
for( SKIN_OFFSET *pModelOffset : *pModelOffsets )
{
switch (pModelOffset->ePart)
{
case eBodyOffset_Arm0:
if(pModelOffset->fD == 1)
xo += pModelOffset->fO / 16.0f;
else if(pModelOffset->fD == 2)
zo += pModelOffset->fO / 16.0f;
else if(pModelOffset->fD == 3)
yo += pModelOffset->fO / 16.0f;
break;
case eBodyOffset_Tool0:
if(pModelOffset->fD == 1)
xo += pModelOffset->fO / 16.0f;
else if(pModelOffset->fD == 2)
zo += pModelOffset->fO / 16.0f;
else if(pModelOffset->fD == 3)
yo += pModelOffset->fO / 16.0f;
break;
}
}
}
glEnable(GL_RESCALE_NORMAL);
glTranslatef(-xo, -yo, -zo);
glTranslatef(-xo, -yo, 0);
float s = 1.5f;
glScalef(s, s, s);