1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-01-08 09:37:53 +00:00
OpenMW/components/esm/loadarmo.cpp

51 lines
1.2 KiB
C++

#include "loadarmo.hpp"
namespace ESM
{
void PartReferenceList::load(ESMReader &esm)
{
while (esm.isNextSub("INDX"))
{
PartReference pr;
esm.getHT(pr.part); // The INDX byte
pr.male = esm.getHNOString("BNAM");
pr.female = esm.getHNOString("CNAM");
parts.push_back(pr);
}
}
void PartReferenceList::save(ESMWriter &esm)
{
for (std::vector<PartReference>::iterator it = parts.begin(); it != parts.end(); ++it)
{
esm.writeHNT("INDX", it->part);
esm.writeHNOString("BNAM", it->male);
esm.writeHNOString("CNAM", it->female);
}
}
void Armor::load(ESMReader &esm)
{
model = esm.getHNString("MODL");
name = esm.getHNString("FNAM");
script = esm.getHNOString("SCRI");
esm.getHNT(data, "AODT", 24);
icon = esm.getHNOString("ITEX");
parts.load(esm);
enchant = esm.getHNOString("ENAM");
}
void Armor::save(ESMWriter &esm)
{
esm.writeHNCString("MODL", model);
esm.writeHNCString("FNAM", name);
esm.writeHNOCString("SCRI", script);
esm.writeHNT("AODT", data, 24);
esm.writeHNOCString("ITEX", icon);
parts.save(esm);
esm.writeHNOCString("ENAM", enchant);
}
}