ESSImport: fix loading item stacks in containers

openmw-35
scrawl 10 years ago
parent 5104a5a023
commit 6d5bb57e00

@ -18,7 +18,12 @@ namespace ESSImport
item.mId = contItem.mItem.toString();
item.mCount = contItem.mCount;
if (esm.isNextSub("XIDX"))
// seems that a stack of items can have a set of subrecords for each item? rings0000.ess
// doesn't make any sense to me, if the values were different then the items shouldn't stack in the first place?
// I guess we should double check the stacking logic in OpenMW
for (int i=0;i<std::abs(item.mCount);++i)
{
if (esm.isNextSub("XIDX")) // index in the stack?
esm.skipHSub();
std::string script = esm.getHNOString("SCRI");
@ -40,6 +45,8 @@ namespace ESSImport
item.mCondition = -1;
// FIXME: for Lights, this is actually a float
esm.getHNOT(item.mCondition, "XHLT");
}
mItems.push_back(item);
}

Loading…
Cancel
Save