mirror of
https://github.com/zeldaret/st
synced 2026-10-07 05:21:36 -04:00
Decompile overlay 17 (CourseExec Part 1) (#152)
* day 1 * delink overlay 17 * UnkStruct_027e0ce0_30_017 & UnkStruct_027e0ce0_40_017 * ItemManager_017 OK * UnkStruct_027e0ce0_40_Base_94_017 95% * UnkStruct_027e0ce0_017 OK * PlayerLinkActor_017 OK * PlayerLinkActor_A0_20_017 OK * code_020be2ec_017 99% * ActorManager_017 OK * Actor_017 OK * ActorEventIcon_017 OK * code_020be2ec_017 OK * MapObjectManager_017 97% * MapObject_017 OK * MapObjectSwitchStep_017 OK * fix build issues * fix other versions build issues
This commit is contained in:
@@ -12,6 +12,7 @@
|
||||
#include "types.h"
|
||||
|
||||
class MapObjectProfile;
|
||||
class UnkStruct_027e09bc_0C;
|
||||
|
||||
typedef u16 MapObjFlags;
|
||||
enum MapObjFlag_ {
|
||||
@@ -148,10 +149,10 @@ public:
|
||||
/* 08 */ virtual void vfunc_08();
|
||||
/* 0C */ virtual void vfunc_0C();
|
||||
/* 10 */ virtual void vfunc_10();
|
||||
/* 14 */ virtual void vfunc_14();
|
||||
/* 18 */ virtual void vfunc_18(s8 *param1, s8 param2);
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1);
|
||||
/* 18 */ virtual void vfunc_18(s8 *param1);
|
||||
/* 1C */ virtual bool vfunc_1C(ActorRef param1, unk32 param2, VecFx32 *param3);
|
||||
/* 20 */ virtual void vfunc_20();
|
||||
/* 20 */ virtual void vfunc_20(unk32 param1);
|
||||
/* 24 */ virtual void vfunc_24(MapObject *param1, VecFx32 param2);
|
||||
/* 28 */ virtual unk32 vfunc_28(unk32 param1, unk32 param2, unk32 param3);
|
||||
/* 2C */ virtual bool vfunc_2C(VecFx32 *param1);
|
||||
@@ -177,14 +178,51 @@ public:
|
||||
UNSET_FLAG(this->mFlags, MapObjFlag_Alive);
|
||||
}
|
||||
|
||||
// clang-format off
|
||||
/* x & 0x00000001 */ const bool IsAlive() { return GET_FLAG(this->mFlags, MapObjFlag_Alive); }
|
||||
/* x & 0x00000002 */ const bool IsFlag1() { return GET_FLAG(this->mFlags, MapObjFlag_1); }
|
||||
/* x & 0x00000004 */ const bool IsFlag2() { return GET_FLAG(this->mFlags, MapObjFlag_2); }
|
||||
/* x & 0x00000008 */ const bool IsFlag3() { return GET_FLAG(this->mFlags, MapObjFlag_3); }
|
||||
/* x & 0x00000010 */ const bool IsFlag4() { return GET_FLAG(this->mFlags, MapObjFlag_4); }
|
||||
/* x & 0x00000020 */ const bool IsFlag5() { return GET_FLAG(this->mFlags, MapObjFlag_5); }
|
||||
/* x & 0x00000040 */ const bool IsFlag6() { return GET_FLAG(this->mFlags, MapObjFlag_6); }
|
||||
/* x & 0x00000080 */ const bool IsFlag7() { return GET_FLAG(this->mFlags, MapObjFlag_7); }
|
||||
/* x & 0x00000100 */ const bool IsFlag8() { return GET_FLAG(this->mFlags, MapObjFlag_8); }
|
||||
/* x & 0x00000200 */ const bool IsFlag9() { return GET_FLAG(this->mFlags, MapObjFlag_9); }
|
||||
/* x & 0x00000400 */ const bool IsFlag10() { return GET_FLAG(this->mFlags, MapObjFlag_10); }
|
||||
/* x & 0x00000800 */ const bool IsFlag11() { return GET_FLAG(this->mFlags, MapObjFlag_11); }
|
||||
/* x & 0x00001000 */ const bool IsFlag12() { return GET_FLAG(this->mFlags, MapObjFlag_12); }
|
||||
/* x & 0x00002000 */ const bool IsFlag13() { return GET_FLAG(this->mFlags, MapObjFlag_13); }
|
||||
/* x & 0x00004000 */ const bool IsFlag14() { return GET_FLAG(this->mFlags, MapObjFlag_14); }
|
||||
/* x & 0x00008000 */ const bool IsFlag15() { return GET_FLAG(this->mFlags, MapObjFlag_15); }
|
||||
/* x & 0x00010000 */ const bool IsFlag16() { return GET_FLAG(this->mFlags, MapObjFlag_16); }
|
||||
/* x & 0x00020000 */ const bool IsFlag17() { return GET_FLAG(this->mFlags, MapObjFlag_17); }
|
||||
/* x & 0x00040000 */ const bool IsFlag18() { return GET_FLAG(this->mFlags, MapObjFlag_18); }
|
||||
/* x & 0x00080000 */ const bool IsFlag19() { return GET_FLAG(this->mFlags, MapObjFlag_19); }
|
||||
/* x & 0x00100000 */ const bool IsFlag20() { return GET_FLAG(this->mFlags, MapObjFlag_20); }
|
||||
/* x & 0x00200000 */ const bool IsFlag21() { return GET_FLAG(this->mFlags, MapObjFlag_21); }
|
||||
/* x & 0x00400000 */ const bool IsFlag22() { return GET_FLAG(this->mFlags, MapObjFlag_22); }
|
||||
/* x & 0x00800000 */ const bool IsFlag23() { return GET_FLAG(this->mFlags, MapObjFlag_23); }
|
||||
/* x & 0x01000000 */ const bool IsFlag24() { return GET_FLAG(this->mFlags, MapObjFlag_24); }
|
||||
/* x & 0x02000000 */ const bool IsFlag25() { return GET_FLAG(this->mFlags, MapObjFlag_25); }
|
||||
/* x & 0x04000000 */ const bool IsFlag26() { return GET_FLAG(this->mFlags, MapObjFlag_26); }
|
||||
/* x & 0x08000000 */ const bool IsFlag27() { return GET_FLAG(this->mFlags, MapObjFlag_27); }
|
||||
/* x & 0x10000000 */ const bool IsFlag28() { return GET_FLAG(this->mFlags, MapObjFlag_28); }
|
||||
/* x & 0x20000000 */ const bool IsFlag29() { return GET_FLAG(this->mFlags, MapObjFlag_29); }
|
||||
/* x & 0x40000000 */ const bool IsFlag30() { return GET_FLAG(this->mFlags, MapObjFlag_30); }
|
||||
/* x & 0x80000000 */ const bool IsFlag31() { return GET_FLAG(this->mFlags, MapObjFlag_31); }
|
||||
// clang-format on
|
||||
|
||||
MapObject();
|
||||
|
||||
// itcm
|
||||
MapObjectId GetMapObjectId();
|
||||
unk32 func_01fff590(unk32 param2);
|
||||
|
||||
// overlay 0
|
||||
bool func_ov000_0209d114();
|
||||
bool func_ov000_0209d12c();
|
||||
bool func_ov000_0209d144(Vec2s *param1, unk32 param2, unk32 param3);
|
||||
bool func_ov000_0209d144(Vec2s *param1, unk32 param2, UnkStruct_027e09bc_0C *param3);
|
||||
void func_ov000_0209d274(unk32 param1);
|
||||
bool func_ov000_0209d29c(unk32 param1);
|
||||
void func_ov000_0209d2c4(unk32 param1, bool param2);
|
||||
|
||||
@@ -35,7 +35,7 @@ public:
|
||||
MapObjectBombFlower();
|
||||
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 1C */ virtual bool vfunc_1C(ActorRef param1, unk32 param2, VecFx32 *param3) override;
|
||||
/* 28 */ virtual unk32 vfunc_28(unk32 param1, unk32 param2, unk32 param3) override;
|
||||
/* 38 */ virtual void vfunc_38() override;
|
||||
|
||||
@@ -62,8 +62,8 @@ public:
|
||||
/* 04 */ virtual void vfunc_04() override;
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 0C */ virtual void vfunc_0C() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 18 */ virtual void vfunc_18(s8 *param1, s8 param2) override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(s8 *param1) override;
|
||||
/* 28 */ virtual ItemId vfunc_28(unk32 param1, unk32 param2, unk32 param3) override;
|
||||
/* 30 */ virtual ~MapObjectChestBase() override;
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2);
|
||||
|
||||
@@ -88,7 +88,7 @@ public:
|
||||
/* 90 */
|
||||
|
||||
void func_ov031_020fbf10(bool param1, bool param2);
|
||||
void func_ov031_020fcb78(s8 *param1, s8 param2);
|
||||
void func_ov031_020fcb78(s8 *param1);
|
||||
void func_ov031_020fcd40();
|
||||
void func_ov031_020fcf0c(unk32 param1);
|
||||
bool func_ov031_020fcf30();
|
||||
|
||||
@@ -43,8 +43,8 @@ public:
|
||||
|
||||
/* 00 */ virtual bool vfunc_00() override;
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 18 */ virtual void vfunc_18(s8 *param1, s8 param2) override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(s8 *param1) override;
|
||||
/* 28 */ virtual unk32 vfunc_28(unk32 param1, unk32 param2, unk32 param3) override;
|
||||
/* 30 */ virtual ~MapObjectDoorClick() override {}
|
||||
/* 40 */ virtual void vfunc_40() override;
|
||||
|
||||
@@ -60,8 +60,8 @@ public:
|
||||
/* 04 */ virtual void vfunc_04() override;
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 0C */ virtual void vfunc_0C() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 18 */ virtual void vfunc_18(s8 *param1, s8 param2) override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(s8 *param1) override;
|
||||
/* 30 */ virtual ~MapObjectDoorDangerSpawn() override;
|
||||
|
||||
// (MapObject_UnkStruct1_Derived1)
|
||||
|
||||
@@ -34,8 +34,8 @@ public:
|
||||
|
||||
/* 00 */ virtual bool vfunc_00() override;
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 18 */ virtual void vfunc_18(s8 *param1, s8 param2) override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(s8 *param1) override;
|
||||
/* 28 */ virtual unk32 vfunc_28(unk32 param1, unk32 param2, unk32 param3) override;
|
||||
/* 30 */ virtual ~MapObjectDoorKey() override;
|
||||
/* 40 */ virtual void vfunc_40() override;
|
||||
|
||||
@@ -42,8 +42,8 @@ public:
|
||||
// data_ov031_0211527c (MapObject)
|
||||
/* 00 */ virtual bool vfunc_00() override;
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 18 */ virtual void vfunc_18(s8 *param1, s8 param2) override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(s8 *param1) override;
|
||||
/* 30 */ virtual ~MapObjectDoorSwitch() override;
|
||||
/* 40 */ virtual void vfunc_40() override;
|
||||
/* 44 */ virtual void vfunc_44() override;
|
||||
|
||||
@@ -39,7 +39,7 @@ public:
|
||||
|
||||
/* 00 */ virtual bool vfunc_00() override;
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 1C */ virtual bool vfunc_1C(ActorRef param1, unk32 param2, VecFx32 *param3) override;
|
||||
/* 38 */ virtual bool vfunc_38(MapObjState state, unk32 param2);
|
||||
/* 3C */ virtual void vfunc_3C(VecFx32 *param1);
|
||||
|
||||
@@ -66,6 +66,21 @@ public:
|
||||
|
||||
static MapObjectManager *Create();
|
||||
static void Destroy();
|
||||
|
||||
// overlay 5
|
||||
void func_ov005_020b6570(unk32 param1);
|
||||
|
||||
// overlay 17
|
||||
bool func_ov017_020c007c(unk32 param1);
|
||||
void func_ov017_020c00dc(unk32 param1);
|
||||
void func_ov017_020c01c8(void *param1);
|
||||
void func_ov017_020c01cc(unk32 param1);
|
||||
void func_ov017_020c023c(s8 *param1);
|
||||
void func_ov017_020c02ac(volatile unk32 param1, Vec2bCpp param2);
|
||||
void func_ov017_020c02f4(volatile unk32 param1, VecFx32 *param2);
|
||||
unk32 func_ov017_020c050c(unk32 param1, unk32 param2, unk32 param3, unk32 param4);
|
||||
|
||||
static void func_ov017_020c033c(unk32 *param1, MapObjectManager *thisx, const Vec2s *param2, unk32 param3, unk32 param4);
|
||||
};
|
||||
|
||||
extern MapObjectManager *gpMapObjManager;
|
||||
|
||||
@@ -15,7 +15,7 @@ public:
|
||||
MapObjectMiniBlocks();
|
||||
|
||||
/* 00 */ virtual bool vfunc_00() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 30 */ virtual ~MapObjectMiniBlocks() override;
|
||||
};
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ public:
|
||||
MapObjectPot();
|
||||
|
||||
/* 04 */ virtual void vfunc_04() override; // func_ov031_02105088
|
||||
/* 14 */ virtual void vfunc_14() override; // func_ov031_021052cc
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override; // func_ov031_021052cc
|
||||
/* 1C */ virtual bool vfunc_1C(ActorRef param1, unk32 param2, VecFx32 *param3); // func_ov031_021050b4
|
||||
/* 24 */ virtual void vfunc_24(MapObject *param1, VecFx32 param2) override; // func_ov031_02105348
|
||||
/* 3C */ virtual bool vfunc_3C() override; // func_ov031_021053b4
|
||||
|
||||
@@ -39,10 +39,10 @@ public:
|
||||
/* A4 */ UnkSystem5 mUnk_A4;
|
||||
/* C4 */ unk32 mUnk_C4;
|
||||
/* C8 */ STRUCT_PAD(0xC8, 0xE4);
|
||||
/* E4 */ u16 mUnk_E4;
|
||||
/* E4 */ volatile u16 mUnk_E4;
|
||||
/* E6 */ u16 mUnk_E6;
|
||||
/* E8 */ unk16 mUnk_E8;
|
||||
/* EA */ unk8 mUnk_EA;
|
||||
/* EA */ u8 mUnk_EA; // bool?
|
||||
/* EB */ unk8 mUnk_EB;
|
||||
/* EC */
|
||||
|
||||
@@ -50,9 +50,9 @@ public:
|
||||
|
||||
/* 00 */ virtual bool vfunc_00() override;
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 18 */ virtual void vfunc_18(s8 *param1, s8 param2) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(s8 *param1) override;
|
||||
/* 20 */ virtual void vfunc_20(unk32 param1) override;
|
||||
/* 30 */ virtual ~MapObjectSwitchStep() override;
|
||||
|
||||
void func_ov000_0209dda4(void);
|
||||
|
||||
@@ -32,7 +32,7 @@ public:
|
||||
|
||||
/* 00 */ virtual bool vfunc_00() override;
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 1C */ virtual bool vfunc_1C(ActorRef param1, unk32 param2, VecFx32 *param3) override;
|
||||
/* 28 */ virtual unk32 vfunc_28(unk32 param1, unk32 param2, unk32 param3) override;
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ public:
|
||||
/* 00 */ virtual bool vfunc_00() override;
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 0C */ virtual void vfunc_0C() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 1C */ virtual bool vfunc_1C(ActorRef param1, unk32 param2, VecFx32 *param3) override;
|
||||
|
||||
void func_ov063_02161254(unk32 param1);
|
||||
|
||||
@@ -35,7 +35,7 @@ public:
|
||||
|
||||
/* 08 */ virtual void vfunc_08();
|
||||
/* 0C */ virtual void vfunc_0C();
|
||||
/* 0C */ virtual void vfunc_14();
|
||||
/* 0C */ virtual void vfunc_14(unk32 param1);
|
||||
/* 30 */ virtual ~MapObjectUnkPTFL() override;
|
||||
|
||||
// overlay 70
|
||||
|
||||
@@ -38,7 +38,7 @@ public:
|
||||
|
||||
/* 08 */ virtual void vfunc_08();
|
||||
/* 0C */ virtual void vfunc_0C();
|
||||
/* 0C */ virtual void vfunc_14();
|
||||
/* 0C */ virtual void vfunc_14(unk32 param1);
|
||||
/* 30 */ virtual ~MapObjectUnkSAND() override;
|
||||
|
||||
void func_ov031_0210acd4(void);
|
||||
|
||||
@@ -44,7 +44,7 @@ public:
|
||||
/* 04 */ virtual void vfunc_04() override;
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 0C */ virtual void vfunc_0C() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 1C */ virtual bool vfunc_1C(ActorRef param1, unk32 param2, VecFx32 *param3) override;
|
||||
/* 38 */ virtual unk32 vfunc_38();
|
||||
/* 3C */ virtual unk32 vfunc_3C();
|
||||
|
||||
@@ -26,7 +26,7 @@ public:
|
||||
/* 00 */ virtual bool vfunc_00() override; // Init
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 0C */ virtual void vfunc_0C() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 30 */ virtual ~MapObjectUnkSTAT() override;
|
||||
|
||||
void func_ov063_0215f6d0(void);
|
||||
|
||||
@@ -34,7 +34,7 @@ public:
|
||||
/* 00 */ virtual bool vfunc_00() override;
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 0C */ virtual void vfunc_0C() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 1C */ virtual bool vfunc_1C(ActorRef param1, unk32 param2, VecFx32 *param3) override;
|
||||
/* 30 */ virtual ~MapObjectUnkSWHT() override;
|
||||
|
||||
|
||||
@@ -58,7 +58,7 @@ public:
|
||||
|
||||
/* 00 */ virtual bool vfunc_00() override;
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 14 */ virtual void vfunc_14(unk32 param1) override;
|
||||
/* 1C */ virtual bool vfunc_1C(ActorRef param1, unk32 param2, VecFx32 *param3) override;
|
||||
/* 38 */ virtual void vfunc_38();
|
||||
/* 3C */ virtual void vfunc_3C(unk32 param1);
|
||||
|
||||
Reference in New Issue
Block a user