mirror of
https://github.com/neoStudiosLCE/neoLegacy.git
synced 2026-06-22 07:42:56 +00:00
Removed armor offsets
Removed armor offsets as they would call the compile() function so many times overflowing memory triggering a safeguard which terminates the process.
This commit is contained in:
parent
ac3df25056
commit
809bb10930
|
|
@ -439,185 +439,9 @@ void HumanoidModel::render(shared_ptr<Entity> entity, float time, float r, float
|
|||
else if (pSkinOffset->fD == 3)
|
||||
leg1Offsets[2] += pSkinOffset->fO / 16.0f;
|
||||
break;
|
||||
case eBodyOffset_Helmet:
|
||||
if (m_isArmor && !head->isArmorPart2 && head->visible)
|
||||
{
|
||||
hasArmorOffsets[0] = true;
|
||||
delete head;
|
||||
head = new ModelPart(this, 0, 0);
|
||||
head->addHumanoidBox(-4, -8 + pSkinOffset->fO, -4, 8, 8, 8, 1.0f); // Head
|
||||
head->setPos(0, 0 + m_fYOffset, 0);
|
||||
head->compile(1.0f/16.0f);
|
||||
}
|
||||
break;
|
||||
case eBodyOffset_BodyArmor:
|
||||
if (m_isArmor && !body->isArmorPart2 && body->visible)
|
||||
{
|
||||
hasArmorOffsets[1] = true;
|
||||
delete body;
|
||||
body = new ModelPart(this, 16, 16);
|
||||
body->addHumanoidBox(-4, 0 + pSkinOffset->fO, -2, 8, 12, 4, 1.0f); // Body
|
||||
body->setPos(0, 0 + m_fYOffset, 0);
|
||||
body->compile(1.0f/16.0f);
|
||||
}
|
||||
break;
|
||||
case eBodyOffset_ArmArmor0:
|
||||
if (m_isArmor && !arm0->isArmorPart2 && arm0->visible)
|
||||
{
|
||||
hasArmorOffsets[2] = true;
|
||||
delete arm0;
|
||||
arm0 = new ModelPart(this, 24 + 16, 16);
|
||||
arm0->addHumanoidBox(-3, -2 + pSkinOffset->fO, -2, 4, 12, 4, 1.0f); // Arm0
|
||||
arm0->setPos(-5, 2 + m_fYOffset, 0);
|
||||
arm0->compile(1.0f/16.0f);
|
||||
}
|
||||
break;
|
||||
case eBodyOffset_ArmArmor1:
|
||||
if (m_isArmor && !arm1->isArmorPart2 && arm1->visible)
|
||||
{
|
||||
hasArmorOffsets[3] = true;
|
||||
delete arm1;
|
||||
arm1 = new ModelPart(this, 24 + 16, 16);
|
||||
arm1->bMirror = true;
|
||||
arm1->addHumanoidBox(-1, -2 + pSkinOffset->fO, -2, 4, 12, 4, 1.0f); // Arm1
|
||||
arm1->setPos(5, 2 + m_fYOffset, 0);
|
||||
arm1->compile(1.0f/16.0f);
|
||||
}
|
||||
break;
|
||||
case eBodyOffset_Belt:
|
||||
if (m_isArmor && body->isArmorPart2 && body->visible)
|
||||
{
|
||||
hasArmorOffsets[1] = true;
|
||||
delete body;
|
||||
body = new ModelPart(this, 16, 16);
|
||||
body->addHumanoidBox(-4, 0 + pSkinOffset->fO, -2, 8, 12, 4, 0.5f); // Body
|
||||
body->setPos(0, 0 + m_fYOffset, 0);
|
||||
body->compile(1.0f/16.0f);
|
||||
body->isArmorPart2 = true;
|
||||
}
|
||||
break;
|
||||
case eBodyOffset_Legging0:
|
||||
if (m_isArmor && leg0->isArmorPart2 && leg0->visible)
|
||||
{
|
||||
hasArmorOffsets[4] = true;
|
||||
delete leg0;
|
||||
leg0 = new ModelPart(this, 0, 16);
|
||||
leg0->addHumanoidBox(-2, 0 + pSkinOffset->fO, -2, 4, 12, 4, 0.5f); // Leg0
|
||||
leg0->setPos(-1.9, 12 + m_fYOffset, 0);
|
||||
leg0->compile(1.0f/16.0f);
|
||||
leg0->isArmorPart2 = true;
|
||||
}
|
||||
break;
|
||||
case eBodyOffset_Legging1:
|
||||
if (m_isArmor && leg1->isArmorPart2 && leg1->visible)
|
||||
{
|
||||
hasArmorOffsets[5] = true;
|
||||
delete leg1;
|
||||
leg1 = new ModelPart(this, 0, 16);
|
||||
leg1->bMirror = true;
|
||||
leg1->addHumanoidBox(-2, 0 + pSkinOffset->fO, -2, 4, 12, 4, 0.5f); // Leg1
|
||||
leg1->setPos(1.9, 12 + m_fYOffset, 0);
|
||||
leg1->compile(1.0f/16.0f);
|
||||
leg1->isArmorPart2 = true;
|
||||
}
|
||||
break;
|
||||
case eBodyOffset_Boot0:
|
||||
if (m_isArmor && !leg0->isArmorPart2 && leg0->visible)
|
||||
{
|
||||
hasArmorOffsets[4] = true;
|
||||
delete leg0;
|
||||
leg0 = new ModelPart(this, 0, 16);
|
||||
leg0->addHumanoidBox(-2, 0 + pSkinOffset->fO, -2, 4, 12, 4, 1.0f); // Leg0
|
||||
leg0->setPos(-1.9, 12 + m_fYOffset, 0);
|
||||
leg0->compile(1.0f/16.0f);
|
||||
}
|
||||
break;
|
||||
case eBodyOffset_Boot1:
|
||||
if (m_isArmor && !leg1->isArmorPart2 && leg1->visible)
|
||||
{
|
||||
hasArmorOffsets[5] = true;
|
||||
delete leg1;
|
||||
leg1 = new ModelPart(this, 0, 16);
|
||||
leg1->bMirror = true;
|
||||
leg1->addHumanoidBox(-2, 0 + pSkinOffset->fO, -2, 4, 12, 4, 1.0f); // Leg1
|
||||
leg1->setPos(1.9, 12 + m_fYOffset, 0);
|
||||
leg1->compile(1.0f/16.0f);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (m_isArmor)
|
||||
{
|
||||
if (!hasArmorOffsets[0] && head->cubes[0]->y0 != -8 && head->visible)
|
||||
{
|
||||
delete head;
|
||||
head = new ModelPart(this, 0, 0);
|
||||
head->addHumanoidBox(-4, -8, -4, 8, 8, 8, 1.0f); // Head
|
||||
head->setPos(0, 0 + m_fYOffset, 0);
|
||||
head->compile(1.0f/16.0f);
|
||||
}
|
||||
if (!hasArmorOffsets[1] && body->cubes[0]->y0 != 0 && body->visible)
|
||||
{
|
||||
delete body;
|
||||
body = new ModelPart(this, 16, 16);
|
||||
if (body->isArmorPart2)
|
||||
{
|
||||
body->addHumanoidBox(-4, 0, -2, 8, 12, 4, 0.5f); // Body
|
||||
body->isArmorPart2 = true;
|
||||
}
|
||||
else
|
||||
body->addHumanoidBox(-4, 0, -2, 8, 12, 4, 1.0f); // Body
|
||||
body->setPos(0, 0 + m_fYOffset, 0);
|
||||
body->compile(1.0f/16.0f);
|
||||
}
|
||||
if (!hasArmorOffsets[2] && arm0->cubes[0]->y0 != -2 && arm0->visible)
|
||||
{
|
||||
delete arm0;
|
||||
arm0 = new ModelPart(this, 24 + 16, 16);
|
||||
arm0->addHumanoidBox(-3, -2, -2, 4, 12, 4, 1.0f); // Arm0
|
||||
arm0->setPos(-5, 2 + m_fYOffset, 0);
|
||||
arm0->compile(1.0f/16.0f);
|
||||
}
|
||||
if (!hasArmorOffsets[3] && arm1->cubes[0]->y0 != -2 && arm1->visible)
|
||||
{
|
||||
delete arm1;
|
||||
arm1 = new ModelPart(this, 24 + 16, 16);
|
||||
arm1->bMirror = true;
|
||||
arm1->addHumanoidBox(-1, -2, -2, 4, 12, 4, 1.0f); // Arm1
|
||||
arm1->setPos(5, 2 + m_fYOffset, 0);
|
||||
arm1->compile(1.0f/16.0f);
|
||||
}
|
||||
if (!hasArmorOffsets[4] && leg0->cubes[0]->y0 != 0 && leg0->visible)
|
||||
{
|
||||
delete leg0;
|
||||
leg0 = new ModelPart(this, 0, 16);
|
||||
if (leg0->isArmorPart2)
|
||||
{
|
||||
leg0->addHumanoidBox(-2, 0, -2, 4, 12, 4, 0.5f); // Leg0
|
||||
leg0->isArmorPart2 = true;
|
||||
}
|
||||
else
|
||||
leg0->addHumanoidBox(-2, 0, -2, 4, 12, 4, 1.0f); // Leg0
|
||||
leg0->setPos(-1.9, 12 + m_fYOffset, 0);
|
||||
leg0->compile(1.0f/16.0f);
|
||||
}
|
||||
if (!hasArmorOffsets[5] && leg1->cubes[0]->y0 != 0 && leg1->visible)
|
||||
{
|
||||
delete leg1;
|
||||
leg1 = new ModelPart(this, 0, 16);
|
||||
if (leg1->isArmorPart2)
|
||||
{
|
||||
leg1->addHumanoidBox(-2, 0, -2, 4, 12, 4, 0.5f); // Leg1
|
||||
leg1->isArmorPart2 = true;
|
||||
}
|
||||
else
|
||||
leg1->addHumanoidBox(-2, 0, -2, 4, 12, 4, 1.0f); // Leg1
|
||||
leg1->setPos(1.9, 12 + m_fYOffset, 0);
|
||||
leg1->compile(1.0f/16.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
setupAnim(time, r, bob, yRot, xRot, scale, entity, m_uiAnimOverrideBitmask);
|
||||
|
|
|
|||
Loading…
Reference in a new issue