diff --git a/LEGO1/legoactor.h b/LEGO1/legoactor.h index 97cc246c..3a634392 100644 --- a/LEGO1/legoactor.h +++ b/LEGO1/legoactor.h @@ -23,11 +23,11 @@ class LegoActor : public LegoEntity { return !strcmp(name, LegoActor::ClassName()) || LegoEntity::IsA(name); } - virtual float VTable0x50(); // vtable+0x50 - virtual void VTable0x54(float p_unk); // vtable+0x54 - virtual void VTable0x58(float p_unk); // vtable+0x58 - virtual float VTable0x5c(); // vtable+0x5c - virtual undefined VTable0x60(); // vtable+0x60 + virtual float VTable0x50(); // vtable+0x50 + virtual void VTable0x54(float p_unk); // vtable+0x54 + virtual void VTable0x58(float p_unk); // vtable+0x58 + virtual float VTable0x5c(); // vtable+0x5c + virtual undefined VTable0x60(); // vtable+0x60 virtual void VTable0x64(undefined p_unk); // vtable+0x64 private: diff --git a/LEGO1/legoentity.cpp b/LEGO1/legoentity.cpp index 19820154..2a9b4b76 100644 --- a/LEGO1/legoentity.cpp +++ b/LEGO1/legoentity.cpp @@ -3,6 +3,7 @@ #include "define.h" #include "legoomni.h" #include "legoutil.h" +#include "legoworld.h" DECOMP_SIZE_ASSERT(LegoEntity, 0x68) @@ -60,12 +61,12 @@ void LegoEntity::Destroy(MxBool p_fromDestructor) Init(); } -// OFFSET: LEGO1 0x10010880 STUB +// OFFSET: LEGO1 0x10010880 void LegoEntity::SetWorld() { LegoWorld* world = GetCurrentWorld(); if (world != NULL && world != (LegoWorld*) this) { - // TODO: world->AddEntity(this); + world->VTable0x58(this); } } diff --git a/LEGO1/legoentity.h b/LEGO1/legoentity.h index e9ca87fe..c0a16c32 100644 --- a/LEGO1/legoentity.h +++ b/LEGO1/legoentity.h @@ -13,10 +13,7 @@ class LegoEntity : public MxEntity { public: // Inlined at 0x100853f7 - inline LegoEntity() - { - Init(); - } + inline LegoEntity() { Init(); } __declspec(dllexport) virtual ~LegoEntity() override; // vtable+0x0