IslePathActor: implement notify, remove usage of this keyword

This commit is contained in:
Joshua Peisach 2024-03-24 21:08:51 -04:00
parent 2e5d54c03e
commit 7b8af8b672
No known key found for this signature in database
GPG Key ID: 41C3D4189AFEDB5A

View File

@ -1,14 +1,16 @@
#include "islepathactor.h" #include "islepathactor.h"
#include "mxnotificationparam.h"
DECOMP_SIZE_ASSERT(IslePathActor, 0x160) DECOMP_SIZE_ASSERT(IslePathActor, 0x160)
// FUNCTION: LEGO1 0x1001a200 // FUNCTION: LEGO1 0x1001a200
IslePathActor::IslePathActor() IslePathActor::IslePathActor()
{ {
this->m_world = NULL; m_world = NULL;
this->m_unk0x13c = 6.0; m_unk0x13c = 6.0;
this->m_unk0x15c = 1.0; m_unk0x15c = 1.0;
this->m_unk0x158 = 0; m_unk0x158 = 0;
} }
// FUNCTION: LEGO1 0x1001a280 // FUNCTION: LEGO1 0x1001a280
@ -25,11 +27,30 @@ void IslePathActor::Destroy(MxBool p_fromDestructor)
} }
} }
// STUB: LEGO1 0x1001a2c0 // FUNCTION: LEGO1 0x1001a2c0
MxLong IslePathActor::Notify(MxParam& p_param) MxLong IslePathActor::Notify(MxParam& p_param)
{ {
// TODO MxLong ret = 0;
return 0;
switch (((MxNotificationParam&) p_param).GetType()) {
case c_notificationType0:
ret = VTable0xd0();
break;
case c_notificationType11:
ret = VTable0xcc();
break;
case c_notificationClick:
ret = VTable0xd4((LegoControlManagerEvent&) p_param);
break;
case c_notificationType18:
ret = VTable0xd8((MxType18NotificationParam&) p_param);
break;
case c_notificationType19:
ret = VTable0xdc((MxType19NotificationParam&) p_param);
break;
}
return ret;
} }
// STUB: LEGO1 0x1001a350 // STUB: LEGO1 0x1001a350