ESSImport: some fixes

openmw-35
scrawl 9 years ago
parent 1d29180e00
commit c354f48a07

@ -15,13 +15,8 @@ namespace ESSImport
esm.getHNOT(scale, "XSCL");
// FIXME: use AiPackageList, need to fix getSubName()
if (esm.isNextSub("AI_W"))
esm.skipHSub();
if (esm.isNextSub("AI_E"))
esm.skipHSub();
if (esm.isNextSub("AI_T"))
esm.skipHSub();
if (esm.isNextSub("AI_F"))
while (esm.isNextSub("AI_W") || esm.isNextSub("AI_E") || esm.isNextSub("AI_T") || esm.isNextSub("AI_F")
|| esm.isNextSub("AI_A"))
esm.skipHSub();
mInventory.load(esm);

@ -7,7 +7,17 @@ namespace ESSImport
void DIAL::load(ESM::ESMReader &esm)
{
esm.getHNT(mIndex, "XIDX");
// See ESM::Dialogue::Type enum, not sure why we would need this here though
int type = 0;
esm.getHNOT(type, "DATA");
// Deleted dialogue in a savefile. No clue what this means...
int deleted = 0;
esm.getHNOT(deleted, "DELE");
mIndex = 0;
// *should* always occur except when the dialogue is deleted, but leaving it optional just in case...
esm.getHNOT(mIndex, "XIDX");
}
}

@ -10,13 +10,8 @@ namespace ESSImport
esm.getHNT(mNPDT, "NPDT");
// FIXME: use AiPackageList, need to fix getSubName()
if (esm.isNextSub("AI_W"))
esm.skipHSub();
if (esm.isNextSub("AI_E"))
esm.skipHSub();
if (esm.isNextSub("AI_T"))
esm.skipHSub();
if (esm.isNextSub("AI_F"))
while (esm.isNextSub("AI_W") || esm.isNextSub("AI_E") || esm.isNextSub("AI_T") || esm.isNextSub("AI_F")
|| esm.isNextSub("AI_A"))
esm.skipHSub();
mInventory.load(esm);

Loading…
Cancel
Save