2023-06-29 04:10:08 -04:00
|
|
|
#include "islepathactor.h"
|
2023-08-03 14:10:54 -04:00
|
|
|
|
2024-03-25 07:43:03 -04:00
|
|
|
#include "mxnotificationparam.h"
|
|
|
|
|
2023-08-03 14:10:54 -04:00
|
|
|
DECOMP_SIZE_ASSERT(IslePathActor, 0x160)
|
|
|
|
|
2023-12-06 07:10:45 -05:00
|
|
|
// FUNCTION: LEGO1 0x1001a200
|
2023-08-03 14:10:54 -04:00
|
|
|
IslePathActor::IslePathActor()
|
|
|
|
{
|
2024-03-25 07:43:03 -04:00
|
|
|
m_world = NULL;
|
|
|
|
m_unk0x13c = 6.0;
|
|
|
|
m_unk0x15c = 1.0;
|
|
|
|
m_unk0x158 = 0;
|
2023-08-03 14:10:54 -04:00
|
|
|
}
|
|
|
|
|
2023-12-06 07:10:45 -05:00
|
|
|
// FUNCTION: LEGO1 0x1001a280
|
2024-01-13 15:00:11 -05:00
|
|
|
MxResult IslePathActor::Create(MxDSAction& p_dsAction)
|
2023-10-24 19:38:27 -04:00
|
|
|
{
|
2024-01-13 15:00:11 -05:00
|
|
|
return MxEntity::Create(p_dsAction);
|
2023-10-24 08:37:02 -04:00
|
|
|
}
|
|
|
|
|
2024-01-14 16:28:46 -05:00
|
|
|
// FUNCTION: LEGO1 0x1001a2a0
|
|
|
|
void IslePathActor::Destroy(MxBool p_fromDestructor)
|
|
|
|
{
|
2024-02-01 15:42:10 -05:00
|
|
|
if (!p_fromDestructor) {
|
2024-01-14 16:28:46 -05:00
|
|
|
LegoPathActor::Destroy(FALSE);
|
2024-02-01 15:42:10 -05:00
|
|
|
}
|
2024-01-14 16:28:46 -05:00
|
|
|
}
|
|
|
|
|
2024-03-25 07:43:03 -04:00
|
|
|
// FUNCTION: LEGO1 0x1001a2c0
|
2024-01-20 18:04:46 -05:00
|
|
|
MxLong IslePathActor::Notify(MxParam& p_param)
|
|
|
|
{
|
2024-03-25 07:43:03 -04:00
|
|
|
MxLong ret = 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;
|
2024-01-20 18:04:46 -05:00
|
|
|
}
|
|
|
|
|
2023-12-06 07:10:45 -05:00
|
|
|
// STUB: LEGO1 0x1001a350
|
2023-10-24 08:37:02 -04:00
|
|
|
void IslePathActor::VTable0xe0()
|
|
|
|
{
|
2023-10-24 19:38:27 -04:00
|
|
|
// TODO
|
2023-10-24 08:37:02 -04:00
|
|
|
}
|
|
|
|
|
2023-12-06 07:10:45 -05:00
|
|
|
// STUB: LEGO1 0x1001a3f0
|
2023-10-24 08:37:02 -04:00
|
|
|
void IslePathActor::VTable0xe4()
|
|
|
|
{
|
2023-10-24 19:38:27 -04:00
|
|
|
// TODO
|
2023-10-24 08:37:02 -04:00
|
|
|
}
|
|
|
|
|
2023-12-06 07:10:45 -05:00
|
|
|
// STUB: LEGO1 0x1001b2a0
|
2024-03-18 10:38:02 -04:00
|
|
|
void IslePathActor::VTable0xe8(LegoGameState::Area, MxBool, MxU8)
|
2023-10-24 08:37:02 -04:00
|
|
|
{
|
2023-10-24 19:38:27 -04:00
|
|
|
// TODO
|
2023-10-24 08:37:02 -04:00
|
|
|
}
|
|
|
|
|
2023-12-06 07:10:45 -05:00
|
|
|
// STUB: LEGO1 0x1001b5b0
|
2024-03-26 13:51:52 -04:00
|
|
|
void IslePathActor::VTable0xec(MxMatrix, LegoPathBoundary*, MxBool)
|
2023-10-24 08:37:02 -04:00
|
|
|
{
|
2023-10-24 19:38:27 -04:00
|
|
|
// TODO
|
2023-10-24 08:37:02 -04:00
|
|
|
}
|