|
|
@ -13,11 +13,6 @@ namespace ESM
|
|
|
|
#pragma pack(push)
|
|
|
|
#pragma pack(push)
|
|
|
|
#pragma pack(1)
|
|
|
|
#pragma pack(1)
|
|
|
|
|
|
|
|
|
|
|
|
/// \brief File header record
|
|
|
|
|
|
|
|
struct Header
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
static const int CurrentFormat = 0; // most recent known format
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
struct Data
|
|
|
|
struct Data
|
|
|
|
{
|
|
|
|
{
|
|
|
|
/* File format version. This is actually a float, the supported
|
|
|
|
/* File format version. This is actually a float, the supported
|
|
|
@ -31,14 +26,6 @@ namespace ESM
|
|
|
|
int records; // Number of records
|
|
|
|
int records; // Number of records
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
// Defines another files (esm or esp) that this file depends upon.
|
|
|
|
|
|
|
|
struct MasterData
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
std::string name;
|
|
|
|
|
|
|
|
uint64_t size;
|
|
|
|
|
|
|
|
int index; // Position of the parent file in the global list of loaded files
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
struct GMDT
|
|
|
|
struct GMDT
|
|
|
|
{
|
|
|
|
{
|
|
|
|
float mCurrentHealth;
|
|
|
|
float mCurrentHealth;
|
|
|
@ -49,6 +36,22 @@ namespace ESM
|
|
|
|
unsigned char unknown2[4];
|
|
|
|
unsigned char unknown2[4];
|
|
|
|
NAME32 mPlayerName;
|
|
|
|
NAME32 mPlayerName;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma pack(pop)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// \brief File header record
|
|
|
|
|
|
|
|
struct Header
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
static const int CurrentFormat = 0; // most recent known format
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Defines another files (esm or esp) that this file depends upon.
|
|
|
|
|
|
|
|
struct MasterData
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
std::string name;
|
|
|
|
|
|
|
|
uint64_t size;
|
|
|
|
|
|
|
|
int index; // Position of the parent file in the global list of loaded files
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
GMDT mGameData; // Used in .ess savegames only
|
|
|
|
GMDT mGameData; // Used in .ess savegames only
|
|
|
|
std::vector<unsigned char> mSCRD; // Used in .ess savegames only, unknown
|
|
|
|
std::vector<unsigned char> mSCRD; // Used in .ess savegames only, unknown
|
|
|
|
std::vector<unsigned char> mSCRS; // Used in .ess savegames only, screenshot
|
|
|
|
std::vector<unsigned char> mSCRS; // Used in .ess savegames only, screenshot
|
|
|
@ -62,7 +65,6 @@ namespace ESM
|
|
|
|
void load (ESMReader &esm);
|
|
|
|
void load (ESMReader &esm);
|
|
|
|
void save (ESMWriter &esm);
|
|
|
|
void save (ESMWriter &esm);
|
|
|
|
};
|
|
|
|
};
|
|
|
|
#pragma pack(pop)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|