1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-02-22 10:39:41 +00:00

Handle case in the editor when actor's bodypart was not found

This commit is contained in:
Andrei Kortunov 2018-11-08 11:47:41 +04:00
parent c114e1278e
commit 0065bccf24

View file

@ -113,17 +113,22 @@ namespace CSMWorld
const std::string ActorAdapter::ActorData::getPart(ESM::PartReferenceType index) const const std::string ActorAdapter::ActorData::getPart(ESM::PartReferenceType index) const
{ {
auto it = mParts.find(index); auto it = mParts.find(index);
if (it == mParts.end() && mRaceData && mRaceData->handlesPart(index)) if (it == mParts.end())
{ {
if (mFemale) if (mRaceData && mRaceData->handlesPart(index))
{ {
// Note: we should use male parts for females as fallback if (mFemale)
const std::string femalePart = mRaceData->getFemalePart(index); {
if (!femalePart.empty()) // Note: we should use male parts for females as fallback
return femalePart; const std::string femalePart = mRaceData->getFemalePart(index);
if (!femalePart.empty())
return femalePart;
}
return mRaceData->getMalePart(index);
} }
return mRaceData->getMalePart(index); return "";
} }
const std::string& partName = it->second.first; const std::string& partName = it->second.first;