mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-01-19 21:23:52 +00:00
added debug profile record
This commit is contained in:
parent
3f6a7e36d0
commit
30f114873d
4 changed files with 86 additions and 2 deletions
|
@ -41,7 +41,7 @@ add_component_dir (esm
|
||||||
loadnpc loadpgrd loadrace loadregn loadscpt loadskil loadsndg loadsoun loadspel loadsscr loadstat
|
loadnpc loadpgrd loadrace loadregn loadscpt loadskil loadsndg loadsoun loadspel loadsscr loadstat
|
||||||
loadweap records aipackage effectlist spelllist variant variantimp loadtes3 cellref filter
|
loadweap records aipackage effectlist spelllist variant variantimp loadtes3 cellref filter
|
||||||
savedgame journalentry queststate locals globalscript player objectstate cellid cellstate globalmap lightstate inventorystate containerstate npcstate creaturestate dialoguestate statstate
|
savedgame journalentry queststate locals globalscript player objectstate cellid cellstate globalmap lightstate inventorystate containerstate npcstate creaturestate dialoguestate statstate
|
||||||
npcstats creaturestats weatherstate quickkeys fogstate spellstate activespells creaturelevliststate doorstate projectilestate
|
npcstats creaturestats weatherstate quickkeys fogstate spellstate activespells creaturelevliststate doorstate projectilestate debugprofile
|
||||||
aisequence
|
aisequence
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
50
components/esm/debugprofile.cpp
Normal file
50
components/esm/debugprofile.cpp
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
|
||||||
|
#include "debugprofile.hpp"
|
||||||
|
|
||||||
|
#include "esmreader.hpp"
|
||||||
|
#include "esmwriter.hpp"
|
||||||
|
#include "defs.hpp"
|
||||||
|
|
||||||
|
unsigned int ESM::DebugProfile::sRecordId = REC_DBGP;
|
||||||
|
|
||||||
|
void ESM::DebugProfile::load (ESMReader& esm)
|
||||||
|
{
|
||||||
|
mDescription = esm.getHNString ("DESC");
|
||||||
|
mScript = esm.getHNString ("SCRP");
|
||||||
|
|
||||||
|
int default_ = 0;
|
||||||
|
esm.getHNOT (default_, "DEFA");
|
||||||
|
|
||||||
|
mDefault = default_!=0;
|
||||||
|
|
||||||
|
int bypass = 0;
|
||||||
|
esm.getHNOT (bypass, "BYNG");
|
||||||
|
|
||||||
|
mBypassNewGame = bypass!=0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void ESM::DebugProfile::save (ESMWriter& esm) const
|
||||||
|
{
|
||||||
|
esm.writeHNCString ("DESC", mDescription);
|
||||||
|
esm.writeHNCString ("SCRP", mScript);
|
||||||
|
|
||||||
|
if (mDefault)
|
||||||
|
{
|
||||||
|
int default_ = 1;
|
||||||
|
esm.writeHNT ("DEFA", default_);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (mBypassNewGame)
|
||||||
|
{
|
||||||
|
int bypass = 1;
|
||||||
|
esm.writeHNT ("BYNG", bypass);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void ESM::DebugProfile::blank()
|
||||||
|
{
|
||||||
|
mDescription.clear();
|
||||||
|
mScript.clear();
|
||||||
|
mDefault = false;
|
||||||
|
mBypassNewGame = false;
|
||||||
|
}
|
33
components/esm/debugprofile.hpp
Normal file
33
components/esm/debugprofile.hpp
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
#ifndef COMPONENTS_ESM_DEBUGPROFILE_H
|
||||||
|
#define COMPONENTS_ESM_DEBUGPROFILE_H
|
||||||
|
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
namespace ESM
|
||||||
|
{
|
||||||
|
class ESMReader;
|
||||||
|
class ESMWriter;
|
||||||
|
|
||||||
|
struct DebugProfile
|
||||||
|
{
|
||||||
|
static unsigned int sRecordId;
|
||||||
|
|
||||||
|
std::string mId;
|
||||||
|
|
||||||
|
std::string mDescription;
|
||||||
|
|
||||||
|
std::string mScript;
|
||||||
|
|
||||||
|
bool mDefault;
|
||||||
|
|
||||||
|
bool mBypassNewGame;
|
||||||
|
|
||||||
|
void load (ESMReader& esm);
|
||||||
|
void save (ESMWriter& esm) const;
|
||||||
|
|
||||||
|
/// Set record to default state (does not touch the ID).
|
||||||
|
void blank();
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
|
@ -114,7 +114,8 @@ enum RecNameInts
|
||||||
REC_DCOU = FourCC<'D','C','O','U'>::value,
|
REC_DCOU = FourCC<'D','C','O','U'>::value,
|
||||||
|
|
||||||
// format 1
|
// format 1
|
||||||
REC_FILT = 0x544C4946
|
REC_FILT = 0x544C4946,
|
||||||
|
REC_DBGP = FourCC<'D','B','G','P'>::value ///< only used in project files
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue