EvEmu  0.8.4
11 September 2021
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
CharacterType Class Reference

#include "Character.h"

Inheritance diagram for CharacterType:
Collaboration diagram for CharacterType:

Public Member Functions

uint8 bloodlineID () const
 
const std::string & bloodlineName () const
 
const std::string & description () const
 
const std::string & maleDescription () const
 
const std::string & femaleDescription () const
 
uint32 corporationID () const
 
uint8 perception () const
 
uint8 willpower () const
 
uint8 charisma () const
 
uint8 memory () const
 
uint8 intelligence () const
 
const std::string & shortDescription () const
 
const std::string & shortMaleDescription () const
 
const std::string & shortFemaleDescription () const
 
- Public Member Functions inherited from ItemType
virtual ~ItemType ()
 
uint16 id () const
 
uint16 groupID () const
 
const std::string & groupName () const
 
uint8 categoryID () const
 
float radius () const
 
float mass () const
 
float volume () const
 
float capacity () const
 
uint8 race () const
 
const std::string & name () const
 
const std::string & description () const
 
uint16 portionSize () const
 
double basePrice () const
 
uint32 marketGroupID () const
 
float chanceOfDuplicating () const
 
bool published () const
 
bool refinable () const
 
bool recyclable () const
 
const bool HasAttribute (const uint16 attributeID) const
 
EvilNumber GetAttribute (const uint16 attributeID) const
 
const void CopyAttributes (InventoryItem &itemRef) const
 
bool HasReqSkill (const uint16 skillID) const
 
void GetEffectMap (const int8 state, std::map< uint16, Effect > &effectMap) const
 
uint16 GetDefaultEffect () const
 
bool HasEffect (uint16 effectID) const
 

Static Public Member Functions

static CharacterTypeLoad (uint16 typeID)
 
- Static Public Member Functions inherited from ItemType
static ItemTypeLoad (uint16 typeID)
 

Protected Member Functions

 CharacterType (uint16 _id, uint8 _bloodlineID, const Inv::TypeData &_data, const CharacterTypeData &_charData)
 
- Protected Member Functions inherited from ItemType
 ItemType (uint16 _id, const Inv::TypeData &_data)
 
virtual bool _Load ()
 
void LoadEffects ()
 

Static Protected Member Functions

template<class _Ty >
static _Ty * _LoadType (uint16 typeID, const Inv::TypeData &data)
 
- Static Protected Member Functions inherited from ItemType
template<class _Ty >
static _Ty * Load (uint16 typeID)
 
template<class _Ty >
static _Ty * _Load (uint16 typeID)
 
template<class _Ty >
static _Ty * _LoadType (uint16 typeID, const Inv::TypeData &data)
 

Protected Attributes

uint8 m_bloodlineID
 
std::string m_bloodlineName
 
std::string m_description
 
std::string m_maleDescription
 
std::string m_femaleDescription
 
uint32 m_corporationID
 
uint8 m_perception
 
uint8 m_willpower
 
uint8 m_charisma
 
uint8 m_memory
 
uint8 m_intelligence
 
std::string m_shortDescription
 
std::string m_shortMaleDescription
 
std::string m_shortFemaleDescription
 

Friends

class ItemType
 

Additional Inherited Members

- Public Attributes inherited from ItemType
std::unordered_multimap< int8,
Effect
m_stateFxMap
 

Detailed Description

Class which maintains character type data.

Definition at line 83 of file Character.h.

Constructor & Destructor Documentation

CharacterType::CharacterType ( uint16  _id,
uint8  _bloodlineID,
const Inv::TypeData _data,
const CharacterTypeData _charData 
)
protected

Definition at line 66 of file Character.cpp.

References CharacterTypeData::race, and Inv::TypeData::race.

Referenced by _LoadType().

67 : ItemType(_id, _data),
68  m_bloodlineID(_bloodlineID),
69  m_bloodlineName(_charData.bloodlineName),
70  m_description(_charData.description),
73  m_corporationID(_charData.corporationID),
74  m_perception(_charData.perception),
75  m_willpower(_charData.willpower),
76  m_charisma(_charData.charisma),
77  m_memory(_charData.memory),
78  m_intelligence(_charData.intelligence),
82 {
83  // check for consistency
84  assert(_data.race == _charData.race);
85 }
std::string bloodlineName
Definition: Character.h:62
std::string m_description
Definition: Character.h:151
uint8 m_bloodlineID
Definition: Character.h:148
uint8 intelligence
Definition: Character.h:73
std::string shortDescription
Definition: Character.h:75
friend class ItemType
Definition: Character.h:86
std::string femaleDescription
Definition: Character.h:66
uint8 m_memory
Definition: Character.h:159
uint8 m_perception
Definition: Character.h:156
std::string m_shortDescription
Definition: Character.h:162
std::string description
Definition: Character.h:64
std::string m_shortFemaleDescription
Definition: Character.h:164
uint32 corporationID
Definition: Character.h:67
std::string maleDescription
Definition: Character.h:65
std::string m_shortMaleDescription
Definition: Character.h:163
uint8 m_willpower
Definition: Character.h:157
std::string m_bloodlineName
Definition: Character.h:150
uint8 m_charisma
Definition: Character.h:158
uint32 m_corporationID
Definition: Character.h:154
std::string m_femaleDescription
Definition: Character.h:153
std::string m_maleDescription
Definition: Character.h:152
uint8 m_intelligence
Definition: Character.h:160
std::string shortFemaleDescription
Definition: Character.h:77
std::string shortMaleDescription
Definition: Character.h:76

Here is the caller graph for this function:

Member Function Documentation

template<class _Ty >
static _Ty* CharacterType::_LoadType ( uint16  typeID,
const Inv::TypeData data 
)
inlinestaticprotected

Definition at line 128 of file Character.h.

References _log, bloodlineID(), EVEDB::invGroups::Character, CharacterType(), Inv::TypeData::groupID, sDataMgr, and sItemFactory.

129  {
130  // check we are really loading a character type
131  if (data.groupID != EVEDB::invGroups::Character) {
132  _log( ITEM__ERROR, "Trying to load %s as CharacterType.", sDataMgr.GetGroupName(data.groupID));
133  return nullptr;
134  }
135 
136  // query character type data
137  uint8 bloodlineID(0);
138  CharacterTypeData charData;
139  if (!sItemFactory.db()->GetCharacterType(typeID, bloodlineID, charData) )
140  return nullptr;
141 
142  return new CharacterType( typeID, bloodlineID, data, charData );
143  }
unsigned __int8 uint8
Definition: eve-compat.h:46
#define _log(type, fmt,...)
Definition: logsys.h:124
uint8 bloodlineID() const
Definition: Character.h:93
CharacterType(uint16 _id, uint8 _bloodlineID, const Inv::TypeData &_data, const CharacterTypeData &_charData)
Definition: Character.cpp:66
#define sItemFactory
Definition: ItemFactory.h:165
#define sDataMgr

Here is the call graph for this function:

uint8 CharacterType::bloodlineID ( ) const
inline

Definition at line 93 of file Character.h.

References m_bloodlineID.

Referenced by _LoadType(), and Character::bloodlineID().

93 { return m_bloodlineID; }
uint8 m_bloodlineID
Definition: Character.h:148

Here is the caller graph for this function:

const std::string& CharacterType::bloodlineName ( ) const
inline

Definition at line 95 of file Character.h.

References m_bloodlineName.

95 { return m_bloodlineName; }
std::string m_bloodlineName
Definition: Character.h:150
uint8 CharacterType::charisma ( ) const
inline

Definition at line 103 of file Character.h.

References m_charisma.

103 { return m_charisma; }
uint8 m_charisma
Definition: Character.h:158
uint32 CharacterType::corporationID ( ) const
inline

Definition at line 99 of file Character.h.

References m_corporationID.

99 { return m_corporationID; }
uint32 m_corporationID
Definition: Character.h:154
const std::string& CharacterType::description ( ) const
inline

Definition at line 96 of file Character.h.

References m_description.

96 { return m_description; }
std::string m_description
Definition: Character.h:151
const std::string& CharacterType::femaleDescription ( ) const
inline

Definition at line 98 of file Character.h.

References m_femaleDescription.

98 { return m_femaleDescription; }
std::string m_femaleDescription
Definition: Character.h:153
uint8 CharacterType::intelligence ( ) const
inline

Definition at line 105 of file Character.h.

References m_intelligence.

105 { return m_intelligence; }
uint8 m_intelligence
Definition: Character.h:160
CharacterType * CharacterType::Load ( uint16  typeID)
static

Definition at line 87 of file Character.cpp.

87  {
88  return ItemType::Load<CharacterType>(typeID );
89 }
const std::string& CharacterType::maleDescription ( ) const
inline

Definition at line 97 of file Character.h.

References m_maleDescription.

97 { return m_maleDescription; }
std::string m_maleDescription
Definition: Character.h:152
uint8 CharacterType::memory ( ) const
inline

Definition at line 104 of file Character.h.

References m_memory.

104 { return m_memory; }
uint8 m_memory
Definition: Character.h:159
uint8 CharacterType::perception ( ) const
inline

Definition at line 101 of file Character.h.

References m_perception.

101 { return m_perception; }
uint8 m_perception
Definition: Character.h:156
const std::string& CharacterType::shortDescription ( ) const
inline

Definition at line 107 of file Character.h.

References m_shortDescription.

107 { return m_shortDescription; }
std::string m_shortDescription
Definition: Character.h:162
const std::string& CharacterType::shortFemaleDescription ( ) const
inline

Definition at line 109 of file Character.h.

References m_shortFemaleDescription.

109 { return m_shortFemaleDescription; }
std::string m_shortFemaleDescription
Definition: Character.h:164
const std::string& CharacterType::shortMaleDescription ( ) const
inline

Definition at line 108 of file Character.h.

References m_shortMaleDescription.

108 { return m_shortMaleDescription; }
std::string m_shortMaleDescription
Definition: Character.h:163
uint8 CharacterType::willpower ( ) const
inline

Definition at line 102 of file Character.h.

References m_willpower.

102 { return m_willpower; }
uint8 m_willpower
Definition: Character.h:157

Friends And Related Function Documentation

friend class ItemType
friend

Definition at line 86 of file Character.h.

Member Data Documentation

uint8 CharacterType::m_bloodlineID
protected

Definition at line 148 of file Character.h.

Referenced by bloodlineID().

std::string CharacterType::m_bloodlineName
protected

Definition at line 150 of file Character.h.

Referenced by bloodlineName().

uint8 CharacterType::m_charisma
protected

Definition at line 158 of file Character.h.

Referenced by charisma().

uint32 CharacterType::m_corporationID
protected

Definition at line 154 of file Character.h.

Referenced by corporationID().

std::string CharacterType::m_description
protected

Definition at line 151 of file Character.h.

Referenced by description().

std::string CharacterType::m_femaleDescription
protected

Definition at line 153 of file Character.h.

Referenced by femaleDescription().

uint8 CharacterType::m_intelligence
protected

Definition at line 160 of file Character.h.

Referenced by intelligence().

std::string CharacterType::m_maleDescription
protected

Definition at line 152 of file Character.h.

Referenced by maleDescription().

uint8 CharacterType::m_memory
protected

Definition at line 159 of file Character.h.

Referenced by memory().

uint8 CharacterType::m_perception
protected

Definition at line 156 of file Character.h.

Referenced by perception().

std::string CharacterType::m_shortDescription
protected

Definition at line 162 of file Character.h.

Referenced by shortDescription().

std::string CharacterType::m_shortFemaleDescription
protected

Definition at line 164 of file Character.h.

Referenced by shortFemaleDescription().

std::string CharacterType::m_shortMaleDescription
protected

Definition at line 163 of file Character.h.

Referenced by shortMaleDescription().

uint8 CharacterType::m_willpower
protected

Definition at line 157 of file Character.h.

Referenced by willpower().


The documentation for this class was generated from the following files: