EvEmu
0.8.4
11 September 2021
|
InventoryItem for skill. More...
#include "Skill.h"
Public Member Functions | |
~Skill () | |
bool | IsTraining () |
uint8 | GetLevelForSP (uint32 currentSP) |
uint32 | GetSPForLevel (uint8 level) |
uint32 | GetCurrentSP (Character *ch, int64 startTime=0) |
uint32 | GetRemainingSP (Character *ch, int64 curTime=0) |
uint32 | GetTrainingTime (Character *ch, int64 startTime=0) |
bool | SkillPrereqsComplete (Character &ch) |
void | VerifySP () |
void | VerifyAttribs () |
![]() | |
InventoryItem (uint32 _itemID, const ItemType &_type, const ItemData &_data) | |
InventoryItem (const InventoryItem &oth) | |
InventoryItem (InventoryItem &&oth) noexcept | |
InventoryItem & | operator= (const InventoryItem &oth)=delete |
InventoryItem & | operator= (InventoryItem &&oth)=delete |
virtual | ~InventoryItem () noexcept |
virtual ShipItem * | GetShipItem () |
virtual ModuleItem * | GetModuleItem () |
virtual bool | IsShipItem () |
virtual bool | IsModuleItem () |
virtual void | Rename (std::string name) |
Inventory * | GetMyInventory () |
bool | contraband () const |
bool | isSingleton () const |
int32 | quantity () const |
uint32 | itemID () const |
uint32 | ownerID () const |
uint32 | locationID () const |
EVEItemFlags | flag () const |
const GPoint & | position () const |
const ItemType & | type () const |
const std::string & | itemName () const |
const std::string & | customInfo () const |
const char * | name () |
uint16 | typeID () const |
uint16 | groupID () const |
double | radius () const |
uint8 | categoryID () const |
bool | isGlobal () const |
bool | IsOnline () |
void | SetPosition (const GPoint &pos) |
void | SetCustomInfo (const char *ci) |
void | ChangeOwner (uint32 new_owner, bool notify=false) |
void | Move (uint32 new_location=locTemp, EVEItemFlags flag=flagNone, bool notify=false) |
void | Donate (uint32 new_owner=ownerSystem, uint32 new_location=locTemp, EVEItemFlags new_flag=flagNone, bool notify=true) |
void | SendItemChange (uint32 toID, std::map< int32, PyRep * > &changes) |
void | MergeTypesInCargo (ShipItem *pShip, EVEItemFlags flag=flagNone) |
bool | ChangeSingleton (bool singleton, bool notify=false) |
bool | AlterQuantity (int32 qty, bool notify=false) |
bool | SetQuantity (int32 qty, bool notify=false, bool deleteOnZero=true) |
bool | SetFlag (EVEItemFlags flag, bool notify=false) |
void | SetOwner (uint32 ownerID) |
void | SaveItem () |
void | UpdateLocation () |
void | UpdateLocation (uint32 locID) |
virtual void | Delete () |
virtual InventoryItemRef | Split (int32 qty=0, bool notify=true, bool silent=false) |
virtual bool | Merge (InventoryItemRef to_merge, int32 qty=0, bool notify=true) |
virtual void | Relocate (uint32 locID=0, EVEItemFlags flag=flagNone) |
virtual void | AddItem (InventoryItemRef iRef) |
virtual void | RemoveItem (InventoryItemRef iRef) |
double | GetPackagedVolume () |
virtual void | SetPlayer (Client *pClient) |
virtual bool | HasPilot () |
virtual Client * | GetPilot () |
void | ToVirtual (uint32 locationID) |
virtual bool | _Load () |
PyRep * | GetItem () const |
void | GetItemRow (PyPackedRow *into) const |
void | GetItemStatusRow (PyPackedRow *into) const |
void | GetChargeStatusRow (uint32 shipID, PyPackedRow *into) const |
bool | Populate (Rsp_CommonGetInfo_Entry &into) |
PyList * | GetItemInfo () const |
PyObject * | ItemGetInfo () |
PyPackedRow * | GetItemRow () const |
PyPackedRow * | GetItemStatusRow () const |
PyPackedRow * | GetChargeStatusRow (uint32 shipID) const |
bool | SkillCheck (InventoryItemRef refItem) |
void | ClearModifiers () |
void | AddModifier (fxData &data) |
void | RemoveModifier (fxData &data) |
void | ResetAttributes () |
bool | HasReqSkill (const uint16 skillID) |
AttributeMap * | GetAttributeMap () |
int64 | GetTimeStamp () |
void | SetAttribute (uint16 attrID, int num, bool notify=true) |
void | SetAttribute (uint16 attrID, uint32 num, bool notify=true) |
void | SetAttribute (uint16 attrID, int64 num, bool notify=true) |
void | SetAttribute (uint16 attrID, float num, bool notify=true) |
void | SetAttribute (uint16 attrID, double num, bool notify=true) |
void | SetAttribute (uint16 attrID, EvilNumber num, bool notify=true) |
void | MultiplyAttribute (uint16 attrID, EvilNumber num, bool notify=false) |
bool | HasAttribute (const uint16 attrID) const |
bool | HasAttribute (const uint16 attrID, EvilNumber &value) const |
bool | SaveAttributes () |
void | ResetAttribute (uint16 attrID, bool notify=false) |
void | DeleteAttribute (uint16 attrID) |
EvilNumber | GetAttribute (const uint16 attrID) const |
EvilNumber | GetDefaultAttribute (const uint16 attrID) const |
![]() | |
RefObject (size_t initRefCount) | |
Initializes reference count. More... | |
virtual | ~RefObject () |
Destructor; must be virtual. More... | |
size_t | GetCount () |
Static Public Member Functions | |
static SkillRef | Load (uint32 skillID) |
static SkillRef | Spawn (ItemData &data) |
static bool | FitModuleSkillCheck (InventoryItemRef item, CharacterRef ch) |
![]() | |
static uint32 | CreateItemID (ItemData &data) |
static uint32 | CreateTempItemID (ItemData &data) |
static InventoryItemRef | Load (uint32 itemID) |
static InventoryItemRef | SpawnItem (uint32 itemID, const ItemData &data) |
static InventoryItemRef | Spawn (ItemData &data) |
static InventoryItemRef | SpawnTemp (ItemData &data) |
Protected Member Functions | |
Skill (uint32 _skillID, const ItemType &_type, const ItemData &_data) | |
![]() | |
void | IncRef () const |
Increments reference count of object by one. More... | |
void | DecRef () const |
Decrements reference count of object by one. More... | |
Static Protected Member Functions | |
template<class _Ty > | |
static RefPtr< _Ty > | _LoadItem (uint32 skillID, const ItemType &type, const ItemData &data) |
![]() | |
template<class _Ty > | |
static RefPtr< _Ty > | Load (uint32 itemID) |
template<class _Ty > | |
static RefPtr< _Ty > | _Load (uint32 itemID) |
template<class _Ty > | |
static RefPtr< _Ty > | _LoadItem (uint32 itemID, const ItemType &type, const ItemData &data) |
Friends | |
class | InventoryItem |
Additional Inherited Members | |
![]() | |
std::multimap< int8, fxData > | m_modifiers |
![]() | |
Inventory * | pInventory |
uint32 | m_itemID |
AttributeMap * | pAttributeMap |
![]() | |
size_t | mRefCount |
Reference count of instance. More... | |
bool | mDeleted |
Definition at line 42 of file Skill.cpp.
Referenced by _LoadItem().
|
inlinestaticprotected |
Definition at line 98 of file Skill.h.
References _log, ItemType::categoryID(), sConfig, sDataMgr, EVEDB::invCategories::Skill, Skill(), and EvE::traceStack().
|
static |
Definition at line 230 of file Skill.cpp.
References AttrRequiredSkill1, AttrRequiredSkill1Level, AttrRequiredSkill2, AttrRequiredSkill2Level, AttrRequiredSkill3, AttrRequiredSkill3Level, AttrRequiredSkill4, AttrRequiredSkill4Level, AttrRequiredSkill5, AttrRequiredSkill5Level, AttrRequiredSkill6, AttrRequiredSkill6Level, EvilNumber::get_uint32(), InventoryItem::GetAttribute(), Character::GetSkillLevel(), InventoryItem::HasAttribute(), and skillID().
Referenced by ShipItem::VerifyHoldType().
Definition at line 80 of file Skill.cpp.
References _log, AttrSkillLevel, AttrSkillPoints, InventoryItem::flag(), flagSkill, EvilNumber::get_uint32(), InventoryItem::GetAttribute(), GetFileTimeNow(), Character::GetSPPerMin(), EvESkill::MAXSKILLLEVEL, InventoryItem::name(), and EvE::Time::Second.
Referenced by Character::AddToSkillQueue(), Character::CancelSkillInTraining(), Character::LoadPausedSkillQueue(), Character::SaveFullCharacter(), and Character::SkillQueueLoop().
Definition at line 72 of file Skill.cpp.
References AttrSkillTimeConstant, InventoryItem::GetAttribute(), and EvEMath::Skill::LevelForPoints().
Definition at line 112 of file Skill.cpp.
References AttrSkillLevel, AttrSkillPoints, EvilNumber::get_uint32(), InventoryItem::GetAttribute(), Character::GetEndOfTraining(), GetFileTimeNow(), GetSPForLevel(), Character::GetSPPerMin(), EvESkill::MAXSKILLLEVEL, and EvE::Time::Second.
Definition at line 76 of file Skill.cpp.
References AttrSkillTimeConstant, InventoryItem::GetAttribute(), and EvEMath::Skill::PointsAtLevel().
Referenced by Character::AddToSkillQueue(), Character::CancelSkillInTraining(), GetRemainingSP(), GetTrainingTime(), Character::LoadPausedSkillQueue(), Character::SkillQueueLoop(), and VerifySP().
Definition at line 132 of file Skill.cpp.
References AttrSkillLevel, AttrSkillPoints, EvilNumber::get_uint32(), InventoryItem::GetAttribute(), GetFileTimeNow(), GetSPForLevel(), Character::GetSPPerMin(), EvESkill::MAXSKILLLEVEL, and EvE::Time::Second.
bool Skill::IsTraining | ( | ) |
Definition at line 68 of file Skill.cpp.
References InventoryItem::flag(), and flagSkillInTraining.
Loads skill.
[in] | factory | |
[in] | skillID | ID of skill to load. |
Definition at line 47 of file Skill.cpp.
References skillID().
Referenced by Spawn().
bool Skill::SkillPrereqsComplete | ( | Character & | ch | ) |
Definition at line 207 of file Skill.cpp.
References AttrRequiredSkill1, AttrRequiredSkill1Level, AttrRequiredSkill2, AttrRequiredSkill2Level, AttrRequiredSkill3, AttrRequiredSkill3Level, AttrRequiredSkill4, AttrRequiredSkill4Level, EvilNumber::get_uint32(), InventoryItem::GetAttribute(), Character::GetSkillLevel(), InventoryItem::HasAttribute(), and skillID().
Spawns new skill.
[in] | factory | |
[in] | data | Item data of new skill. |
Definition at line 52 of file Skill.cpp.
References InventoryItem::CreateItemID(), RefPtr< X >::get(), Load(), and skillID().
Referenced by InventoryItem::Spawn(), and ItemFactory::SpawnSkill().
void Skill::VerifyAttribs | ( | ) |
Definition at line 154 of file Skill.cpp.
References _log, AttrSkillLevel, AttrSkillPoints, InventoryItem::ChangeSingleton(), evil_number_int, InventoryItem::GetAttribute(), InventoryItem::isSingleton(), InventoryItem::name(), and InventoryItem::SetAttribute().
void Skill::VerifySP | ( | ) |
Definition at line 168 of file Skill.cpp.
References _log, AttrSkillLevel, AttrSkillPoints, EvilZero, InventoryItem::GetAttribute(), GetSPForLevel(), is_log_enabled, EvESkill::MAXSKILLLEVEL, InventoryItem::name(), and InventoryItem::SetAttribute().
|
friend |