Pizza: Add/update functions as according to MxCore inheritance

IsleActor::Notify needs to be stubbed
---------

Co-authored-by: Kai Kaufman <ktkaufman@wpi.edu>
This commit is contained in:
Joshua Peisach 2023-07-07 20:46:03 -04:00
parent 1e216eac22
commit b9dd956d5b
2 changed files with 25 additions and 9 deletions

View File

@ -13,11 +13,11 @@ Pizza::Pizza()
} }
// OFFSET: LEGO1 0x1002c7cf STUB // OFFSET: LEGO1 0x1002c7cf STUB
Pizza* Unk1002c7b0(undefined4 p_param) // MxS32 IsleActor::Notify(MxParam *)
{ // {
// FIXME: Stub, a switch function. I think it adjusts some metadata based on a state. We'll understand this more once we get into Pizzeria // // TODO
return new Pizza; // return 0;
} // }
// OFFSET: LEGO1 0x10038100 // OFFSET: LEGO1 0x10038100
Pizza::~Pizza() Pizza::~Pizza()
@ -28,8 +28,8 @@ Pizza::~Pizza()
// OFFSET: LEGO1 0x100388a0 STUB // OFFSET: LEGO1 0x100388a0 STUB
Pizza* Unk100388a0(undefined4* p_param) MxResult Pizza::Tickle()
{ {
// FIXME: Stub, Looks like this function adjusts (or makes?) a new Pizza based on the game state, perhaps PizzaMissionState? // TODO
return new Pizza; return SUCCESS;
} }

View File

@ -3,6 +3,7 @@
#include "decomp.h" #include "decomp.h"
#include "isleactor.h" #include "isleactor.h"
#include "mxcore.h"
#include "mxtypes.h" #include "mxtypes.h"
// VTABLE 0x100d7380 // VTABLE 0x100d7380
@ -13,7 +14,22 @@ class Pizza : public IsleActor
Pizza(); Pizza();
virtual ~Pizza() override; virtual ~Pizza() override;
Pizza* Unk1002c7b0(undefined4 p_param); // TODO: IsleActor::Notify
// virtual MxS32 IsleActor::Notify(MxParam *) override; // vtable+04
virtual MxResult Tickle() override; // vtable+08
// OFFSET: LEGO1 0x10037f90
inline const char *ClassName() const //vtable+0c
{
// 0x100f038c
return "Pizza";
}
// OFFSET: LEGO1 0x10037fa0
inline MxBool Pizza::IsA(const char *name) const override //vtable+10
{
return !strcmp(name, Pizza::ClassName()) || IsleActor::IsA(name);
}
private: private:
undefined4 m_unk80; undefined4 m_unk80;
undefined4 m_unk84; undefined4 m_unk84;