Decompile 4 functions in Source/Contents/Messenger/ClientMessenger.cpp
Batch #1817 by Yommy: 4 byte-identical, 0 confirmed by peer review. - fn_05628 EquipmentProperties::CEquipment::GetId: byte-identical - fn_05633 EquipmentProperties::CEquipment::GetProperties: byte-identical - fn_05638 EquipmentProperties::CEquipment::Clear: byte-identical - fn_05642 EquipmentProperties::CEquipment::IsPretend: byte-identical Merged automatically: every function is byte-identical to the original.
This commit is contained in:
parent
ea42262417
commit
97e174c6b0
1 changed files with 69 additions and 0 deletions
|
|
@ -141,6 +141,44 @@ namespace EquipmentProperties {
|
|||
};
|
||||
}
|
||||
|
||||
namespace EquipmentProperties {
|
||||
struct CEquipmentValueHash {
|
||||
std::size_t operator()(int key) const {
|
||||
return key;
|
||||
}
|
||||
};
|
||||
|
||||
struct CEquipmentInfo {
|
||||
/* 0000 */ int unknown_0000;
|
||||
/* 0004 */ std::unordered_map<int, int, CEquipmentValueHash> values;
|
||||
};
|
||||
|
||||
class CEquipment {
|
||||
public:
|
||||
/* 0004 */ int m_id;
|
||||
/* 0008 */ CEquipmentInfo* m_info;
|
||||
/* 000C */ EquipmentPropertyStore m_properties;
|
||||
/* 0034 */ bool m_pretend;
|
||||
|
||||
virtual ~CEquipment();
|
||||
virtual void Load(bool force) = 0;
|
||||
virtual void Clear();
|
||||
virtual int GetType() = 0;
|
||||
virtual int GetValue(const int& key);
|
||||
|
||||
int& GetId();
|
||||
EquipmentPropertyStore& GetProperties();
|
||||
bool IsPretend();
|
||||
};
|
||||
}
|
||||
|
||||
#if defined(_WIN32) && !defined(_WIN64)
|
||||
static_assert(sizeof(EquipmentProperties::CEquipmentInfo) == 0x24);
|
||||
static_assert(offsetof(EquipmentProperties::CEquipment, m_properties) == 0xC);
|
||||
static_assert(offsetof(EquipmentProperties::CEquipment, m_pretend) == 0x34);
|
||||
static_assert(sizeof(EquipmentProperties::CEquipment) == 0x38);
|
||||
#endif
|
||||
|
||||
// GLOBAL: gl_24723
|
||||
int g_resetMessengerRandomStats = 1;
|
||||
|
||||
|
|
@ -211,6 +249,37 @@ EquipmentProperties::CEquipmentPropertiesMgr::~CEquipmentPropertiesMgr() {
|
|||
delete this->store;
|
||||
}
|
||||
|
||||
// OFFSET: 0x0068B6C0
|
||||
|
||||
// OFFSET: 0x0068CE10
|
||||
// FUNCTION: fn_05638
|
||||
void EquipmentProperties::CEquipment::Clear() {
|
||||
this->m_properties.Clear();
|
||||
}
|
||||
|
||||
// OFFSET: 0x0068C020
|
||||
|
||||
// OFFSET: 0x0068C0F0
|
||||
// FUNCTION: fn_05628
|
||||
int& EquipmentProperties::CEquipment::GetId() {
|
||||
return this->m_id;
|
||||
}
|
||||
|
||||
// OFFSET: 0x0068C140
|
||||
// FUNCTION: fn_05633
|
||||
EquipmentPropertyStore& EquipmentProperties::CEquipment::GetProperties() {
|
||||
return this->m_properties;
|
||||
}
|
||||
|
||||
// OFFSET: 0x0068CEF0
|
||||
// FUNCTION: fn_05642
|
||||
bool EquipmentProperties::CEquipment::IsPretend() {
|
||||
if (this->m_pretend == true) {
|
||||
this->Load(false);
|
||||
}
|
||||
return this->m_pretend;
|
||||
}
|
||||
|
||||
#if defined(_WIN32) && !defined(_WIN64)
|
||||
static_assert(sizeof(EquipmentPropertyDefinition) == 0x80);
|
||||
static_assert(sizeof(EquipmentPropertyGroup) == 0x20);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue