1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-15 15:49:56 +00:00
openmw-tes3mp/components/esm/loadrace.hpp
2012-04-08 11:51:52 +02:00

68 lines
1.2 KiB
C++

#ifndef _ESM_RACE_H
#define _ESM_RACE_H
#include "record.hpp"
#include "esm_reader.hpp"
#include "esm_writer.hpp"
#include "defs.hpp"
namespace ESM
{
/*
* Race definition
*/
struct Race : public Record
{
struct SkillBonus
{
int skill; // SkillEnum
int bonus;
};
struct MaleFemale
{
int male, female;
};
struct MaleFemaleF
{
float male, female;
};
enum Flags
{
Playable = 0x01,
Beast = 0x02
};
struct RADTstruct
{
// List of skills that get a bonus
SkillBonus bonus[7];
// Attribute values for male/female
MaleFemale strength, intelligence, willpower, agility, speed,
endurance, personality, luck;
// The actual eye level height (in game units) is (probably) given
// as 'height' times 128. This has not been tested yet.
MaleFemaleF height, weight;
int flags; // 0x1 - playable, 0x2 - beast race
}; // Size = 140 bytes
RADTstruct data;
std::string name, description;
SpellList powers;
void load(ESMReader &esm);
void save(ESMWriter &esm);
int getName() { return REC_RACE; }
};
}
#endif