mirror of
https://github.com/isledecomp/isle.git
synced 2026-01-28 18:51:16 +00:00
Fix vtable
This commit is contained in:
parent
f0a31294fd
commit
23d33a63b0
@ -76,9 +76,6 @@ class LegoAnimPresenter : public MxVideoPresenter {
|
|||||||
// SYNTHETIC: LEGO1 0x10068650
|
// SYNTHETIC: LEGO1 0x10068650
|
||||||
// LegoAnimPresenter::`scalar deleting destructor'
|
// LegoAnimPresenter::`scalar deleting destructor'
|
||||||
|
|
||||||
// SYNTHETIC: LEGO1 0x10099de0
|
|
||||||
// LegoAnimClassBase::`scalar deleting destructor'
|
|
||||||
|
|
||||||
// VTABLE: LEGO1 0x100db8d8
|
// VTABLE: LEGO1 0x100db8d8
|
||||||
// SIZE 0x18
|
// SIZE 0x18
|
||||||
class LegoAnimClass : public LegoTree {
|
class LegoAnimClass : public LegoTree {
|
||||||
@ -86,9 +83,9 @@ class LegoAnimClass : public LegoTree {
|
|||||||
LegoAnimClass();
|
LegoAnimClass();
|
||||||
virtual ~LegoAnimClass() override;
|
virtual ~LegoAnimClass() override;
|
||||||
|
|
||||||
virtual void Read() override; // vtable+0x08
|
virtual LegoResult Write(LegoStorage* p_storage) override; // vtable+0x08
|
||||||
virtual void Write() override; // vtable+0x0c
|
virtual LegoTreeNodeData* CreateData() override; // vtable+0x0c
|
||||||
virtual MxResult CreateData(LegoMemory* p_stream, MxS32); // vtable+0x10
|
virtual MxResult VTable0x10(LegoMemory* p_stream, MxS32); // vtable+0x10
|
||||||
|
|
||||||
inline MxLong GetUnknown0x8() { return m_unk0x8; }
|
inline MxLong GetUnknown0x8() { return m_unk0x8; }
|
||||||
|
|
||||||
|
|||||||
@ -73,7 +73,7 @@ MxResult LegoAnimPresenter::VTable0x88(MxStreamChunk* p_chunk)
|
|||||||
if (stream.Read(&val3, sizeof(MxS32)) == SUCCESS) {
|
if (stream.Read(&val3, sizeof(MxS32)) == SUCCESS) {
|
||||||
m_unk0x64 = new LegoAnimClass();
|
m_unk0x64 = new LegoAnimClass();
|
||||||
if (m_unk0x64) {
|
if (m_unk0x64) {
|
||||||
if (m_unk0x64->CreateData(&stream, val2) == SUCCESS) {
|
if (m_unk0x64->VTable0x10(&stream, val2) == SUCCESS) {
|
||||||
result = SUCCESS;
|
result = SUCCESS;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -215,19 +215,21 @@ LegoAnimClass::~LegoAnimClass()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// STUB: LEGO1 0x100a0c70
|
// STUB: LEGO1 0x100a0c70
|
||||||
MxResult LegoAnimClass::CreateData(LegoMemory* p_stream, MxS32)
|
MxResult LegoAnimClass::VTable0x10(LegoMemory* p_stream, MxS32)
|
||||||
{
|
{
|
||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
// STUB: LEGO1 0x100a0e30
|
// STUB: LEGO1 0x100a0e30
|
||||||
void LegoAnimClass::Read()
|
LegoResult LegoAnimClass::Write(LegoStorage* p_storage)
|
||||||
{
|
{
|
||||||
// TODO
|
// TODO
|
||||||
|
return SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
// STUB: LEGO1 0x100a1040
|
// STUB: LEGO1 0x100a1040
|
||||||
void LegoAnimClass::Write()
|
LegoTreeNodeData* LegoAnimClass::CreateData()
|
||||||
{
|
{
|
||||||
// TODO
|
// TODO
|
||||||
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -13,9 +13,11 @@ class LegoStorage;
|
|||||||
class LegoTreeNodeData {
|
class LegoTreeNodeData {
|
||||||
public:
|
public:
|
||||||
LegoTreeNodeData() {}
|
LegoTreeNodeData() {}
|
||||||
virtual ~LegoTreeNodeData() {} // vtable+0x0
|
virtual ~LegoTreeNodeData() {}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x10099fe0
|
// FUNCTION: LEGO1 0x10099fe0
|
||||||
virtual LegoResult Read(LegoStorage* p_storage) { return SUCCESS; } // vtable+0x4
|
virtual LegoResult Read(LegoStorage* p_storage) { return SUCCESS; } // vtable+0x4
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x10099ff0
|
// FUNCTION: LEGO1 0x10099ff0
|
||||||
virtual LegoResult Write(LegoStorage* p_storage) { return SUCCESS; } // vtable+0x8
|
virtual LegoResult Write(LegoStorage* p_storage) { return SUCCESS; } // vtable+0x8
|
||||||
|
|
||||||
@ -28,7 +30,7 @@ class LegoTreeNodeData {
|
|||||||
class LegoTreeNode {
|
class LegoTreeNode {
|
||||||
public:
|
public:
|
||||||
LegoTreeNode();
|
LegoTreeNode();
|
||||||
virtual ~LegoTreeNode(); // vtable+0x0
|
virtual ~LegoTreeNode();
|
||||||
LegoTreeNodeData* GetData() { return m_data; }
|
LegoTreeNodeData* GetData() { return m_data; }
|
||||||
void SetData(LegoTreeNodeData* p_data) { m_data = p_data; }
|
void SetData(LegoTreeNodeData* p_data) { m_data = p_data; }
|
||||||
LegoU32 GetNumChildren() { return m_numChildren; }
|
LegoU32 GetNumChildren() { return m_numChildren; }
|
||||||
@ -52,7 +54,7 @@ class LegoTreeNode {
|
|||||||
class LegoTree {
|
class LegoTree {
|
||||||
public:
|
public:
|
||||||
LegoTree();
|
LegoTree();
|
||||||
virtual ~LegoTree(); // vtable+0x0
|
virtual ~LegoTree();
|
||||||
LegoTreeNode* GetRoot() { return m_root; }
|
LegoTreeNode* GetRoot() { return m_root; }
|
||||||
void SetRoot(LegoTreeNode* p_root) { m_root = p_root; }
|
void SetRoot(LegoTreeNode* p_root) { m_root = p_root; }
|
||||||
virtual LegoResult Read(LegoStorage* p_storage); // vtable+0x4
|
virtual LegoResult Read(LegoStorage* p_storage); // vtable+0x4
|
||||||
@ -65,8 +67,10 @@ class LegoTree {
|
|||||||
LegoResult Read(LegoStorage* p_storage, LegoTreeNode*& p_node);
|
LegoResult Read(LegoStorage* p_storage, LegoTreeNode*& p_node);
|
||||||
LegoResult Write(LegoStorage* p_storage, LegoTreeNode* p_node);
|
LegoResult Write(LegoStorage* p_storage, LegoTreeNode* p_node);
|
||||||
void Delete(LegoTreeNode* p_node);
|
void Delete(LegoTreeNode* p_node);
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x10099f70
|
// FUNCTION: LEGO1 0x10099f70
|
||||||
virtual LegoTreeNodeData* CreateData() { return new LegoTreeNodeData(); } // vtable+0xc
|
virtual LegoTreeNodeData* CreateData() { return new LegoTreeNodeData(); } // vtable+0xc
|
||||||
|
|
||||||
LegoTreeNode* m_root; // 0x4
|
LegoTreeNode* m_root; // 0x4
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user