2012-09-23 18:11:08 +00:00
|
|
|
#ifndef OPENMW_ESM_MISC_H
|
|
|
|
#define OPENMW_ESM_MISC_H
|
Finished ALCH, APPA, BOOK, CLOT, CREC, ENCH, GLOB, INGR, LIGH, MISC, RACE, SKIL, SNDG, SSCR and STAT. Phew!
2010-02-21 12:20:17 +00:00
|
|
|
|
2012-09-17 07:37:50 +00:00
|
|
|
#include <string>
|
|
|
|
|
2022-06-04 14:07:59 +00:00
|
|
|
#include "components/esm/defs.hpp"
|
|
|
|
|
2011-04-08 13:58:21 +00:00
|
|
|
namespace ESM
|
|
|
|
{
|
Finished ALCH, APPA, BOOK, CLOT, CREC, ENCH, GLOB, INGR, LIGH, MISC, RACE, SKIL, SNDG, SSCR and STAT. Phew!
2010-02-21 12:20:17 +00:00
|
|
|
|
2012-09-30 20:51:54 +00:00
|
|
|
class ESMReader;
|
|
|
|
class ESMWriter;
|
|
|
|
|
Finished ALCH, APPA, BOOK, CLOT, CREC, ENCH, GLOB, INGR, LIGH, MISC, RACE, SKIL, SNDG, SSCR and STAT. Phew!
2010-02-21 12:20:17 +00:00
|
|
|
/*
|
|
|
|
* Misc inventory items, basically things that have no use but can be
|
|
|
|
* carried, bought and sold. It also includes keys.
|
|
|
|
*/
|
|
|
|
|
2012-09-30 19:34:53 +00:00
|
|
|
struct Miscellaneous
|
Finished ALCH, APPA, BOOK, CLOT, CREC, ENCH, GLOB, INGR, LIGH, MISC, RACE, SKIL, SNDG, SSCR and STAT. Phew!
2010-02-21 12:20:17 +00:00
|
|
|
{
|
2022-06-04 14:34:23 +00:00
|
|
|
constexpr static RecNameInts sRecordId = REC_MISC;
|
2022-06-04 14:07:59 +00:00
|
|
|
|
2015-06-14 00:31:00 +00:00
|
|
|
/// Return a string descriptor for this record type. Currently used for debugging / error logs only.
|
2021-10-11 22:18:23 +00:00
|
|
|
static std::string_view getRecordType() { return "Miscellaneous"; }
|
2013-09-24 11:17:28 +00:00
|
|
|
|
2011-04-08 13:58:21 +00:00
|
|
|
struct MCDTstruct
|
|
|
|
{
|
2012-09-17 07:37:50 +00:00
|
|
|
float mWeight;
|
|
|
|
int mValue;
|
2022-09-30 10:16:45 +00:00
|
|
|
int mFlags;
|
2011-04-08 13:58:21 +00:00
|
|
|
};
|
2022-09-30 10:16:45 +00:00
|
|
|
|
|
|
|
enum Flags
|
|
|
|
{
|
|
|
|
Key = 0x1 // Assigned as a key in the content file that defined the record
|
|
|
|
};
|
|
|
|
|
2012-09-17 07:37:50 +00:00
|
|
|
MCDTstruct mData;
|
Finished ALCH, APPA, BOOK, CLOT, CREC, ENCH, GLOB, INGR, LIGH, MISC, RACE, SKIL, SNDG, SSCR and STAT. Phew!
2010-02-21 12:20:17 +00:00
|
|
|
|
2021-06-29 13:25:26 +00:00
|
|
|
unsigned int mRecordFlags;
|
2012-10-07 17:24:47 +00:00
|
|
|
std::string mId, mName, mModel, mIcon, mScript;
|
Finished ALCH, APPA, BOOK, CLOT, CREC, ENCH, GLOB, INGR, LIGH, MISC, RACE, SKIL, SNDG, SSCR and STAT. Phew!
2010-02-21 12:20:17 +00:00
|
|
|
|
2015-07-20 14:23:14 +00:00
|
|
|
void load(ESMReader& esm, bool& isDeleted);
|
|
|
|
void save(ESMWriter& esm, bool isDeleted = false) const;
|
2013-05-06 12:10:43 +00:00
|
|
|
|
|
|
|
void blank();
|
|
|
|
///< Set record to default state (does not touch the ID).
|
Finished ALCH, APPA, BOOK, CLOT, CREC, ENCH, GLOB, INGR, LIGH, MISC, RACE, SKIL, SNDG, SSCR and STAT. Phew!
2010-02-21 12:20:17 +00:00
|
|
|
};
|
|
|
|
}
|
|
|
|
#endif
|