forked from teamnwah/openmw-tes3coop
Restore and fix some missing parts
This commit is contained in:
parent
d9b64b77ec
commit
4af1bce659
3 changed files with 22 additions and 1 deletions
|
@ -20,7 +20,10 @@ NpcAnimation::~NpcAnimation()
|
||||||
removeEntities(head);
|
removeEntities(head);
|
||||||
removeEntities(hair);
|
removeEntities(hair);
|
||||||
removeEntities(neck);
|
removeEntities(neck);
|
||||||
|
removeEntities(chest);
|
||||||
removeEntities(groin);
|
removeEntities(groin);
|
||||||
|
removeEntities(rHand);
|
||||||
|
removeEntities(lHand);
|
||||||
removeEntities(rWrist);
|
removeEntities(rWrist);
|
||||||
removeEntities(lWrist);
|
removeEntities(lWrist);
|
||||||
removeEntities(rForearm);
|
removeEntities(rForearm);
|
||||||
|
@ -37,6 +40,7 @@ NpcAnimation::~NpcAnimation()
|
||||||
removeEntities(lUpperLeg);
|
removeEntities(lUpperLeg);
|
||||||
removeEntities(rclavicle);
|
removeEntities(rclavicle);
|
||||||
removeEntities(lclavicle);
|
removeEntities(lclavicle);
|
||||||
|
removeEntities(tail);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -406,8 +410,14 @@ void NpcAnimation::removeIndividualPart(int type)
|
||||||
removeEntities(hair);
|
removeEntities(hair);
|
||||||
else if(type == ESM::PRT_Neck) //2
|
else if(type == ESM::PRT_Neck) //2
|
||||||
removeEntities(neck);
|
removeEntities(neck);
|
||||||
|
else if(type == ESM::PRT_Cuirass)//3
|
||||||
|
removeEntities(chest);
|
||||||
else if(type == ESM::PRT_Groin)//4
|
else if(type == ESM::PRT_Groin)//4
|
||||||
removeEntities(groin);
|
removeEntities(groin);
|
||||||
|
else if(type == ESM::PRT_RHand)//6
|
||||||
|
removeEntities(rHand);
|
||||||
|
else if(type == ESM::PRT_LHand)//7
|
||||||
|
removeEntities(lHand);
|
||||||
else if(type == ESM::PRT_RWrist)//8
|
else if(type == ESM::PRT_RWrist)//8
|
||||||
removeEntities(rWrist);
|
removeEntities(rWrist);
|
||||||
else if(type == ESM::PRT_LWrist) //9
|
else if(type == ESM::PRT_LWrist) //9
|
||||||
|
@ -446,6 +456,8 @@ void NpcAnimation::removeIndividualPart(int type)
|
||||||
else if(type == ESM::PRT_Weapon) //25
|
else if(type == ESM::PRT_Weapon) //25
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
else if(type == ESM::PRT_Tail) //26
|
||||||
|
removeEntities(tail);
|
||||||
}
|
}
|
||||||
|
|
||||||
void NpcAnimation::reserveIndividualPart(int type, int group, int priority)
|
void NpcAnimation::reserveIndividualPart(int type, int group, int priority)
|
||||||
|
@ -487,6 +499,7 @@ bool NpcAnimation::addOrReplaceIndividualPart(int type, int group, int priority,
|
||||||
neck = insertBoundedPart(mesh, "Neck");
|
neck = insertBoundedPart(mesh, "Neck");
|
||||||
break;
|
break;
|
||||||
case ESM::PRT_Cuirass: //3
|
case ESM::PRT_Cuirass: //3
|
||||||
|
chest = insertBoundedPart(mesh, "Chest");
|
||||||
break;
|
break;
|
||||||
case ESM::PRT_Groin: //4
|
case ESM::PRT_Groin: //4
|
||||||
groin = insertBoundedPart(mesh, "Groin");
|
groin = insertBoundedPart(mesh, "Groin");
|
||||||
|
@ -494,8 +507,10 @@ bool NpcAnimation::addOrReplaceIndividualPart(int type, int group, int priority,
|
||||||
case ESM::PRT_Skirt: //5
|
case ESM::PRT_Skirt: //5
|
||||||
break;
|
break;
|
||||||
case ESM::PRT_RHand: //6
|
case ESM::PRT_RHand: //6
|
||||||
|
rHand = insertBoundedPart(mesh, "Right Hand");
|
||||||
break;
|
break;
|
||||||
case ESM::PRT_LHand: //7
|
case ESM::PRT_LHand: //7
|
||||||
|
lHand = insertBoundedPart(mesh, "Left Hand");
|
||||||
break;
|
break;
|
||||||
case ESM::PRT_RWrist: //8
|
case ESM::PRT_RWrist: //8
|
||||||
rWrist = insertBoundedPart(mesh, "Right Wrist");
|
rWrist = insertBoundedPart(mesh, "Right Wrist");
|
||||||
|
@ -550,6 +565,7 @@ bool NpcAnimation::addOrReplaceIndividualPart(int type, int group, int priority,
|
||||||
case ESM::PRT_Weapon: //25
|
case ESM::PRT_Weapon: //25
|
||||||
break;
|
break;
|
||||||
case ESM::PRT_Tail: //26
|
case ESM::PRT_Tail: //26
|
||||||
|
tail = insertBoundedPart(mesh, "Tail");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -38,7 +38,11 @@ private:
|
||||||
NifOgre::EntityList lfoot;
|
NifOgre::EntityList lfoot;
|
||||||
NifOgre::EntityList rfoot;
|
NifOgre::EntityList rfoot;
|
||||||
NifOgre::EntityList hair;
|
NifOgre::EntityList hair;
|
||||||
|
NifOgre::EntityList rHand;
|
||||||
|
NifOgre::EntityList lHand;
|
||||||
NifOgre::EntityList head;
|
NifOgre::EntityList head;
|
||||||
|
NifOgre::EntityList chest;
|
||||||
|
NifOgre::EntityList tail;
|
||||||
|
|
||||||
bool isBeast;
|
bool isBeast;
|
||||||
bool isFemale;
|
bool isFemale;
|
||||||
|
|
|
@ -942,7 +942,8 @@ EntityList NIFLoader::createEntities(Ogre::Entity *parent, const std::string &bo
|
||||||
Ogre::Entity *ent = sceneMgr->createEntity(meshes[i].first->getName());
|
Ogre::Entity *ent = sceneMgr->createEntity(meshes[i].first->getName());
|
||||||
if(ent->hasSkeleton())
|
if(ent->hasSkeleton())
|
||||||
{
|
{
|
||||||
if(meshes[i].second.length() < filter.length() || filter.compare(meshes[i].second) != 0)
|
if(meshes[i].second.length() < filter.length() ||
|
||||||
|
meshes[i].second.compare(0, filter.length(), filter) != 0)
|
||||||
{
|
{
|
||||||
sceneMgr->destroyEntity(ent);
|
sceneMgr->destroyEntity(ent);
|
||||||
meshes.erase(meshes.begin()+i);
|
meshes.erase(meshes.begin()+i);
|
||||||
|
|
Loading…
Reference in a new issue