mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-02-20 15:40:32 +00:00
Load ESM4 idle animations correctly for every game
This commit is contained in:
parent
07c85addb2
commit
9ec68e864c
@ -334,8 +334,7 @@ namespace EsmTool
|
||||
readTypedRecord<ESM4::HeadPart>(params, reader);
|
||||
return true;
|
||||
case ESM4::REC_IDLE:
|
||||
// FIXME: ESM4::IdleAnimation::load does not work with Oblivion.esm
|
||||
// readTypedRecord<ESM4::IdleAnimation>(params, reader);
|
||||
readTypedRecord<ESM4::IdleAnimation>(params, reader);
|
||||
return true;
|
||||
break;
|
||||
case ESM4::REC_IDLM:
|
||||
|
@ -51,9 +51,24 @@ void ESM4::IdleAnimation::load(ESM4::Reader& reader)
|
||||
reader.getZString(mEvent);
|
||||
break;
|
||||
case ESM4::SUB_ANAM:
|
||||
reader.getFormId(mParent);
|
||||
reader.getFormId(mPrevious);
|
||||
{
|
||||
if (subHdr.dataSize == 8)
|
||||
{
|
||||
reader.getFormId(mParent);
|
||||
reader.getFormId(mPrevious);
|
||||
}
|
||||
// Animation Group Section. TES4 stores the IDs above in DATA
|
||||
else if (subHdr.dataSize == 1)
|
||||
{
|
||||
uint8_t dummy;
|
||||
reader.get(dummy);
|
||||
}
|
||||
else
|
||||
{
|
||||
reader.skipSubRecordData();
|
||||
}
|
||||
break;
|
||||
}
|
||||
case ESM4::SUB_MODL:
|
||||
reader.getZString(mModel);
|
||||
break;
|
||||
@ -61,7 +76,14 @@ void ESM4::IdleAnimation::load(ESM4::Reader& reader)
|
||||
reader.get(mBoundRadius);
|
||||
break;
|
||||
case ESM4::SUB_CTDA: // formId
|
||||
case ESM4::SUB_DATA: // formId
|
||||
case ESM4::SUB_CTDT:
|
||||
case ESM4::SUB_CIS1:
|
||||
case ESM4::SUB_CIS2:
|
||||
case ESM4::SUB_DATA:
|
||||
case ESM4::SUB_MODD:
|
||||
case ESM4::SUB_MODS:
|
||||
case ESM4::SUB_MODT:
|
||||
case ESM4::SUB_GNAM: // FO4
|
||||
reader.skipSubRecordData();
|
||||
break;
|
||||
default:
|
||||
|
Loading…
x
Reference in New Issue
Block a user