2013-11-19 09:51:30 +00:00
|
|
|
#ifndef OPENMW_ESM_SAVEDGAME_H
|
|
|
|
#define OPENMW_ESM_SAVEDGAME_H
|
|
|
|
|
|
|
|
#include <vector>
|
|
|
|
#include <string>
|
|
|
|
|
|
|
|
namespace ESM
|
|
|
|
{
|
|
|
|
class ESMReader;
|
|
|
|
class ESMWriter;
|
|
|
|
|
|
|
|
// format 0, saved games only
|
|
|
|
|
|
|
|
struct SavedGame
|
|
|
|
{
|
|
|
|
static unsigned int sRecordId;
|
|
|
|
|
|
|
|
struct TimeStamp
|
|
|
|
{
|
|
|
|
float mGameHour;
|
|
|
|
int mDay;
|
|
|
|
int mMonth;
|
|
|
|
int mYear;
|
|
|
|
};
|
|
|
|
|
|
|
|
std::vector<std::string> mContentFiles;
|
|
|
|
std::string mPlayerName;
|
|
|
|
int mPlayerLevel;
|
2014-03-27 21:32:42 +00:00
|
|
|
|
|
|
|
// ID of class
|
|
|
|
std::string mPlayerClassId;
|
|
|
|
// Name of the class. When using a custom class, the ID is not really meaningful prior
|
|
|
|
// to loading the savegame, so the name is stored separately.
|
2014-03-26 18:56:12 +00:00
|
|
|
std::string mPlayerClassName;
|
2014-03-27 21:32:42 +00:00
|
|
|
|
2013-11-19 09:51:30 +00:00
|
|
|
std::string mPlayerCell;
|
|
|
|
TimeStamp mInGameTime;
|
2013-11-21 09:10:41 +00:00
|
|
|
double mTimePlayed;
|
2013-11-24 14:19:56 +00:00
|
|
|
std::string mDescription;
|
2014-01-24 16:49:16 +00:00
|
|
|
std::vector<char> mScreenshot; // raw jpg-encoded data
|
2013-11-19 09:51:30 +00:00
|
|
|
|
|
|
|
void load (ESMReader &esm);
|
|
|
|
void save (ESMWriter &esm) const;
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif
|