mirror of
https://github.com/zeldaret/st
synced 2026-10-07 13:25:33 -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:
+120
-25
@@ -3,6 +3,7 @@
|
||||
#include "Actor/ActorId.hpp"
|
||||
#include "Actor/ActorProfile.hpp"
|
||||
#include "Actor/ActorRef.hpp"
|
||||
#include "Physics/AABB.hpp"
|
||||
#include "Physics/Cylinder.hpp"
|
||||
#include "System/SysNew.hpp"
|
||||
#include "Unknown/UnkStruct_ov031_Items.hpp"
|
||||
@@ -13,6 +14,9 @@
|
||||
#include "types.h"
|
||||
#include "versions.h"
|
||||
|
||||
class UnkStruct_027e09bc;
|
||||
class UnkStruct_027e09bc_0C;
|
||||
|
||||
class ActorParams {
|
||||
public:
|
||||
/* 00 */ VecFx32 mInitialPos;
|
||||
@@ -72,7 +76,7 @@ enum ActorFlag_ {
|
||||
ActorFlag_12 = FLAG(0, 12),
|
||||
ActorFlag_13 = FLAG(0, 13),
|
||||
ActorFlag_14 = FLAG(0, 14),
|
||||
ActorFlag_15 = FLAG(0, 15),
|
||||
ActorFlag_15 = FLAG(0, 15), // stunned?
|
||||
ActorFlag_16 = FLAG(0, 16),
|
||||
ActorFlag_17 = FLAG(0, 17),
|
||||
ActorFlag_18 = FLAG(0, 18),
|
||||
@@ -91,6 +95,11 @@ enum ActorFlag_ {
|
||||
ActorFlag_31 = FLAG(0, 31),
|
||||
};
|
||||
|
||||
// normal: 0x603B - 0110 0000 0011 1011 - Alive | Visible | Active | Flag_4 | Flag_13 | Flag_14 | Flag 5
|
||||
// out of stun: 0xE03B - 1110 0000 0011 1011 - Alive | Visible | Active | Flag_4 | Flag_13 | Flag_14 | Flag 5 | Flag_15
|
||||
// caught in tornado: 0xE01B - 1110 0000 0001 1011 - Alive | Visible | Active | Flag_4 | Flag_13 | Flag_14 | Flag_15
|
||||
// stunned: 0xA01B - 1010 0000 0001 1011 - Alive | Visible | Active | Flag_4 | Flag_13 | Flag_15
|
||||
|
||||
class Actor_9C {
|
||||
public:
|
||||
/* 00 (vtable) */
|
||||
@@ -120,8 +129,52 @@ public:
|
||||
|
||||
class Actor_vfunc_30 {
|
||||
public:
|
||||
/* 00 */ s8 mUnk_00;
|
||||
/* 01 */ s8 mUnk_01;
|
||||
union UnkStruct {
|
||||
struct {
|
||||
s8 unk_00;
|
||||
s8 unk_01;
|
||||
};
|
||||
u16 data;
|
||||
};
|
||||
|
||||
public:
|
||||
/* 00 */ UnkStruct mUnk_00;
|
||||
/* 02 */ UnkStruct mUnk_02;
|
||||
};
|
||||
|
||||
// ActorStateStunned? seems to related to that
|
||||
class UnkStruct_ActorUnkCANS_224 {
|
||||
public:
|
||||
/* 00 (base) */ UnkStruct_PlayerGet_ec mUnk_00[0x2];
|
||||
/* 08 */ volatile u16 mUnk_08;
|
||||
/* 0A */ u16 mUnk_0A;
|
||||
/* 0C */ u16 mUnk_0C;
|
||||
/* 0E */ u16 mUnk_0E;
|
||||
/* 10 */
|
||||
|
||||
UnkStruct_ActorUnkCANS_224(); // func_ov000_02099820
|
||||
|
||||
~UnkStruct_ActorUnkCANS_224() {
|
||||
this->Destroy();
|
||||
}
|
||||
|
||||
void Destroy() {
|
||||
for (UnkStruct_PlayerGet_ec *ptr = this->mUnk_00; ptr != &this->mUnk_00[ARRAY_LEN(this->mUnk_00)]; ++ptr) {
|
||||
ptr->func_ov000_020a0334();
|
||||
}
|
||||
|
||||
this->mUnk_0A = 0;
|
||||
this->mUnk_08 = 0;
|
||||
}
|
||||
|
||||
void UpdateTimer() {
|
||||
if (this->mUnk_08 < this->mUnk_0A) {
|
||||
this->mUnk_08++;
|
||||
}
|
||||
}
|
||||
|
||||
void func_ov000_020998f0(ActorRef ref, VecFx32 *pPos);
|
||||
void func_ov000_02099a0c();
|
||||
};
|
||||
|
||||
typedef s16 ActorState;
|
||||
@@ -150,9 +203,9 @@ public:
|
||||
/* 4A */ u8 mUnk_4A[2];
|
||||
/* 4C */ ActorState mState;
|
||||
/* 4E */ fx16 mYOffset;
|
||||
/* 50 */ volatile u16 mUnk_50; // timer some actors are using
|
||||
/* 52 */ u16 mUnk_52; // maximum value for above timer
|
||||
/* 54 */ unk32 mUnk_54;
|
||||
/* 50 */ volatile u16 mTimer; // generic timer, used for stunned time, drop expiration, ...
|
||||
/* 52 */ u16 mTimerMax; // maximum value for the above timer
|
||||
/* 54 */ UnkStruct_ActorUnkCANS_224 *mUnk_54;
|
||||
/* 58 */ ActorFlags mFlags[1];
|
||||
/* 5C */ ActorParams mUnk_5C;
|
||||
/* 8C */ ActorRef mRef;
|
||||
@@ -164,24 +217,24 @@ public:
|
||||
/* 08 */ virtual unk16 vfunc_08();
|
||||
/* 0C */ virtual unk8 vfunc_0C();
|
||||
/* 10 */ virtual void vfunc_10(Cylinder *param1);
|
||||
/* 14 */ virtual void vfunc_14();
|
||||
/* 14 */ virtual bool vfunc_14(Cylinder *param1);
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1); // Init?
|
||||
/* 1C */ virtual void vfunc_1C(); // Setup
|
||||
/* 20 */ virtual void vfunc_20(); // Update?
|
||||
/* 24 */ virtual void vfunc_24();
|
||||
/* 28 */ virtual void vfunc_28();
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1);
|
||||
/* 28 */ virtual void vfunc_28(Actor_vfunc_30 *param1);
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1);
|
||||
/* 30 */ virtual void vfunc_30(Actor_vfunc_30 *param1);
|
||||
/* 34 */ virtual unk32 vfunc_34();
|
||||
/* 38 */ virtual bool Grab(ActorGrabParams grabParams);
|
||||
/* 3C */ virtual bool Drop(ActorGrabParams grabParams, const VecFx32 *pVel);
|
||||
/* 40 */ virtual void vfunc_40();
|
||||
/* 44 */ virtual void vfunc_44();
|
||||
/* 48 */ virtual void vfunc_48();
|
||||
/* 48 */ virtual bool vfunc_48(unk32 param1);
|
||||
/* 4C */ virtual ~Actor();
|
||||
/* 54 */
|
||||
|
||||
bool func_01fff5d0(unk32 param1, unk32 param2);
|
||||
bool func_01fff5d0(Actor_vfunc_30 *param1, unk32 param2);
|
||||
|
||||
void ResetFlags() {
|
||||
*(u32 *) this->mFlags = 0;
|
||||
@@ -191,17 +244,48 @@ public:
|
||||
UNSET_FLAG(this->mFlags, ActorFlag_Alive);
|
||||
}
|
||||
|
||||
bool IsAlive() {
|
||||
return GET_FLAG(this->mFlags, ActorFlag_Alive);
|
||||
}
|
||||
// clang-format off
|
||||
/* x & 0x00000001 */ const bool IsAlive() { return GET_FLAG(this->mFlags, ActorFlag_Alive); }
|
||||
/* x & 0x00000002 */ const bool IsVisible() { return GET_FLAG(this->mFlags, ActorFlag_Visible); }
|
||||
/* x & 0x00000004 */ const bool IsFlag2() { return GET_FLAG(this->mFlags, ActorFlag_2); }
|
||||
/* x & 0x00000008 */ const bool IsActive() { return GET_FLAG(this->mFlags, ActorFlag_Active); }
|
||||
/* x & 0x00000010 */ const bool IsFlag4() { return GET_FLAG(this->mFlags, ActorFlag_4); }
|
||||
/* x & 0x00000020 */ const bool IsFlag5() { return GET_FLAG(this->mFlags, ActorFlag_5); }
|
||||
/* x & 0x00000040 */ const bool IsFlag6() { return GET_FLAG(this->mFlags, ActorFlag_6); }
|
||||
/* x & 0x00000080 */ const bool IsFlag7() { return GET_FLAG(this->mFlags, ActorFlag_7); }
|
||||
/* x & 0x00000100 */ const bool IsGrabbed() { return GET_FLAG(this->mFlags, ActorFlag_Grabbed); }
|
||||
/* x & 0x00000200 */ const bool IsFlag9() { return GET_FLAG(this->mFlags, ActorFlag_9); }
|
||||
/* x & 0x00000400 */ const bool IsInteracting() { return GET_FLAG(this->mFlags, ActorFlag_Interacting); }
|
||||
/* x & 0x00000800 */ const bool IsFlag11() { return GET_FLAG(this->mFlags, ActorFlag_11); }
|
||||
/* x & 0x00001000 */ const bool IsFlag12() { return GET_FLAG(this->mFlags, ActorFlag_12); }
|
||||
/* x & 0x00002000 */ const bool IsFlag13() { return GET_FLAG(this->mFlags, ActorFlag_13); }
|
||||
/* x & 0x00004000 */ const bool IsFlag14() { return GET_FLAG(this->mFlags, ActorFlag_14); }
|
||||
/* x & 0x00008000 */ const bool IsFlag15() { return GET_FLAG(this->mFlags, ActorFlag_15); }
|
||||
/* x & 0x00010000 */ const bool IsFlag16() { return GET_FLAG(this->mFlags, ActorFlag_16); }
|
||||
/* x & 0x00020000 */ const bool IsFlag17() { return GET_FLAG(this->mFlags, ActorFlag_17); }
|
||||
/* x & 0x00040000 */ const bool IsFlag18() { return GET_FLAG(this->mFlags, ActorFlag_18); }
|
||||
/* x & 0x00080000 */ const bool IsFlag19() { return GET_FLAG(this->mFlags, ActorFlag_19); }
|
||||
/* x & 0x00100000 */ const bool IsFlag20() { return GET_FLAG(this->mFlags, ActorFlag_20); }
|
||||
/* x & 0x00200000 */ const bool IsFlag21() { return GET_FLAG(this->mFlags, ActorFlag_21); }
|
||||
/* x & 0x00400000 */ const bool IsFlag22() { return GET_FLAG(this->mFlags, ActorFlag_22); }
|
||||
/* x & 0x00800000 */ const bool IsFlag23() { return GET_FLAG(this->mFlags, ActorFlag_23); }
|
||||
/* x & 0x01000000 */ const bool IsFlag24() { return GET_FLAG(this->mFlags, ActorFlag_24); }
|
||||
/* x & 0x02000000 */ const bool IsFlag25() { return GET_FLAG(this->mFlags, ActorFlag_25); }
|
||||
/* x & 0x04000000 */ const bool IsFlag26() { return GET_FLAG(this->mFlags, ActorFlag_26); }
|
||||
/* x & 0x08000000 */ const bool IsFlag27() { return GET_FLAG(this->mFlags, ActorFlag_27); }
|
||||
/* x & 0x10000000 */ const bool IsFlag28() { return GET_FLAG(this->mFlags, ActorFlag_28); }
|
||||
/* x & 0x20000000 */ const bool IsFlag29() { return GET_FLAG(this->mFlags, ActorFlag_29); }
|
||||
/* x & 0x40000000 */ const bool IsFlag30() { return GET_FLAG(this->mFlags, ActorFlag_30); }
|
||||
/* x & 0x80000000 */ const bool IsFlag31() { return GET_FLAG(this->mFlags, ActorFlag_31); }
|
||||
// clang-format on
|
||||
|
||||
Actor();
|
||||
|
||||
ActorId GetActorId();
|
||||
|
||||
bool IsTimerOut() {
|
||||
if (this->mUnk_50 < this->mUnk_52) {
|
||||
this->mUnk_50++;
|
||||
if (this->mTimer < this->mTimerMax) {
|
||||
this->mTimer++;
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -237,6 +321,7 @@ public:
|
||||
void func_ov000_0209862c(unk32 param1);
|
||||
bool func_ov000_020986fc(unk32 param1);
|
||||
void func_ov000_020989e0();
|
||||
void func_ov000_02098a18(Cylinder *param1);
|
||||
bool func_ov000_02098a60(unk32 param1);
|
||||
void func_ov000_02098a88(unk32 param1, unk32 param2);
|
||||
void func_ov000_0209a008(unk32 param1, fx16 param2);
|
||||
@@ -247,14 +332,29 @@ public:
|
||||
|
||||
// overlay 17
|
||||
bool func_ov017_020beeec(unk32 param1);
|
||||
void func_ov017_020bef88(Actor_vfunc_30 *param1, void *param2, unk32 param3);
|
||||
bool func_ov017_020bef4c(unk32 param1);
|
||||
void func_ov017_020bef88(Actor_vfunc_30 *param1, UnkStruct_ov019_020d24c8_28_258_00 *param2, unk32 param3);
|
||||
void func_ov017_020bf024(Actor_vfunc_30 *param1);
|
||||
void func_ov017_020bf050(Actor_9C *param1, unk32 param2);
|
||||
void func_ov017_020bf178(Actor_9C *param1, unk32 param2);
|
||||
void func_ov017_020bf284(VecFx32 *param1, VecFx32 param2);
|
||||
void func_ov017_020bf2d8(Actor_9C *param1, unk32 param2);
|
||||
void func_ov017_020bf3e0(unk32 param1, fx32 param2);
|
||||
void func_ov017_020bf5c4(VecFx32 *param1, unk32 param2, unk32 param3, unk32 param4, unk32 param5);
|
||||
void func_ov017_020bf4b0(unk32 param1);
|
||||
void func_ov017_020bf574(unk32 param1, unk32 param2);
|
||||
void func_ov017_020bf5c4(VecFx32 *param1, unk32 param2, unk32 param3, unk32 param4, s16 param5);
|
||||
void func_ov017_020bf634(const VecFx32 *param1, u16 param2, unk32 param3);
|
||||
void func_ov017_020bf688();
|
||||
void func_ov017_020bf710(UnkStruct_ActorUnkCANS_224 *param1, const VecFx32 *param2, u16 param3);
|
||||
void func_ov017_020bf7a8();
|
||||
void func_ov017_020bf894(UnkStruct_ActorUnkCANS_224 *param1);
|
||||
void func_ov017_020bf99c();
|
||||
void func_ov017_020bf9c8(Actor *param1);
|
||||
void func_ov017_020bfa50(VecFx32 *param1, unk32 param2);
|
||||
void func_ov017_020bfad4();
|
||||
void func_ov017_020bfb18(Actor_9C *param1);
|
||||
bool func_ov017_020bfd9c(Vec2s *param1, unk32 param2, UnkStruct_027e09bc_0C *param3,
|
||||
AABB *param4); //! TODO: param4's type not confirmed but probably correct
|
||||
|
||||
// overlay 71 (might be temporary)
|
||||
void func_ov071_021540ac(unk32 param1);
|
||||
@@ -308,7 +408,6 @@ public:
|
||||
/* 10 */
|
||||
};
|
||||
|
||||
class UnkStruct_ActorUnkCANS_224;
|
||||
class Actor_Derived2 : public Actor {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
@@ -326,16 +425,12 @@ public:
|
||||
/* 4C */ WEAK virtual ~Actor_Derived2() {}
|
||||
/* 54 */ virtual void vfunc_54(unk32 param1);
|
||||
|
||||
void func_ov000_020990c0(Actor_9C *param2, unk32 param3, unk32 param4);
|
||||
void func_ov000_020990c0(Actor_9C *param1, unk32 param2, unk32 param3);
|
||||
void func_ov000_020992dc();
|
||||
unk32 func_ov000_02099450(void *param2, VecFx32 *param3, unk32 param4, u16 param5);
|
||||
unk32 func_ov000_02099450(UnkStruct_ActorUnkCANS_224 *param1, VecFx32 *param2, unk32 param3, u16 param4);
|
||||
void func_ov000_020994a0();
|
||||
void func_ov000_020997c4(unk32 param1);
|
||||
void func_ov000_02098f34(VecFx32 *);
|
||||
|
||||
unk32 func_ov017_020bef4c(unk32 param1);
|
||||
void func_ov017_020bf178(Actor_9C *param2, unk32 param3);
|
||||
void func_ov017_020bf894(UnkStruct_ActorUnkCANS_224 *param1);
|
||||
};
|
||||
|
||||
extern UnkStruct_ov000_020b539c data_ov000_020b539c_eur;
|
||||
|
||||
@@ -106,7 +106,7 @@ public:
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 24 */ virtual void vfunc_24() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 38 */ virtual bool Grab(ActorGrabParams grabParams) override;
|
||||
/* 3C */ virtual bool Drop(ActorGrabParams grabParams, const VecFx32 *pVel) override;
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ class ActorEventIcon : public Actor {
|
||||
public:
|
||||
/* 000 (base) */
|
||||
/* 094 */ CellAnimObject mUnk_094; // event icon
|
||||
/* 10C */ unk16 mUnk_10C;
|
||||
/* 10C */ u16 mUnk_10C;
|
||||
/* 110 */ unk16 mUnk_10E; // pad?
|
||||
|
||||
ActorEventIcon();
|
||||
@@ -21,7 +21,11 @@ public:
|
||||
/* 30 */ virtual void vfunc_30(Actor_vfunc_30 *param1) override;
|
||||
/* 4C */ virtual ~ActorEventIcon() override;
|
||||
|
||||
// overlay 0
|
||||
void func_ov000_0209c014(void);
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020c002c();
|
||||
};
|
||||
|
||||
class ActorProfileEventIcon : public ActorProfile {
|
||||
|
||||
@@ -77,7 +77,7 @@ public:
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 30 */ virtual void vfunc_30(Actor_vfunc_30 *param1) override;
|
||||
/* 4C */ virtual ~ActorFleeingSpinut() override;
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@ public:
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 4C */ virtual ~ActorHeart() override {};
|
||||
|
||||
void func_ov031_020f0750();
|
||||
|
||||
@@ -84,7 +84,7 @@ public:
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 4C */ virtual ~ActorItemBoomerang() override;
|
||||
|
||||
void SetState(ActorState state);
|
||||
|
||||
@@ -73,7 +73,7 @@ public:
|
||||
ActorItemDrop();
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 24 */ virtual void vfunc_24() override;
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@ public:
|
||||
|
||||
/* 18 */ bool vfunc_18(unk32 param1);
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 5C */ virtual void vfunc_5C(ActorState state) override;
|
||||
|
||||
void func_ov031_020f11a8();
|
||||
|
||||
@@ -53,7 +53,7 @@ public:
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 24 */ virtual void vfunc_24() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
|
||||
void SetState(ActorState state);
|
||||
void func_ov031_020e5d18(unk32 param1);
|
||||
|
||||
@@ -119,7 +119,7 @@ public:
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
|
||||
void func_ov032_0211e0c0();
|
||||
void func_ov032_0211e0d4(s16 param1, unk32 param2);
|
||||
|
||||
@@ -11,6 +11,9 @@
|
||||
class EntranceInfo;
|
||||
|
||||
class ActorManager : public AutoInstance<ActorManager> {
|
||||
public:
|
||||
typedef void (*UnkCallback1)(Actor *, Actor_vfunc_30 *);
|
||||
|
||||
public:
|
||||
/* 00 */ Actor **mActorTable;
|
||||
/* 04 */ Actor **mActorTableEnd;
|
||||
@@ -18,9 +21,9 @@ public:
|
||||
/* 0C */ unk16 mActorCount;
|
||||
/* 0E */ unk16 mNextActorId;
|
||||
/* 10 */ unk8 mUnk_10;
|
||||
/* 10 */ unk8 mUnk_11;
|
||||
/* 10 */ unk8 mUnk_12;
|
||||
/* 10 */ unk8 mUnk_13;
|
||||
/* 11 */ unk8 mUnk_11;
|
||||
/* 12 */ unk8 mUnk_12;
|
||||
/* 13 */ unk8 mUnk_13;
|
||||
/* 14 */ UnkStruct_ov019_020d24c8_28_258_00 mUnk_14;
|
||||
/* 1C */ unk32 mUnk_1C;
|
||||
/* 20 */ unk8 mUnk_20;
|
||||
@@ -40,7 +43,7 @@ public:
|
||||
~ActorManager();
|
||||
|
||||
// itcm
|
||||
void func_01fff2fc(void (*callback)(Actor *, u16), unk32 param2);
|
||||
void func_01fff2fc(UnkCallback1 callback, void *param2);
|
||||
Actor **func_01fff350(UnkStruct_ov000_020b3000_Base *param1, Actor **ppActorTable);
|
||||
Actor *func_01fff3b4(ActorRef ref);
|
||||
|
||||
@@ -65,6 +68,18 @@ public:
|
||||
static bool func_ov001_020bb728(ActorId actorId);
|
||||
static void func_ov001_020bb824();
|
||||
static void func_ov001_020bb844();
|
||||
|
||||
// overlay 5
|
||||
void func_ov005_020b66a4(unk32 param1);
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020becd8(unk32 param1);
|
||||
|
||||
static void func_ov017_020bee20(Actor *pActor, Actor_vfunc_30 *param2);
|
||||
static void func_ov017_020bee64(Actor *pActor, Actor_vfunc_30 *param2);
|
||||
static void func_ov017_020bee84(Actor *pActor, Actor_vfunc_30 *param2);
|
||||
static void func_ov017_020beea4(Actor *pActor, Actor_vfunc_30 *param2);
|
||||
static void func_ov017_020beecc(Actor *pActor, Actor_vfunc_30 *param2);
|
||||
};
|
||||
|
||||
extern ActorManager *gpActorManager;
|
||||
|
||||
@@ -88,7 +88,7 @@ public:
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 5C */ virtual void vfunc_5C(ActorState state) override;
|
||||
|
||||
void func_ov031_020f0cf0();
|
||||
|
||||
@@ -15,7 +15,7 @@ public:
|
||||
/* 04 */ Cylinder mUnk_04;
|
||||
/* 14 */ unk8 mUnk_14;
|
||||
/* 15 */ bool mUnk_15;
|
||||
/* 16 */ unk8 mUnk_16;
|
||||
/* 16 */ unk8 mUnk_16[1]; //! TODO: at least one element
|
||||
/* 17 */ unk8 mUnk_17;
|
||||
/* 18 */ unk8 mUnk_18;
|
||||
/* 19 */ unk8 mUnk_19;
|
||||
|
||||
@@ -70,6 +70,49 @@ struct ActorRef {
|
||||
const u32 Get32() const {
|
||||
return this->data;
|
||||
}
|
||||
|
||||
const u16 GetTypeIndex1() {
|
||||
if (this->type_index == REF_TYPE_INDEX(ActorRefType_0, 0x101)) {
|
||||
return 0x00;
|
||||
}
|
||||
|
||||
return this->unk_id;
|
||||
}
|
||||
|
||||
const bool HasTypeIndexValue(u16 value) {
|
||||
return this->type_index == value;
|
||||
}
|
||||
|
||||
const bool UnkCheck1() {
|
||||
bool ret = true;
|
||||
|
||||
if (this->type_index != REF_TYPE_INDEX(ActorRefType_0, 0x100) &&
|
||||
this->type_index != REF_TYPE_INDEX(ActorRefType_0, 0x101)) {
|
||||
ret = false;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
const bool UnkCheck2() {
|
||||
bool ret = false;
|
||||
|
||||
if (this->UnkCheck1() && this->GetTypeIndex1() == 0x01) {
|
||||
ret = true;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
const bool UnkCheck3(u16 value) {
|
||||
BOOL ret = false;
|
||||
|
||||
if (this->HasTypeIndexValue(value) && (this->unk_id == 1 || this->unk_id == 3)) {
|
||||
ret = true;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
};
|
||||
|
||||
// for arrays
|
||||
|
||||
@@ -81,9 +81,9 @@ public:
|
||||
|
||||
ActorRollingStone();
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override; // func_ov031_020f869c
|
||||
/* 20 */ virtual void vfunc_20() override; // func_ov031_020f878c
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override; // func_ov031_020f8948
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override; // func_ov031_020f869c
|
||||
/* 20 */ virtual void vfunc_20() override; // func_ov031_020f878c
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override; // func_ov031_020f8948
|
||||
/* 54 */
|
||||
|
||||
bool IsInternalTimerOut1() {
|
||||
|
||||
@@ -71,7 +71,7 @@ public:
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 4C */ virtual ~ActorRupee() override;
|
||||
|
||||
void func_ov031_020e8fec();
|
||||
|
||||
@@ -130,7 +130,7 @@ public:
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 24 */ virtual void vfunc_24() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 4C */ virtual ~ActorShotArrow() override;
|
||||
|
||||
void func_ov031_020f1868();
|
||||
|
||||
@@ -130,7 +130,7 @@ public:
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 1C */ virtual void vfunc_1C() override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 4C */ virtual ~ActorSpinut() override;
|
||||
/* 54 */ virtual void vfunc_54(unk32 param1) override;
|
||||
|
||||
@@ -167,7 +167,7 @@ public:
|
||||
void func_ov032_0211b190(s32 param1, s32 param2);
|
||||
void func_ov032_0211b1e0();
|
||||
void func_ov032_0211b298();
|
||||
static void func_ov032_0211b37c(ActorSpinut *, u16 param1);
|
||||
static void func_ov032_0211b37c(Actor *thisx, Actor_vfunc_30 *param1);
|
||||
void func_ov032_0211b3b0();
|
||||
};
|
||||
|
||||
|
||||
@@ -112,7 +112,7 @@ public:
|
||||
/* 1C */ virtual void vfunc_1C() override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 24 */ virtual void vfunc_24() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 30 */ virtual void vfunc_30(Actor_vfunc_30 *param1) override;
|
||||
|
||||
void func_ov071_0215f7f4(ActorState state);
|
||||
|
||||
@@ -90,27 +90,6 @@ public:
|
||||
/* 04 */ virtual unk32 vfunc_04(ActorRef param1, unk32 param2, unk32 param3, unk32 *param4) override;
|
||||
};
|
||||
|
||||
class UnkStruct_ActorUnkCANS_224 {
|
||||
public:
|
||||
/* 00 (base) */ UnkStruct_PlayerGet_ec mUnk_00[0x2];
|
||||
/* 08 */ u16 mUnk_08;
|
||||
/* 0A */ u16 mUnk_0A;
|
||||
/* 0C */ STRUCT_PAD(0x0C, 0x10);
|
||||
/* 10 */
|
||||
|
||||
UnkStruct_ActorUnkCANS_224(); // func_ov000_02099820
|
||||
|
||||
~UnkStruct_ActorUnkCANS_224() {
|
||||
for (UnkStruct_PlayerGet_ec *ptr = this->mUnk_00; ptr != this->mUnk_00 + ARRAY_LEN(this->mUnk_00); ++ptr) {
|
||||
ptr->func_ov000_020a0334();
|
||||
}
|
||||
this->mUnk_0A = 0x0;
|
||||
this->mUnk_08 = 0x0;
|
||||
}
|
||||
|
||||
void func_ov000_02099a0c();
|
||||
};
|
||||
|
||||
class ActorUnkCANS : public Actor_Derived2 {
|
||||
public:
|
||||
/* 000 (base) */
|
||||
@@ -146,7 +125,7 @@ public:
|
||||
/* 1C */ virtual void vfunc_1C(void) override;
|
||||
/* 20 */ virtual void vfunc_20(void) override;
|
||||
/* 24 */ virtual void vfunc_24(void) override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
|
||||
void func_ov063_02158424(void);
|
||||
void func_ov063_02158448(unk32 param1);
|
||||
|
||||
@@ -89,7 +89,7 @@ public:
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 24 */ virtual void vfunc_24() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
|
||||
void func_ov063_0215ab70(void);
|
||||
void func_ov063_0215aba4(void);
|
||||
|
||||
@@ -21,7 +21,7 @@ public:
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 24 */ virtual void vfunc_24() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 54 */ virtual void vfunc_54(unk32 param1);
|
||||
};
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@ public:
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 54 */ virtual void vfunc_54(unk32 param1);
|
||||
|
||||
void func_ov031_020fb988();
|
||||
|
||||
@@ -15,7 +15,7 @@ public:
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
|
||||
void func_ov031_020f61a0();
|
||||
void func_ov031_020f61f0();
|
||||
|
||||
@@ -29,7 +29,7 @@ public:
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20(void) override;
|
||||
/* 24 */ virtual void vfunc_24(void) override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
|
||||
void func_ov063_0215f3d4(void);
|
||||
void func_ov063_0215f500(void);
|
||||
|
||||
@@ -20,6 +20,6 @@ public:
|
||||
/* 1C */ virtual void vfunc_1C() override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 24 */ virtual void vfunc_24() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 58 */ virtual G3d_Model *vfunc_58() = 0;
|
||||
};
|
||||
|
||||
@@ -15,7 +15,7 @@ public:
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 1C */ virtual void vfunc_1C() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
};
|
||||
|
||||
class ActorProfileUnkRMTG : public ActorProfile_Derived1 {
|
||||
|
||||
@@ -28,7 +28,7 @@ public:
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 38 */ virtual bool Grab(ActorGrabParams param1) override;
|
||||
/* 38 */ virtual bool Drop(ActorGrabParams param1, const VecFx32 *param2) override;
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@ public:
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 24 */ virtual void vfunc_24() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
|
||||
void func_ov031_020e6d48();
|
||||
void func_ov031_020e6d80(unk32 param1);
|
||||
|
||||
@@ -16,7 +16,7 @@ public:
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
};
|
||||
|
||||
class ActorProfileUnkSWCH : public ActorProfile {
|
||||
|
||||
@@ -47,7 +47,7 @@ public:
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 24 */ virtual void vfunc_24() override;
|
||||
/* 30 */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 30 */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 34 */ virtual void vfunc_30(Actor_vfunc_30 *param1) override;
|
||||
|
||||
bool IsInternalTimerOut() {
|
||||
|
||||
@@ -281,7 +281,7 @@ public:
|
||||
/* 00 */ virtual void GetOffsetPos(VecFx32 *pPos) const override;
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 4C */ virtual ~ActorUnkZLSL() override;
|
||||
/* 58 */ virtual void vfunc_58(ActorState state) override;
|
||||
/* 68 */ virtual void vfunc_68() override;
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "Actor.hpp"
|
||||
#include "Physics/Cylinder.hpp"
|
||||
#include "Render/ModelRender.hpp"
|
||||
#include "Unknown/Common.hpp"
|
||||
#include "Unknown/UnkStruct_027e0960.hpp"
|
||||
@@ -154,12 +155,12 @@ public:
|
||||
/* 118 */ unk32 mUnk_118;
|
||||
/* 11C */ unk32 mUnk_11C;
|
||||
|
||||
/* 14 */ virtual void vfunc_14() override;
|
||||
/* 14 */ virtual bool vfunc_14(Cylinder *param1) override;
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 1C */ virtual void vfunc_1C() override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 24 */ virtual void vfunc_24() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 4C */ virtual ~Actor_Derived1();
|
||||
/* 54 */ virtual void vfunc_54(unk32 param1);
|
||||
/* 58 */ virtual void vfunc_58(ActorState param1) = 0;
|
||||
|
||||
@@ -8,6 +8,9 @@
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
class UnkStruct_027e0ce0_30_00;
|
||||
class Inventory;
|
||||
|
||||
#define IS_ITEM_RESTRICTED(restrictions, itemFlag) (((restrictions) & (1 << (itemFlag))) != 0)
|
||||
|
||||
struct UnkStruct_ov000_020afc48 {
|
||||
@@ -66,7 +69,7 @@ public:
|
||||
// overlay 31
|
||||
void func_ov031_020d9bd0();
|
||||
void func_ov031_020dba40();
|
||||
void func_ov031_020dbc80(unk32 param1, unk32 param2);
|
||||
void func_ov031_020dbc80(bool param1, bool param2);
|
||||
};
|
||||
|
||||
class UnkStruct_ItemManager_20_04_08_310 {
|
||||
@@ -122,8 +125,8 @@ public:
|
||||
// overlay 31
|
||||
void func_ov031_020d9598();
|
||||
void func_ov031_020db338();
|
||||
void func_ov031_020db4f0(unk32 param1, unk32 param2);
|
||||
void func_ov031_020db528(unk32 param1);
|
||||
void func_ov031_020db4f0(bool param1, bool param2);
|
||||
void func_ov031_020db528(void *param1);
|
||||
};
|
||||
|
||||
class UnkStruct_ItemManager_20_08 {
|
||||
@@ -148,7 +151,7 @@ public:
|
||||
// overlay 31
|
||||
void func_ov031_020d9658();
|
||||
void func_ov031_020db5b4();
|
||||
void func_ov031_020db704(unk32 param1, unk32 param2);
|
||||
void func_ov031_020db704(bool param1, bool param2);
|
||||
};
|
||||
|
||||
class UnkStruct_ItemManager_20_0C {
|
||||
@@ -167,8 +170,8 @@ public:
|
||||
|
||||
// overlay 31
|
||||
void func_ov031_020db954();
|
||||
void func_ov031_020db958(unk32 param1, unk32 param2);
|
||||
void func_ov031_020dba3c(unk32 param1);
|
||||
void func_ov031_020db958(bool param1, bool param2);
|
||||
void func_ov031_020dba3c(void *param1);
|
||||
};
|
||||
|
||||
struct UnkStruct_ItemManager_20_10_00 {
|
||||
@@ -227,14 +230,15 @@ public:
|
||||
// overlay 31
|
||||
bool func_ov031_020db874(ItemFlag itemFlag);
|
||||
void func_ov031_020db8cc();
|
||||
bool func_ov031_020db8f8();
|
||||
bool func_ov031_020db8f8(UnkStruct_027e0ce0_30_00 *param1);
|
||||
void func_ov031_020db844(ItemFlag item);
|
||||
|
||||
// overlay 101
|
||||
void func_ov101_02182d5c();
|
||||
|
||||
// overlay 102
|
||||
void func_ov102_02182fa8(unk32 param1, unk32 param2);
|
||||
void func_ov102_02182ffc(unk32 param1);
|
||||
void func_ov102_02182fa8(bool param1, bool param2);
|
||||
void func_ov102_02182ffc(void *param1);
|
||||
};
|
||||
|
||||
struct InvImportData {
|
||||
@@ -392,7 +396,7 @@ public:
|
||||
bool func_ov000_020a89d4();
|
||||
bool func_ov000_020a8a0c();
|
||||
void func_ov000_020a8a5c();
|
||||
bool func_ov000_020a8a74();
|
||||
bool func_ov000_020a8a74(UnkStruct_027e0ce0_30_00 *param1);
|
||||
UnkStruct_ItemManager_20_00 *func_ov000_020a8a90();
|
||||
UnkStruct_ItemManager_20_04 *func_ov000_020a8aa4();
|
||||
UnkStruct_ItemManager_20_0C *func_ov000_020a8ab8();
|
||||
@@ -408,7 +412,8 @@ public:
|
||||
void func_ov001_020bc2b8();
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020bd2a0(unk32 param1, unk32 param2);
|
||||
void func_ov017_020bd2a0(bool param1, bool param2);
|
||||
void func_ov017_020bd2e8(void *param1);
|
||||
|
||||
// overlay 110
|
||||
static u32 GetBmgIDFromItem(ItemId itemId);
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
#include <nitro/math.h>
|
||||
|
||||
struct AABB {
|
||||
VecFx32 min;
|
||||
VecFx32 max;
|
||||
/* 00 */ VecFx32 min;
|
||||
/* 0C */ VecFx32 max;
|
||||
/* 18 */
|
||||
};
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
#include "Actor/ActorRef.hpp"
|
||||
#include "Render/ModelRender.hpp"
|
||||
#include "Unknown/Common.hpp"
|
||||
#include "global.h"
|
||||
#include "math.hpp"
|
||||
|
||||
#include "nitro/fx.h"
|
||||
@@ -11,7 +12,10 @@
|
||||
#include <nns/g3d/g3d.h>
|
||||
|
||||
class Actor_C4;
|
||||
class UnkStruct_027e0ce0_40_328;
|
||||
class UnkStruct_027e0ce0_30_00;
|
||||
class UnkStruct_ov001_020c40f4;
|
||||
class PlayerActorBase;
|
||||
class PlayerLinkActor_A0_28;
|
||||
class ItemManager;
|
||||
|
||||
struct ActorGrabParams;
|
||||
@@ -62,7 +66,10 @@ struct UnkStruct_ov000_020ab4dc {
|
||||
/* 66 */ unk16 mUnk_70;
|
||||
/* 66 */ unk16 mUnk_72;
|
||||
/* 74 */ s16 mUnk_74;
|
||||
/* 78 */ STRUCT_PAD(0x76, 0x86);
|
||||
/* 78 */ STRUCT_PAD(0x76, 0x83);
|
||||
/* 83 */ u8 mUnk_83;
|
||||
/* 83 */ u8 mUnk_84;
|
||||
/* 83 */ u8 mUnk_85;
|
||||
/* 86 */ u8 mUnk_86[7];
|
||||
/* 8D */ STRUCT_PAD(0x8D, 0x98);
|
||||
/* 98 */ unk32 mUnk_98;
|
||||
@@ -70,6 +77,10 @@ struct UnkStruct_ov000_020ab4dc {
|
||||
};
|
||||
extern const UnkStruct_ov000_020ab4dc data_ov000_020ab4dc[PlayerCharacter_Max];
|
||||
|
||||
inline const UnkStruct_ov000_020ab4dc *Get_ov000_020ab4dc(PlayerCharacter index) {
|
||||
return &data_ov000_020ab4dc[index];
|
||||
}
|
||||
|
||||
extern "C" G3d_Model *func_ov000_0208eadc(PlayerCharacter, unk32, bool);
|
||||
extern "C" G3d_Model *func_ov000_0208eb44(PlayerCharacter, unk32, bool);
|
||||
|
||||
@@ -123,17 +134,26 @@ public:
|
||||
class ModelRender_Derived4 : public ModelRender_Derived3 {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 60 */ STRUCT_PAD(0x60, 0x78);
|
||||
/* 60 */ unk32 mUnk_60;
|
||||
/* 64 */ unk32 mUnk_64;
|
||||
/* 68 */ VecFx32 mUnk_68;
|
||||
/* 74 */ unk32 mUnk_74;
|
||||
/* 78 */ unk32 mUnk_78;
|
||||
/* 7C */ unk32 mUnk_7C[9];
|
||||
/* A0 */ unk32 mUnk_A0[7];
|
||||
/* BC */ unk32 mUnk_BC;
|
||||
/* BC */ Mat4x3p *mUnk_BC;
|
||||
/* C0 */
|
||||
|
||||
ModelRender_Derived4(PlayerCharacter character, unk32 param2, G3d_Model *pModel, G3d_BoneMtxStruct *pCacheJntAnm);
|
||||
|
||||
// data_ov000_020b2b70
|
||||
/* 1C */ virtual void vfunc_1C(UnkSystem4_vfunc_1C *param1) override;
|
||||
|
||||
// overlay 0
|
||||
void func_ov000_02057fe8(UnkAngleStruct param1, UnkAngleStruct param2, VecFx32 *param3);
|
||||
|
||||
// overlay 93
|
||||
void func_ov093_0216ca38(bool param1, bool param2, bool param3, bool param4);
|
||||
};
|
||||
|
||||
class ModelRender_Derived5 : public ModelRender_Derived3 {
|
||||
@@ -150,10 +170,9 @@ public:
|
||||
};
|
||||
|
||||
class PlayerActorBase_38 {
|
||||
private:
|
||||
public:
|
||||
/* 00 */ UnkStruct_PlayerGet_64 mUnk_00;
|
||||
|
||||
public:
|
||||
PlayerActorBase_38(void *param1) :
|
||||
mUnk_00(param1) {
|
||||
this->mUnk_00.mUnk_08 = 0;
|
||||
@@ -175,6 +194,7 @@ public:
|
||||
/* 14 */
|
||||
|
||||
void func_ov000_02089dc4();
|
||||
void func_ov000_02089f0c(bool param1);
|
||||
};
|
||||
|
||||
class PlayerActorBase_70_0C {
|
||||
@@ -193,6 +213,14 @@ public:
|
||||
ModelRender_Derived3* GetUnk0C() const { return this->mUnk_0C; }
|
||||
// clang-format on
|
||||
|
||||
ModelRender_Derived4 *GetUnk08OrUnk0C(bool cond) const {
|
||||
if (cond) {
|
||||
return (ModelRender_Derived4 *) this->GetUnk0C();
|
||||
}
|
||||
|
||||
return (ModelRender_Derived4 *) this->GetUnk08();
|
||||
}
|
||||
|
||||
PlayerActorBase_70_0C(PlayerCharacter character, unk32 param2) :
|
||||
mpModel1(func_ov000_0208eadc(character, param2, true)),
|
||||
mpModel2(func_ov000_0208eb44(character, param2, true)) {
|
||||
@@ -237,6 +265,10 @@ public:
|
||||
|
||||
// data_ov000_020b2b9c
|
||||
/* 00 */ virtual void vfunc_00(unk32 param1, unk32 param2, unk32 param3) override;
|
||||
|
||||
// overlay 0
|
||||
void func_ov000_0208c7f0();
|
||||
void func_ov000_0208c7b0(VecFx32 *param1, UnkAngleStruct param2);
|
||||
};
|
||||
|
||||
class PlayerActorBase_70_30 {
|
||||
@@ -289,11 +321,11 @@ public:
|
||||
};
|
||||
|
||||
class PlayerActorBase_70_E4 {
|
||||
private:
|
||||
/* 00 */ STRUCT_PAD(0x00, 0x30);
|
||||
public:
|
||||
/* 00 */ VecFx32 mUnk_00;
|
||||
/* 0C */ VecFx32 mUnk_0C[PlayerCharacter_Max];
|
||||
/* 30 */
|
||||
|
||||
public:
|
||||
PlayerActorBase_70_E4();
|
||||
};
|
||||
|
||||
@@ -314,7 +346,7 @@ struct UnkStruct_func_ov000_020830d4 {
|
||||
};
|
||||
|
||||
class PlayerActorBase_70 {
|
||||
private:
|
||||
public:
|
||||
/* 000 */ BOOL mIsNotLink;
|
||||
/* 004 */ PlayerCharacter mCharacter;
|
||||
/* 008 */ unk32 mUnk_008;
|
||||
@@ -332,12 +364,10 @@ private:
|
||||
/* 0DC */ PlayerActorBase_70_DC *mUnk_0DC;
|
||||
/* 0E0 */ PlayerActorBase_70_E0 mUnk_0E0;
|
||||
/* 0E4 */ PlayerActorBase_70_E4 mUnk_0E4;
|
||||
/* 114 */ Mat4x3p *mUnk_114;
|
||||
/* 118 */ unk32 mUnk_118;
|
||||
/* 11C */ unk32 mUnk_11C;
|
||||
/* 120 */ unk32 mUnk_120;
|
||||
/* 124 */ unk16 mUnk_124;
|
||||
/* 126 */ bool mUnk_126;
|
||||
/* 114 */ Mat4x3p *mUnk_114; // allocated array, size = PlayerCharacter_Max
|
||||
/* 118 */ Vec3p mUnk_118;
|
||||
/* 124 */ UnkAngleStruct mUnk_124;
|
||||
/* 126 */ s8 mUnk_126;
|
||||
/* 127 */ bool mUnk_127;
|
||||
/* 128 */ bool mUnk_128;
|
||||
/* 129 */ bool mUnk_129;
|
||||
@@ -349,21 +379,29 @@ private:
|
||||
/* 12F */ bool mUnk_12F;
|
||||
/* 130 */ bool mUnk_130;
|
||||
/* 131 */ bool mUnk_131;
|
||||
/* 132 */ unk16 mUnk_132;
|
||||
/* 132 */ s16 mUnk_132;
|
||||
/* 134 */ PlayerActorBase_70_134 mUnk_134;
|
||||
/* 15C */ unk32 mUnk_15C;
|
||||
/* 160 */
|
||||
|
||||
public:
|
||||
PlayerActorBase_70(PlayerCharacter character, unk32 param2);
|
||||
~PlayerActorBase_70();
|
||||
|
||||
// overlay 0
|
||||
void func_ov000_02082e54();
|
||||
void func_ov000_02082e78(unk32 param1, unk32 param2, unk32 param3, unk32 param4);
|
||||
void func_ov000_020830d4(UnkAngleStruct param1, u32 param2, u8 param3, unk32 param4);
|
||||
void func_ov000_020830d4(UnkAngleStruct param1, u32 param2, u8 param3, PlayerLinkActor_A0_28 *param4);
|
||||
void func_ov000_020830a4(unk32 param1, PlayerCharacter character, unk32 param3, unk32 param4);
|
||||
void func_ov000_020830a4(unk32 param1, PlayerCharacter character, unk32 param3, unk32 param4, unk32);
|
||||
|
||||
// overlay 1
|
||||
void func_ov001_020bbe18(unk32 param1, UnkAngleStruct param2, u32 param3, u8 param4);
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020bbaa8(VecFx32 *param1, UnkAngleStruct param2);
|
||||
void func_ov017_020bbcd8(VecFx32 *param1, UnkAngleStruct param2);
|
||||
void func_ov017_020bbef4(VecFx32 *param1, UnkAngleStruct param2);
|
||||
void func_ov017_020bbf6c();
|
||||
};
|
||||
|
||||
class PlayerActorBase_74 {
|
||||
@@ -395,12 +433,14 @@ struct PlayerActorBase_78_04 {
|
||||
};
|
||||
|
||||
class PlayerActorBase_78 {
|
||||
private:
|
||||
/* 00 */ STRUCT_PAD(0x00, 0x0C);
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
/* 00 */ unk32 mUnk_04;
|
||||
/* 00 */ u8 mUnk_08[2]; // bool?
|
||||
/* 0C */
|
||||
|
||||
public:
|
||||
void func_ov000_0205c584(volatile unk32 param1, volatile unk32 param2);
|
||||
void func_ov000_0205c5d0(unk32 param1, PlayerActorBase *pPlayer);
|
||||
};
|
||||
|
||||
class PlayerLinkActor_9C_34 {
|
||||
@@ -408,6 +448,7 @@ private:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
/* 04 */ VecFx32 mUnk_04;
|
||||
/* 10 */ VecFx32 mUnk_10;
|
||||
/* 1C */
|
||||
|
||||
public:
|
||||
void func_ov000_0208efd0(VecFx32 *pVec);
|
||||
@@ -416,17 +457,61 @@ public:
|
||||
class PlayerLinkActor_9C {
|
||||
public:
|
||||
/* 000 (vtable) */
|
||||
/* 004 */ STRUCT_PAD(0x04, 0x34);
|
||||
/* 034 */ PlayerLinkActor_9C_34 mUnk_34;
|
||||
/* 004 */ STRUCT_PAD(0x50, 0xF4);
|
||||
/* 0F4 */ UnkStruct_027e0ce0_40_328 *mUnk_0F4;
|
||||
/* 0F8 */ STRUCT_PAD(0xF8, 0x154);
|
||||
/* 004 */ STRUCT_PAD(0x04, 0x08);
|
||||
/* 008 */ ActorRef mUnk_008; //! TODO: confirm type
|
||||
/* 00C */ STRUCT_PAD(0x0C, 0x34);
|
||||
/* 034 */ PlayerLinkActor_9C_34 mUnk_034;
|
||||
/* 004 */ STRUCT_PAD(0x50, 0x5A);
|
||||
/* 05A */ UnkAngleStruct mUnk_5A;
|
||||
/* 05C */ STRUCT_PAD(0x5C, 0x6C);
|
||||
/* 06C */ VecFx32 mUnk_06C;
|
||||
/* 078 */ STRUCT_PAD(0x78, 0x90);
|
||||
/* 090 */ s16 mUnk_090;
|
||||
/* 090 */ unk16 mUnk_092;
|
||||
/* 094 */ unk32 mUnk_094;
|
||||
/* 098 */ unk16 mUnk_098;
|
||||
/* 094 */ STRUCT_PAD(0x9A, 0xDC);
|
||||
/* 0DC */ u16 mUnk_0DC;
|
||||
/* 0DE */ unk16 mUnk_0DE;
|
||||
/* 0E0 */ unk32 mUnk_0E0;
|
||||
/* 0E4 */ unk32 mUnk_0E4;
|
||||
/* 0E8 */ unk32 mUnk_0E8;
|
||||
/* 0EC */ unk32 mUnk_0EC;
|
||||
/* 0F0 */ unk32 mUnk_0F0;
|
||||
/* 0F4 */ PlayerActorBase *pZelda;
|
||||
/* 0F8 */ unk32 mUnk_0F8;
|
||||
/* 0FC */ bool mUnk_0FC;
|
||||
/* 100 */ unk32 mUnk_100;
|
||||
/* 104 */ VecFx32 mUnk_104;
|
||||
/* 110 */ STRUCT_PAD(0x110, 0x138);
|
||||
/* 138 */ s16 mUnk_138;
|
||||
/* 13A */ u16 mUnk_13A;
|
||||
/* 13C */ unk16 mUnk_13C;
|
||||
/* 13E */ STRUCT_PAD(0x13E, 0x154);
|
||||
/* 154 */
|
||||
|
||||
PlayerLinkActor_9C(UnkStruct_027e0ce0_40 *param1, u32 rawGrabParams, PlayerCharacter character);
|
||||
|
||||
// data_ov000_020b2a8c
|
||||
/* 00 */ virtual ~PlayerLinkActor_9C();
|
||||
|
||||
// overlay 0
|
||||
unk32 func_ov000_02084944();
|
||||
unk32 func_ov000_020849d0(VecFx32 *pAccel, VecFx32 *pVel);
|
||||
unk32 func_ov000_02084ac8(unk32 param1, VecFx32 *pPos, VecFx32 *pAccel, VecFx32 *pVel);
|
||||
void func_ov000_02084c3c(unk32 param1, unk32 param2, VecFx32 *param3, VecFx32 *param4);
|
||||
unk32 func_ov000_02084e58(unk32 param1, u8 param2, VecFx32 *param3, VecFx32 *pPos, VecFx32 *pAccel, VecFx32 *pVel,
|
||||
unk32 param7);
|
||||
void func_ov000_02085274(unk32 param1, unk32 param2, unk32 param3, VecFx32 *param4, VecFx32 *param5, VecFx32 *param6);
|
||||
void func_ov000_02085578(unk32 param1, unk32 param2, unk32 param3, unk32 param4, VecFx32 *param5);
|
||||
void func_ov000_02085718(VecFx32 *param1);
|
||||
void func_ov000_02085840(VecFx32 *param1, VecFx32 *param2, VecFx32 *param3);
|
||||
void func_ov000_02086758();
|
||||
void func_ov000_020867f4();
|
||||
|
||||
// overlay 17
|
||||
bool func_ov017_020bc640(u32 param1, bool param2, bool param3, u8 param4, u8 param5, VecFx32 *pAccel, VecFx32 *pPos,
|
||||
VecFx32 *pVel);
|
||||
};
|
||||
|
||||
class PlayerActorBase {
|
||||
@@ -464,9 +549,31 @@ public:
|
||||
// overlay 0
|
||||
void func_ov000_0208c8f8(VecFx32 *pVec);
|
||||
void func_ov000_0208c914();
|
||||
void func_ov000_0208cbf0();
|
||||
void func_ov000_0208cc20(VecFx32 *param1);
|
||||
bool func_ov000_0208cc90();
|
||||
unk32 func_ov000_0208d3a8();
|
||||
void func_ov000_0208d3d0(Vec2s *param1, unk32 param2, void *param3);
|
||||
void func_ov000_0208d3fc();
|
||||
void func_ov000_0208d60c();
|
||||
bool func_ov000_0208d754();
|
||||
void func_ov000_0208d7f0(bool param1);
|
||||
bool func_ov000_0208db08();
|
||||
unk32 func_ov000_0208dc98();
|
||||
unk32 func_ov000_0208dd60(UnkStruct_027e0ce0_30_00 *param1);
|
||||
|
||||
// overlay 1
|
||||
void func_ov001_020bc96c(); // ResetState? or just Reset? idk
|
||||
|
||||
// overlay 93
|
||||
//! TODO: move to PlayerZeldaActor?
|
||||
unk32 func_ov093_0216e8e4(UnkStruct_027e0ce0_30_00 *param1);
|
||||
void func_ov093_0216d0d4();
|
||||
void func_ov093_0216d160();
|
||||
void func_ov093_0216d1cc(unk32 param1, const UnkStruct_ov001_020c40f4 *param2, bool param3, bool param4);
|
||||
void func_ov093_0216d5b8(bool param1);
|
||||
void func_ov093_0216f71c(unk32 *param1);
|
||||
void func_ov093_0216de30(unk32 param1, unk32 param2);
|
||||
void func_ov093_0216dec8(void *param1);
|
||||
void func_ov093_0216e1a4(void *param1);
|
||||
};
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
#include "Player/PlayerActorBase.hpp"
|
||||
|
||||
class UnkStruct_027e0ce0_40;
|
||||
class UnkStruct_027e0ce0_40_328;
|
||||
class PlayerActorBase;
|
||||
class UnkStruct_027e0ce0_40_150;
|
||||
class PlayerLinkActor_A0_38;
|
||||
class ItemManager;
|
||||
@@ -134,8 +134,7 @@ public:
|
||||
|
||||
class PlayerLinkActor_A0_38 {
|
||||
public:
|
||||
/* 00 */ unk16 mUnk_00;
|
||||
/* 02 */ unk16 mUnk_02;
|
||||
/* 00 */ Vec2s mUnk_00;
|
||||
/* 04 */ PlayerLinkActor_A0_38_04 mUnk_04;
|
||||
/* 18 */ PlayerLinkActor_A0_38_18 mUnk_18;
|
||||
/* 2C */ Vec2s mUnk_2C;
|
||||
@@ -146,9 +145,28 @@ public:
|
||||
/* 37 */ bool mUnk_37;
|
||||
/* 38 */
|
||||
|
||||
const bool UnknownCheck1(u16 flag, s16 pos, s16 min, s16 max) {
|
||||
if (this->mUnk_34 & flag) {
|
||||
if (pos > min) {
|
||||
return true;
|
||||
}
|
||||
} else {
|
||||
if (pos < max) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
PlayerLinkActor_A0_38();
|
||||
~PlayerLinkActor_A0_38();
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020be0a8(unk32 param1);
|
||||
void func_ov017_020be0e0(s32 param1, VecFx32 *param2, bool param3, bool param4);
|
||||
|
||||
// overlay 24
|
||||
void func_ov024_020d19d8();
|
||||
};
|
||||
|
||||
@@ -191,13 +209,21 @@ public:
|
||||
~PlayerLinkActor_A0();
|
||||
|
||||
// overlay 0
|
||||
void func_ov000_02091ea0();
|
||||
bool func_ov000_02091f08(unk32 param1);
|
||||
void func_ov000_020921e4(unk32 param1);
|
||||
void func_ov000_02091ea0();
|
||||
void func_ov000_02092e38();
|
||||
bool func_ov000_0209360c();
|
||||
void func_ov000_02092648(unk32 param1);
|
||||
void func_ov000_02092ea8(unk32 param1, unk32 param2);
|
||||
void func_ov000_02092ecc(void *param1, bool param2);
|
||||
u8 func_ov000_02093650();
|
||||
bool func_ov000_020936c4();
|
||||
void func_ov000_020936ec();
|
||||
u32 func_ov000_02093718();
|
||||
u8 func_ov000_0209378c(); // bool?
|
||||
void func_ov000_02093a04();
|
||||
void func_ov000_02093fe8();
|
||||
|
||||
// overlay 1
|
||||
void func_ov001_020bd2e0();
|
||||
@@ -217,6 +243,8 @@ public:
|
||||
|
||||
PlayerLinkActor_A4(PlayerActorBase *pPlayer, PlayerLinkActor_A0 *param2);
|
||||
~PlayerLinkActor_A4();
|
||||
|
||||
void func_ov000_02089998(bool param1);
|
||||
};
|
||||
|
||||
class PlayerLinkActor_134 {
|
||||
@@ -236,6 +264,7 @@ public:
|
||||
|
||||
// overlay 31
|
||||
void func_ov031_020db0fc();
|
||||
void func_ov031_020db160(bool param1);
|
||||
};
|
||||
|
||||
class PlayerLinkActor_1B0 : public UnkSystem7 {
|
||||
@@ -253,7 +282,7 @@ class PlayerLinkActor : public PlayerActorBase {
|
||||
public:
|
||||
/* 000 (base) */
|
||||
/* 094 */ UnkStruct_027e0ce0_40_150 *mUnk_094;
|
||||
/* 098 */ UnkStruct_027e0ce0_40_328 *mUnk_098;
|
||||
/* 098 */ PlayerActorBase *mpZelda;
|
||||
/* 09C */ PlayerLinkActor_9C *mUnk_09C;
|
||||
/* 0A0 */ PlayerLinkActor_A0 *mUnk_0A0;
|
||||
/* 0A4 */ PlayerLinkActor_A4 mUnk_0A4;
|
||||
@@ -261,8 +290,8 @@ public:
|
||||
/* 0B4 */ bool mUnk_0B4;
|
||||
/* 0B5 */ bool mUnk_0B5;
|
||||
/* 0B6 */ bool mUnk_0B6;
|
||||
/* 0B7 */ bool mUnk_0B7;
|
||||
/* 0B8 */ bool mUnk_0B8;
|
||||
/* 0B7 */ u8 mUnk_0B7;
|
||||
/* 0B8 */ u8 mUnk_0B8;
|
||||
/* 0B9 */ bool mUnk_0B9;
|
||||
/* 0BA */ bool mUnk_0BA;
|
||||
/* 0BB */ bool mUnk_0BB;
|
||||
@@ -276,16 +305,20 @@ public:
|
||||
~PlayerLinkActor();
|
||||
|
||||
// overlay 1
|
||||
void func_ov001_020bcb60(UnkStruct_027e0ce0_40_328 *param1);
|
||||
void func_ov001_020bcb60(PlayerActorBase *pZelda);
|
||||
void func_ov001_020bcb70();
|
||||
void func_ov001_020bcba8();
|
||||
void func_ov001_020bcbd0(VecFx32 *pVec);
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020bd788(unk32 param1);
|
||||
void func_ov017_020bdcf4();
|
||||
void func_ov017_020bdd84(unk32 param1, unk32 param2);
|
||||
void func_ov017_020bdf48(unk32 param1, unk32 param2, unk32 param3, unk32 param4);
|
||||
bool func_ov017_020bd6b8();
|
||||
unk32 func_ov017_020bd6e0(bool param1);
|
||||
void func_ov017_020bd758();
|
||||
void func_ov017_020bd788(bool param1);
|
||||
void func_ov017_020bdcf4(unk32 param1, unk32 param2);
|
||||
void func_ov017_020bdd84(void *param1, unk32 param2);
|
||||
void func_ov017_020bdf48(s8 *param1, unk32 param2, void *param3, UnkStruct_ov019_020d24c8_28_258_00 *param4);
|
||||
void func_ov017_020be098();
|
||||
|
||||
// overlay 21
|
||||
void func_ov021_020ebda0();
|
||||
|
||||
@@ -4,11 +4,14 @@
|
||||
|
||||
class UnkStruct_027e0ce0_40;
|
||||
|
||||
//! TODO: should this be merged with PlayerZeldaActor? both are the exact same size
|
||||
class PlayerPhantomActor : public PlayerActorBase {
|
||||
public:
|
||||
/* 000 (base) */
|
||||
/* 094 */ unk32 mUnk_94;
|
||||
/* 098 */ unk32 mUnk_98;
|
||||
/* 09C */ STRUCT_PAD(0x9C, 0x154);
|
||||
/* 154 */
|
||||
|
||||
PlayerPhantomActor(unk32 param1, unk32 param2, UnkStruct_027e0ce0_40 *param3, bool *param4);
|
||||
};
|
||||
|
||||
@@ -1,14 +1,26 @@
|
||||
#pragma once
|
||||
|
||||
#include "Item/Item.hpp"
|
||||
#include "Player/PlayerActorBase.hpp"
|
||||
|
||||
class UnkStruct_027e0ce0_40 :
|
||||
class UnkStruct_027e0ce0_40;
|
||||
class UnkStruct_027e0ce0_40_150;
|
||||
|
||||
class PlayerZeldaActor : public PlayerActorBase {
|
||||
class PlayerZeldaActor : public PlayerActorBase {
|
||||
public:
|
||||
/* 000 (base) */
|
||||
/* 094 */ unk32 mUnk_94;
|
||||
/* 098 */ unk32 mUnk_98;
|
||||
/* 098 */ PlayerActorBase *mpPlayer;
|
||||
/* 09C */ STRUCT_PAD(0x9C, 0xCC);
|
||||
/* 0CC */ bool mUnk_0CC;
|
||||
/* 0CD */ STRUCT_PAD(0xCD, 0xD0);
|
||||
/* 0D0 */ unk32 mUnk_0D0;
|
||||
/* 0D4 */ unk32 mUnk_0D4;
|
||||
/* 0D8 */ unk32 mUnk_0D8;
|
||||
/* 0DC */ unk32 mUnk_0DC;
|
||||
/* 0E0 */ STRUCT_PAD(0xE0, 0x154);
|
||||
/* 154 */
|
||||
|
||||
PlayerZeldaActor(unk32 param1, unk32 param2, UnkStruct_027e0ce0_40 *param3, bool *param4);
|
||||
PlayerZeldaActor(void *param1, UnkStruct_027e0ce0_40 *param2, UnkStruct_027e0ce0_40_150 *param3, ItemFlag *pEquippedItem);
|
||||
~PlayerZeldaActor();
|
||||
};
|
||||
|
||||
@@ -388,6 +388,8 @@ public:
|
||||
/* 48 */
|
||||
|
||||
// clang-format off
|
||||
const bool IsRabbitCapture() const { return this->mLoadedOverlays[OverlaySlot_1] == OverlayIndex_RabbitCapture; }
|
||||
|
||||
const bool IsField() const { return this->mLoadedOverlays[OverlaySlot_7] == OverlayIndex_Field; }
|
||||
|
||||
const bool IsTower() const { return this->mLoadedOverlays[OverlaySlot_8] == OverlayIndex_Tower; }
|
||||
|
||||
@@ -979,9 +979,7 @@ struct UnkSystem7_UnkStruct_00 {
|
||||
/* 00 */ STRUCT_PAD(0x00, 0x20);
|
||||
/* 20 */ UnkSystem7_UnkStruct_00_20 *mUnk_20;
|
||||
/* 24 */ unk32 mUnk_24;
|
||||
/* 28 */ unk32 mUnk_28;
|
||||
/* 2C */ unk32 mUnk_2C;
|
||||
/* 30 */ unk32 mUnk_30;
|
||||
/* 28 */ VecFx32 mUnk_28;
|
||||
/* 34 */ STRUCT_PAD(0x34, 0xA0);
|
||||
/* A0 */ unk32 mUnk_A0;
|
||||
/* A4 */ unk16 mUnk_A4;
|
||||
@@ -1325,3 +1323,28 @@ struct UnkStruct_ov000_020aa88c {
|
||||
/* 08 */
|
||||
};
|
||||
extern UnkStruct_ov000_020aa88c data_ov000_020aa88c[];
|
||||
|
||||
union UnkStackStruct_ov000_02077590 {
|
||||
struct {
|
||||
/* 00 */ s16 mUnk_00;
|
||||
/* 02 */ s16 mUnk_02;
|
||||
/* 04 */ s16 mUnk_04;
|
||||
/* 06 */ s16 mUnk_06;
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
/* 0C */ VecFx32 mUnk_0C;
|
||||
/* 18 */ u16 mUnk_18;
|
||||
/* 1A */ u16 mUnk_1A;
|
||||
/* 1C */ u16 mUnk_1C;
|
||||
/* 1E */ u16 mUnk_1E;
|
||||
/* 20 */
|
||||
};
|
||||
u32 data[8];
|
||||
};
|
||||
extern "C" UnkStackStruct_ov000_02077590 *func_ov000_02077590(unk32);
|
||||
|
||||
struct UnkStackStruct_ov000_02084344 {
|
||||
/* 00 */ s16 mUnk_00;
|
||||
/* 02 */ s16 mUnk_02;
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
};
|
||||
extern "C" UnkStackStruct_ov000_02084344 *func_ov000_02084344(unk32);
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
#pragma once
|
||||
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
class UnkStruct_020499e0 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
|
||||
UnkStruct_020499e0();
|
||||
~UnkStruct_020499e0();
|
||||
|
||||
bool func_0201456c(unk32 param1);
|
||||
};
|
||||
|
||||
extern UnkStruct_020499e0 data_020499e0;
|
||||
@@ -17,14 +17,16 @@ class UnkStruct_02049b18 {
|
||||
public:
|
||||
/* 00 */ Input mButtons;
|
||||
/* 06 */ UnkStruct_02049b18_06 mUnk_06;
|
||||
/* 28 */ unk16 mUnk_28;
|
||||
/* 2A */ STRUCT_PAD(0x2A, 0x58);
|
||||
/* 28 */ u16 mUnk_28;
|
||||
/* 2A */ u16 mUnk_2A;
|
||||
/* 2C */ STRUCT_PAD(0x2C, 0x58);
|
||||
/* 58 */ unk16 mUnk_58;
|
||||
/* 5A */ unk16 mUnk_5A;
|
||||
|
||||
UnkStruct_02049b18();
|
||||
~UnkStruct_02049b18();
|
||||
void func_02013768();
|
||||
TouchState *func_020137c8(unk32 param1);
|
||||
void func_02013840(u16 param1, unk32 param2);
|
||||
void func_020138f4(unk32 param1);
|
||||
};
|
||||
|
||||
@@ -16,6 +16,7 @@ public:
|
||||
void func_02013ecc(unk32 param1, UnkCallback param2, unk32 param3);
|
||||
void func_02013ee8(unk32 param1, unk32 param2);
|
||||
void func_02013f80(unk32 param1);
|
||||
void func_02013fec(unk32 param1, void *param2);
|
||||
};
|
||||
|
||||
extern UnkStruct_02049b80 data_02049b80;
|
||||
|
||||
@@ -24,6 +24,24 @@ public:
|
||||
/* 128 */ unk16 mUnk_128;
|
||||
/* 12C */
|
||||
|
||||
const BOOL IsUnknownCheck1(unk32 value1, unk32 value2) const {
|
||||
bool ret = false;
|
||||
|
||||
if (!(this->mUnk_04 != value1 || this->mUnk_08 != value2)) {
|
||||
ret = true;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
const bool IsUnknownCheck2(unk32 value1, unk32 value2) const {
|
||||
return this->mUnk_04 == value1 && this->mUnk_08 == value2;
|
||||
}
|
||||
|
||||
const bool IsUnknownCheck3(unk32 value1, unk32 value2) const {
|
||||
return *(volatile u32 *) &this->mUnk_04 != value1 || this->mUnk_08 != value2;
|
||||
}
|
||||
|
||||
UnkStruct_0204a088();
|
||||
|
||||
// overlay 0
|
||||
|
||||
@@ -247,7 +247,7 @@ public:
|
||||
/* DDC */ UnkStruct_0204a110_Sub8 mUnk_DDC;
|
||||
/* DEC */ GameModeManagerBase *mpManager;
|
||||
/* DF0 */ u16 mUnk_DF0;
|
||||
/* DF2 */ unk8 mUnk_DF2;
|
||||
/* DF2 */ s8 mUnk_DF2;
|
||||
/* DF3 */ unk8 mUnk_DF3;
|
||||
/* DF4 */ unk32 mUnk_DF4;
|
||||
/* DF8 */ unk32 mUnk_DF8;
|
||||
@@ -286,6 +286,7 @@ public:
|
||||
void func_0201967c(unk32 param2, unk32 param3, unk32 param4, unk32 param5, unk32 param6);
|
||||
void func_02019538(unk32 param1, unk32 param2);
|
||||
unk32 func_02019300(unk32 param1);
|
||||
bool func_02019340(unk32 param1);
|
||||
void func_02019350();
|
||||
void func_020194dc();
|
||||
void func_02019408();
|
||||
@@ -294,6 +295,8 @@ public:
|
||||
void func_02019528();
|
||||
bool func_02019548();
|
||||
UnkStruct_func_02019590 *func_02019590(unk16 param1, unk32 param2);
|
||||
unk32 func_01ff9b64();
|
||||
unk32 func_01ff9b78();
|
||||
|
||||
// overlay 1
|
||||
void func_ov001_020bd514(unk32 param1, GameModeMgrCreateCallback createCallback, bool param3, bool param4);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include "Actor/ActorRef.hpp"
|
||||
#include "global.h"
|
||||
#include "math.hpp"
|
||||
#include "types.h"
|
||||
@@ -16,7 +17,7 @@ public:
|
||||
UnkStruct_027e0998_Base();
|
||||
|
||||
// data_ov000_020b1e08
|
||||
/* 00 */ virtual bool vfunc_00(VecFx32 *pPos, Vec2s *param2, u16 *param3);
|
||||
/* 00 */ virtual bool vfunc_00(VecFx32 *pPos, Vec2s *param2, ActorRef *param3);
|
||||
/* 04 */
|
||||
|
||||
void func_ov000_02061760();
|
||||
@@ -37,12 +38,12 @@ public:
|
||||
~UnkStruct_027e0998(); // ClearInstance
|
||||
|
||||
// data_ov024_020d7c98
|
||||
/* 00 */ virtual bool vfunc_00(VecFx32 *pPos, Vec2s *param2, u16 *param3) override;
|
||||
/* 00 */ virtual bool vfunc_00(VecFx32 *pPos, Vec2s *param2, ActorRef *param3) override;
|
||||
/* 04 */
|
||||
|
||||
bool func_ov024_020c716c();
|
||||
bool func_ov024_020c7214(VecFx32 *pPos, Vec2s *param2, u16 *param3);
|
||||
bool func_ov024_020c727c(Vec2s *param1, u16 *param2);
|
||||
bool func_ov024_020c7214(VecFx32 *pPos, Vec2s *param2, ActorRef *param3);
|
||||
bool func_ov024_020c727c(Vec2s *param1, ActorRef *param2);
|
||||
bool func_ov024_020c7300(unk32 param1);
|
||||
bool func_ov024_020c7354();
|
||||
|
||||
|
||||
@@ -264,7 +264,7 @@ public:
|
||||
/* 40 */ UnkStruct_027e09a4_2C mUnk_40;
|
||||
/* 54 */ UnkStruct_027e09a4_54_Base *mUnk_54;
|
||||
/* 58 */ UnkStruct_WarpUnk1 *mpWarpUnk1;
|
||||
/* 5C */ unk16 mUnk_5C;
|
||||
/* 5C */ u16 mUnk_5C;
|
||||
/* 5E */ unk16 mUnk_5E;
|
||||
/* 60 */ SceneMode mSceneMode;
|
||||
/* 64 */ unk32 mUnk_64;
|
||||
@@ -367,9 +367,10 @@ public:
|
||||
static UnkStruct_027e09a4 *Create(unk32 param1);
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020bb994(void *param1);
|
||||
void func_ov017_020bb994(unk32 param1);
|
||||
void func_ov017_020bb994(void *, void *);
|
||||
void func_ov017_020bb660(unk32 param1);
|
||||
void func_ov017_020bb7f8(void *param1);
|
||||
void func_ov017_020bb934(void *param1);
|
||||
void func_ov017_020bb994(s8 *param1);
|
||||
|
||||
static void func_ov025_020c4a60();
|
||||
static void Destroy();
|
||||
|
||||
@@ -78,6 +78,8 @@ public:
|
||||
~UnkStruct_027e09ac();
|
||||
|
||||
// overlay 0
|
||||
void func_ov000_020723f4();
|
||||
void func_ov000_02072684(void *param1);
|
||||
void func_ov000_020726f0(u16 param1, unk32 param2, unk32 param3);
|
||||
void func_ov000_020729c4(UnkStruct_027e09ac_14 *param1, u16 param2, u16 param3, s16 param4, s16 param5);
|
||||
void func_ov000_02072b08(unk32 param1, unk32 param2);
|
||||
|
||||
@@ -17,7 +17,7 @@ public:
|
||||
UnkStruct_027e09b4();
|
||||
|
||||
// main
|
||||
void func_01fff60c(VecFx32 *param1, unk32 param2, unk32 param3, u8 param4, unk32 param5, unk32 param6);
|
||||
void func_01fff60c(VecFx32 *param1, unk32 param2, unk32 param3, s32 param4, unk32 param5, unk32 param6);
|
||||
|
||||
// overlay 1
|
||||
void func_ov001_020bea84();
|
||||
@@ -27,6 +27,8 @@ public:
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020c08c4(VecFx32 *param1, unk32 param2, unk32 param3, s32 param4, s32 param5, s32 param6);
|
||||
void func_ov017_020c0970(VecFx32 *param1, unk32 param2, unk32 param3, unk32 param4, unk32 param5, unk32 param6,
|
||||
fx32 param7);
|
||||
};
|
||||
|
||||
extern UnkStruct_027e09b4 *data_027e09b4;
|
||||
|
||||
@@ -4,16 +4,44 @@
|
||||
#include "Unknown/UnkStruct_0204a060.hpp"
|
||||
#include "global.h"
|
||||
#include "math.hpp"
|
||||
#include "nitro/fx.h"
|
||||
#include "types.h"
|
||||
|
||||
class UnkStruct_027e0ce0_30_00;
|
||||
|
||||
class UnkStruct_027e09bc_0C_230 {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 04 */
|
||||
|
||||
/* 00 */ virtual void vfunc_00();
|
||||
/* 04 */ virtual void vfunc_04();
|
||||
/* 08 */ virtual unk32 vfunc_08();
|
||||
};
|
||||
|
||||
struct UnkStruct_027e09bc_0C_268 {
|
||||
/* 00 */ u32 unk_00;
|
||||
/* 04 */ u16 unk_04;
|
||||
/* 06 */ bool unk_06;
|
||||
/* 07 */ u8 unk_07;
|
||||
/* 08 */ VecFx32 unk_08;
|
||||
/* 14 */
|
||||
};
|
||||
|
||||
class UnkStruct_027e09bc_0C {
|
||||
public:
|
||||
/* 000 (vtable) */
|
||||
/* 004 */ STRUCT_PAD(0x04, 0x34);
|
||||
/* 034 */ VecFx32 mUnk_034;
|
||||
/* 040 */ STRUCT_PAD(0x40, 0x264);
|
||||
/* 040 */ VecFx32 mUnk_040;
|
||||
/* 04C */ STRUCT_PAD(0x4C, 0xCA);
|
||||
/* 0CA */ unk16 mUnk_0CA;
|
||||
/* 0CC */ STRUCT_PAD(0xCC, 0x230);
|
||||
/* 230 */ UnkStruct_027e09bc_0C_230 *mUnk_230;
|
||||
/* 234 */ STRUCT_PAD(0x234, 0x264);
|
||||
/* 264 */ unk32 mUnk_264;
|
||||
/* 268 */ STRUCT_PAD(0x268, 0x280);
|
||||
/* 268 */ UnkStruct_027e09bc_0C_268 mUnk_268;
|
||||
/* 27C */ unk32 mUnk_27C;
|
||||
/* 280 */ unk32 mUnk_280;
|
||||
/* 284 */
|
||||
|
||||
@@ -26,17 +54,24 @@ public:
|
||||
/* 10 */
|
||||
|
||||
// itcm
|
||||
bool func_01ffd43c(Vec2s *param1, unk32 param2, unk32 param3);
|
||||
bool func_01ffd43c(Vec2s *param1, VecFx32 *param2, unk32 param3);
|
||||
bool func_01ffd640(VecFx32 *param1);
|
||||
bool func_01ffd768(void *param1, Vec2s *param2, unk8 param3);
|
||||
|
||||
// overlay 0
|
||||
void func_ov000_020767b4(VecFx32 *param1, Vec2s *touchPos, fx32 param3, unk32 param4, VecFx32 *param5);
|
||||
void func_ov000_02078230(unk32 param1);
|
||||
bool func_ov000_0207834c(VecFx32 *param1, unk32 param2, unk32 param3);
|
||||
bool func_ov000_0207834c(VecFx32 *param1, UnkStackStruct_ov000_02077590 *param2, unk32 param3);
|
||||
unk16 func_ov000_0207868c();
|
||||
unk16 func_ov000_02078698();
|
||||
void func_ov000_02078534(VecFx32 *param1, unk32 param2);
|
||||
bool func_ov000_02078764(VecFx32 *param1, void *param2, unk32 param3);
|
||||
void func_ov000_02078834(VecFx32 *param1, VecFx32 *param2, unk32 param3, unk32 param4);
|
||||
void func_ov000_02078aa4(UnkStruct_027e0ce0_30_00 *param1, unk32 param2, unk32 param3, unk32 param4);
|
||||
void func_ov000_02078ba4();
|
||||
void func_ov000_02078cec();
|
||||
void func_ov000_0207a1e0(unk32 param1);
|
||||
unk32 func_ov000_02076fa8(void *param1, void *param2, unk32 param3, fx32 param4);
|
||||
};
|
||||
|
||||
class UnkStruct_027e09bc_24 : public UnkStruct_0204a060_Base {
|
||||
@@ -61,12 +96,13 @@ public:
|
||||
UnkStruct_027e09bc();
|
||||
~UnkStruct_027e09bc();
|
||||
|
||||
/* 00 */ virtual void vfunc_00();
|
||||
/* 00 */ virtual void vfunc_00(unk32 param1);
|
||||
/* 04 */ virtual void vfunc_04();
|
||||
|
||||
// overlay 0
|
||||
void func_ov000_020771b8(unk32 param1);
|
||||
void func_ov000_020771c8();
|
||||
UnkStruct_027e09bc_0C *func_ov000_02077468(unk32 param1, unk32 param2);
|
||||
|
||||
// overlay 1
|
||||
void func_ov001_020bab5c();
|
||||
|
||||
@@ -446,8 +446,12 @@ public:
|
||||
bool func_ov000_02081f3c(unk16 param1, unk32 param2);
|
||||
u32 func_ov000_02081d5c(); // returns current room index?
|
||||
bool func_ov000_02082124();
|
||||
void func_ov000_02081b84();
|
||||
void func_ov000_02081b9c(unk32 param1);
|
||||
void func_ov000_02081bf4();
|
||||
bool func_ov000_02081c28();
|
||||
void func_ov000_02081ca0();
|
||||
void func_ov000_02081d58();
|
||||
bool func_ov000_02081edc(u16 param1);
|
||||
|
||||
// overlay 1
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
#pragma once
|
||||
|
||||
#include "Unknown/UnkStruct_0204a110.hpp"
|
||||
#include "flags.h"
|
||||
#include "global.h"
|
||||
#include "nitro/fx.h"
|
||||
#include "types.h"
|
||||
|
||||
#include "Actor/ActorRef.hpp"
|
||||
#include "Item/ItemManager.hpp"
|
||||
#include "LinkList.hpp"
|
||||
#include "Player/PlayerLink.hpp"
|
||||
#include "Player/PlayerZelda.hpp"
|
||||
#include "Player/TouchControl.hpp"
|
||||
#include "Save/SaveManager.hpp"
|
||||
#include "input.hpp"
|
||||
@@ -17,6 +21,7 @@ class UnkStruct_027e0ce0;
|
||||
class UnkStruct_027e0ce0_30;
|
||||
class UnkStruct_027e0ce0_38;
|
||||
class UnkStruct_027e0ce0_3C;
|
||||
class UnkStruct_027e0ce0_40;
|
||||
class UnkStruct_ov001_020c40f4;
|
||||
|
||||
class UnkStruct_027e0ce0_0C : public LinkList<UnkStruct_027e0ce0_0C> {
|
||||
@@ -111,7 +116,9 @@ public:
|
||||
|
||||
class UnkStruct_027e0ce0_24 {
|
||||
public:
|
||||
/* 00 */ STRUCT_PAD(0x00, 0x88);
|
||||
/* 00 */ STRUCT_PAD(0x00, 0x70);
|
||||
/* 70 */ u16 mUnk_70[1]; //! TODO: confirm array size
|
||||
/* 72 */ STRUCT_PAD(0x72, 0x88);
|
||||
/* 88 */
|
||||
|
||||
UnkStruct_027e0ce0_24();
|
||||
@@ -121,6 +128,12 @@ public:
|
||||
void func_ov021_020eaa08(UnkStruct_027e0ce0_20 *param1);
|
||||
void func_ov021_020eaac4();
|
||||
void func_ov021_020eab14(unk32 param1, const UnkStruct_ov001_020c40f4 *param2, UnkStruct_027e0ce0_30 *param3);
|
||||
void func_ov021_020eab6c(bool param1);
|
||||
void func_ov021_020eae2c(unk32 param1);
|
||||
void func_ov021_020eae84();
|
||||
unk32 func_ov021_020eaef0(unk32 param1, bool param2);
|
||||
void func_ov021_020eb010();
|
||||
unk32 func_ov021_020eb870(unk32 param1, unk32 param2, unk32 param3, void *param4);
|
||||
};
|
||||
|
||||
class UnkStruct_027e0ce0_30_00 {
|
||||
@@ -129,20 +142,26 @@ private:
|
||||
/* 0C */ VecFx32 mUnk_0C;
|
||||
/* 18 */ unk32 mUnk_18;
|
||||
/* 1C */ unk32 mUnk_1C;
|
||||
/* 20 */ unk32 mUnk_20;
|
||||
/* 20 */ u32 mUnk_20;
|
||||
/* 24 */ unk32 mUnk_24;
|
||||
/* 28 */ bool mUnk_28;
|
||||
/* 2C */ UnkStruct_027e0ce0_38 *mUnk_2C;
|
||||
/* 30 */ UnkStruct_027e0ce0_3C *mUnk_30;
|
||||
/* 34 */ unk32 mUnk_34;
|
||||
/* 38 */ unk32 *mUnk_38;
|
||||
/* 38 */ unk32 mUnk_3C;
|
||||
/* 34 */ UnkStruct_027e0ce0_40 *mUnk_34;
|
||||
/* 38 */ PlayerLinkActor *mpPlayer;
|
||||
/* 3C */ PlayerActorBase *mpZelda; // either phantom zelda or human zelda
|
||||
/* 40 */
|
||||
|
||||
public:
|
||||
UnkStruct_027e0ce0_30_00(UnkStruct_027e0ce0_38 *param1, UnkStruct_027e0ce0_3C *param2, unk32 param3, unk32 *param4,
|
||||
unk32 param5);
|
||||
UnkStruct_027e0ce0_30_00(UnkStruct_027e0ce0_38 *param1, UnkStruct_027e0ce0_3C *param2, UnkStruct_027e0ce0_40 *param3,
|
||||
PlayerLinkActor *param4, PlayerActorBase *param5);
|
||||
~UnkStruct_027e0ce0_30_00();
|
||||
|
||||
// overlay 0
|
||||
void func_ov000_020a8af4(unk32 param1);
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020bbf7c(ItemManager *pItemMgr);
|
||||
};
|
||||
|
||||
class UnkStruct_027e0ce0_30_04 {
|
||||
@@ -163,6 +182,9 @@ private:
|
||||
public:
|
||||
UnkStruct_027e0ce0_30_08(unk32 param1);
|
||||
~UnkStruct_027e0ce0_30_08();
|
||||
|
||||
// overlay 21
|
||||
void func_ov021_020ebc68();
|
||||
};
|
||||
|
||||
class UnkStruct_027e0ce0_30 {
|
||||
@@ -180,9 +202,12 @@ public:
|
||||
void func_ov001_020bbf00(int index, unk32 param2);
|
||||
void func_ov001_020bbf24(UnkStruct_027e0ce0_38 *param1);
|
||||
void func_ov001_020bbf50(UnkStruct_027e0ce0_3C *param1);
|
||||
void func_ov001_020bbf7c(unk32 param1, unk32 *param2, unk32 param3);
|
||||
void func_ov001_020bbf7c(UnkStruct_027e0ce0_40 *param1, PlayerLinkActor *param2, PlayerActorBase *param3);
|
||||
void func_ov001_020bbfcc();
|
||||
void func_ov001_020bbff4(UnkStruct_027e0ce0_38 *param1);
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020bc5fc(ItemManager *pItemMgr);
|
||||
};
|
||||
|
||||
class UnkStruct_027e0ce0_34_20 {
|
||||
@@ -267,6 +292,9 @@ public:
|
||||
|
||||
// overlay 88
|
||||
void func_ov088_0216fbc4(unk32 param1, const UnkStruct_ov001_020c40f4 *param2);
|
||||
void func_ov088_0216fca0();
|
||||
void func_ov088_0216ff10();
|
||||
void func_ov088_0216fbf0(unk32 param1);
|
||||
};
|
||||
|
||||
class UnkStruct_ov031_020f3310_00 {
|
||||
@@ -448,20 +476,33 @@ public:
|
||||
|
||||
// overlay 26
|
||||
void func_ov026_020dc8f0();
|
||||
void func_ov026_020de908(UnkStruct_027e0ce0_30_00 *param1);
|
||||
void func_ov026_020dc918();
|
||||
void func_ov026_020dc9b0();
|
||||
void func_ov026_020dc9bc(const UnkStruct_ov001_020c40f4 *param1);
|
||||
void func_ov026_020de19c(unk32 param1, bool param2);
|
||||
void func_ov026_020de45c(void *param1);
|
||||
void func_ov026_020de46c();
|
||||
void func_ov026_020de49c();
|
||||
void func_ov026_020de908(UnkStruct_027e0ce0_30_00 *param1);
|
||||
};
|
||||
|
||||
class UnkStruct_027e0ce0_40_Base_14 {
|
||||
public:
|
||||
/* 00 */ TouchControl mTouchControl;
|
||||
/* 22 */ STRUCT_PAD(0x22, 0x40);
|
||||
/* 40 */ unk16 mUnk_40;
|
||||
/* 22 */ STRUCT_PAD(0x22, 0x24);
|
||||
/* 24 */ VecFx32 mUnk_24;
|
||||
/* 30 */ VecFx32 mUnk_30;
|
||||
/* 3C */ unk32 mUnk_3C;
|
||||
/* 40 */ s16 mUnk_40;
|
||||
/* 42 */ unk16 mUnk_42;
|
||||
/* 44 */ unk16 mUnk_44;
|
||||
/* 48 */ STRUCT_PAD(0x48, 0x60);
|
||||
/* 46 */ unk16 mUnk_46;
|
||||
/* 48 */ Vec2s mUnk_48;
|
||||
/* 4C */ Vec2s mUnk_4C;
|
||||
/* 50 */ unk32 mUnk_50;
|
||||
/* 54 */ unk32 mUnk_54;
|
||||
/* 58 */ unk32 mUnk_58;
|
||||
/* 5C */ unk16 mUnk_5C;
|
||||
/* 60 */
|
||||
|
||||
UnkStruct_027e0ce0_40_Base_14() :
|
||||
@@ -471,7 +512,13 @@ public:
|
||||
ptr->func_ov000_02096a9c();
|
||||
}
|
||||
|
||||
// overlay 0
|
||||
void func_ov000_02096a9c();
|
||||
void func_ov000_02096af4();
|
||||
unk32 func_ov000_02096b1c(BOOL param1);
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020be44c(unk32 param1, bool param2);
|
||||
};
|
||||
|
||||
class UnkStruct_027e0ce0_40_Base_74 {
|
||||
@@ -490,34 +537,46 @@ public:
|
||||
void func_ov031_020e0c34();
|
||||
|
||||
// overlay 102
|
||||
void func_ov102_0218323c(UnkStruct_027e0ce0_40_Base_14 *param1, unk32 param2);
|
||||
void func_ov102_0218323c(UnkStruct_027e0ce0_40_Base_14 *param1, BOOL param2);
|
||||
};
|
||||
|
||||
class UnkStruct_027e0ce0_40_Base_78 {
|
||||
public:
|
||||
/* 00 */ unk16 mUnk_00; // ActorRef?
|
||||
/* 02 */ unk16 mUnk_02;
|
||||
/* 00 */ ActorRef mRef;
|
||||
/* 04 */
|
||||
|
||||
const u32 GetData() const {
|
||||
return *(u32 *) this;
|
||||
const bool HasValue() const {
|
||||
u32 var_r2 = 0;
|
||||
return *(u32 *) &this->mRef != *(u32 *) &var_r2;
|
||||
}
|
||||
|
||||
const bool HasValue() const {
|
||||
return this->GetData() != 0;
|
||||
const bool UnkCheck1() {
|
||||
return this->mRef.UnkCheck2();
|
||||
}
|
||||
|
||||
UnkStruct_027e0ce0_40_Base_78();
|
||||
~UnkStruct_027e0ce0_40_Base_78();
|
||||
|
||||
// overlay 31
|
||||
u8 func_ov031_020dcfb4(void *param1);
|
||||
};
|
||||
|
||||
struct UnkParamStruct1 {
|
||||
u32 unk_00;
|
||||
};
|
||||
|
||||
class UnkStruct_027e0ce0_40_Base_7C_04 {
|
||||
public:
|
||||
/* 00 */ STRUCT_PAD(0x00, 0xB4);
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
/* 04 */ STRUCT_PAD(0x04, 0xB4);
|
||||
/* B4 */
|
||||
|
||||
UnkStruct_027e0ce0_40_Base_7C_04();
|
||||
~UnkStruct_027e0ce0_40_Base_7C_04();
|
||||
|
||||
// overlay 31
|
||||
void func_ov031_020dca3c();
|
||||
void func_ov031_020dcb60(UnkParamStruct1 param1);
|
||||
};
|
||||
|
||||
class UnkStruct_027e0ce0_40_Base_7C {
|
||||
@@ -532,9 +591,12 @@ public:
|
||||
~UnkStruct_027e0ce0_40_Base_7C();
|
||||
|
||||
// overlay 0
|
||||
void func_ov000_020968b8();
|
||||
void func_ov000_020968e0();
|
||||
bool func_ov000_020968fc();
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020be2ec(UnkStruct_027e0ce0_40_Base_14 *param1, bool param2, UnkParamStruct1 param3);
|
||||
void func_ov017_020be434();
|
||||
};
|
||||
|
||||
@@ -569,12 +631,13 @@ class UnkStruct_027e0ce0_40_Base_94_Base : public UnkStruct_027e0ce0_40_Base_94_
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 14 */ ActorRef mUnk_14;
|
||||
/* 18 */ unk32 mUnk_18;
|
||||
/* 18 */ ActorRef mUnk_18;
|
||||
/* 1C */ ActorRef mUnk_1C;
|
||||
/* 20 */ unk32 mUnk_20;
|
||||
/* 24 */ STRUCT_PAD(0x24, 0x48);
|
||||
/* 20 */ Vec2s mTouchPosLast;
|
||||
/* 24 */ unk32 mUnk_24;
|
||||
/* 28 */ STRUCT_PAD(0x28, 0x48);
|
||||
/* 48 */ ActorRef mUnk_48;
|
||||
/* 4C */ unk32 mUnk_4C;
|
||||
/* 4C */ u16 mUnk_4C;
|
||||
/* 50 */
|
||||
|
||||
UnkStruct_027e0ce0_40_Base_94_Base(unk32 param1);
|
||||
@@ -587,15 +650,14 @@ public:
|
||||
/* 54 */ UnkStruct_027e0ce0_40_Base_94 *mUnk_54;
|
||||
/* 58 */ UnkStruct_027e0ce0_40_Base_94_50 *mUnk_58;
|
||||
/* 5C */ unk32 mUnk_5C; // seems to be the walking speed of link??
|
||||
/* 60 */ unk16 mUnk_60;
|
||||
/* 62 */ unk16 mUnk_62;
|
||||
/* 64 */ unk8 mUnk_64;
|
||||
/* 65 */ unk8 mUnk_65;
|
||||
/* 66 */ unk8 mUnk_66;
|
||||
/* 67 */ unk8 mUnk_67;
|
||||
/* 68 */ unk8 mUnk_68;
|
||||
/* 69 */ unk8 mUnk_69;
|
||||
/* 6A */ unk8 mUnk_6A;
|
||||
/* 60 */ Vec2s mUnk_60;
|
||||
/* 64 */ u8 mUnk_64;
|
||||
/* 65 */ u8 mUnk_65;
|
||||
/* 66 */ u8 mUnk_66;
|
||||
/* 67 */ u8 mUnk_67;
|
||||
/* 68 */ u8 mUnk_68;
|
||||
/* 69 */ u8 mUnk_69;
|
||||
/* 6A */ u8 mUnk_6A;
|
||||
/* 6C */ unk32 mUnk_6C;
|
||||
/* 70 */
|
||||
|
||||
@@ -604,6 +666,10 @@ public:
|
||||
|
||||
// overlay 0
|
||||
void func_ov000_0208aee4();
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020bd478();
|
||||
void func_ov017_020bd300(UnkStruct_027e0ce0_40_Base_14 *param1, unk32 param2, bool param3);
|
||||
};
|
||||
|
||||
typedef u16 UnkFlags3;
|
||||
@@ -641,10 +707,38 @@ public:
|
||||
/* 107 */ unk8 mUnk_107;
|
||||
/* 108 */
|
||||
|
||||
ItemManager *GetItemMgr() const {
|
||||
return this->mpItemManager;
|
||||
}
|
||||
|
||||
UnkStruct_027e0ce0_40_Base_78 *GetUnk78() const {
|
||||
return this->mUnk_078;
|
||||
}
|
||||
|
||||
const bool IsUnk78() {
|
||||
return this->mUnk_078 != NULL;
|
||||
}
|
||||
|
||||
const BOOL Unk78HasValue() const {
|
||||
return this->mUnk_078 != NULL && this->mUnk_078->HasValue();
|
||||
}
|
||||
|
||||
const bool CheckUnk104(UnkFlags3 flag) const {
|
||||
return GET_FLAG2(this->mUnk_104, flag);
|
||||
}
|
||||
|
||||
const bool UnkCheck1() {
|
||||
bool ret = false;
|
||||
|
||||
if (this->IsUnk78() && this->mUnk_078->UnkCheck1()) {
|
||||
ret = true;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
inline const bool UnknownInline1(bool param1, unk32 param2);
|
||||
|
||||
UnkStruct_027e0ce0_40_Base(unk32 param1, void *param2, ItemManager *pItemMgr);
|
||||
~UnkStruct_027e0ce0_40_Base();
|
||||
|
||||
@@ -692,7 +786,7 @@ public:
|
||||
/* 00 */ virtual void vfunc_00() override;
|
||||
|
||||
// overlay 102
|
||||
void func_ov102_02182e54(unk32 param1, unk32 param2, unk32 param3);
|
||||
void func_ov102_02182e54(unk32 param1, VecFx32 *param2, unk32 param3);
|
||||
};
|
||||
|
||||
class UnkStruct_027e0ce0_40_14C {
|
||||
@@ -704,12 +798,11 @@ public:
|
||||
~UnkStruct_027e0ce0_40_14C();
|
||||
|
||||
// overlay 17
|
||||
void func_ov093_02168e24(unk32 param1);
|
||||
void func_ov093_02168e24(void *param1);
|
||||
|
||||
// overlay 93
|
||||
void func_ov093_02168850();
|
||||
bool func_ov092_021689e8(unk32 param1, UnkStruct_027e0ce0_40 *param2, PlayerLinkActor *param3,
|
||||
UnkStruct_027e0ce0_40_328 *param4);
|
||||
bool func_ov092_021689e8(bool param1, UnkStruct_027e0ce0_40 *param2, PlayerLinkActor *pPlayer, PlayerActorBase *pZelda);
|
||||
};
|
||||
|
||||
class UnkStruct_027e0ce0_40_150 {
|
||||
@@ -725,35 +818,6 @@ public:
|
||||
bool func_ov096_02179c54(bool param1, bool param2);
|
||||
};
|
||||
|
||||
class UnkStruct_027e0ce0_40_328 {
|
||||
public:
|
||||
/* 000 */ STRUCT_PAD(0x00, 0x98);
|
||||
/* 098 */ PlayerActorBase *mpPlayer;
|
||||
/* 09C */ STRUCT_PAD(0x9C, 0xCC);
|
||||
/* 0CC */ bool mUnk_0CC;
|
||||
/* 0CD */ STRUCT_PAD(0xCD, 0xD0);
|
||||
/* 0D0 */ unk32 mUnk_0D0;
|
||||
/* 0D4 */ unk32 mUnk_0D4;
|
||||
/* 0D8 */ unk32 mUnk_0D8;
|
||||
/* 0DC */ unk32 mUnk_0DC;
|
||||
/* 0E0 */ STRUCT_PAD(0xE0, 0x154);
|
||||
/* 154 */
|
||||
|
||||
UnkStruct_027e0ce0_40_328(void *param1, UnkStruct_027e0ce0_40 *param2, UnkStruct_027e0ce0_40_150 *param3,
|
||||
ItemFlag *pEquippedItem);
|
||||
~UnkStruct_027e0ce0_40_328();
|
||||
|
||||
// overlay 93
|
||||
void func_ov093_0216d0d4();
|
||||
void func_ov093_0216d160();
|
||||
void func_ov093_0216d1cc(unk32 param1, const UnkStruct_ov001_020c40f4 *param2, bool param3, bool param4);
|
||||
void func_ov093_0216d5b8(unk32 param1);
|
||||
void func_ov093_0216f71c(unk32 *param1);
|
||||
void func_ov093_0216de30(unk32 param1, unk32 param2);
|
||||
void func_ov093_0216dec8(unk32 param1);
|
||||
void func_ov093_0216e1a4(unk32 param1);
|
||||
};
|
||||
|
||||
// land player stuff
|
||||
class UnkStruct_027e0ce0_40 : public UnkStruct_027e0ce0_40_Base {
|
||||
public:
|
||||
@@ -762,9 +826,9 @@ public:
|
||||
/* 14C */ UnkStruct_027e0ce0_40_14C *mUnk_14C;
|
||||
/* 150 */ UnkStruct_027e0ce0_40_150 *mUnk_150;
|
||||
/* 154 */ PlayerLinkActor mPlayer;
|
||||
/* 328 */ UnkStruct_027e0ce0_40_328 *mUnk_328;
|
||||
/* 32C */ PlayerLinkActor *mpPlayer; // set to mPlayer
|
||||
/* 330 */ UnkStruct_027e0ce0_40_328 *mUnk_330; // set to mUnk_328
|
||||
/* 328 */ PlayerZeldaActor *mpZelda;
|
||||
/* 32C */ PlayerLinkActor *mpPlayer; // set to mPlayer
|
||||
/* 330 */ PlayerZeldaActor *mUnk_330; // set to mpZelda
|
||||
/* 334 */ ItemFlag mEquippedItem;
|
||||
/* 338 */ bool mIsSceneTowerInsideStairs;
|
||||
/* 339 */ bool mIsSceneTowerOutsideStairs;
|
||||
@@ -779,10 +843,15 @@ public:
|
||||
void func_ov000_02088060(bool param1);
|
||||
|
||||
// overlay 17
|
||||
unk32 func_ov017_020bcde8(unk32 param1, ItemManager *pItemMgr);
|
||||
bool func_ov017_020bc95c(bool param1);
|
||||
void func_ov017_020bca40(bool param1, unk32 param2);
|
||||
bool func_ov017_020bcde8(bool param1);
|
||||
|
||||
// overlay 93
|
||||
void func_ov093_02168020(unk32 param1);
|
||||
void func_ov093_021680fc(unk32 param1);
|
||||
void func_ov093_02168220();
|
||||
void func_ov093_02168258();
|
||||
|
||||
// overlay 101
|
||||
bool func_ov101_02182fb4(bool param1);
|
||||
@@ -791,10 +860,10 @@ public:
|
||||
unk32 param4, ItemManager *pItemMgr, UnkStruct_027e0ce0_30 *param6, bool param7, bool param8);
|
||||
|
||||
// overlay 102
|
||||
void func_ov102_0218303c(unk32 param1, ItemManager *pItemMgr);
|
||||
void func_ov102_0218303c(bool param1, ItemManager *pItemMgr);
|
||||
void func_ov102_02183180(unk32 param1, bool param2);
|
||||
void func_ov102_021831b4(unk32 param1);
|
||||
void func_ov102_021831f0(unk32 param1);
|
||||
void func_ov102_021831b4(void *param1);
|
||||
void func_ov102_021831f0(void *param1);
|
||||
};
|
||||
|
||||
union UnkStruct_027e0478 {
|
||||
@@ -848,10 +917,15 @@ public:
|
||||
void func_ov000_0208ba94(unk32 param1, VecFx32 *param2);
|
||||
void func_ov000_0208bacc(unk32 param1, VecFx32 *param2);
|
||||
void func_ov000_0208bbd4(unk32 param1, VecFx32 *param2, u16 param3);
|
||||
bool func_ov000_0208bc1c(unk32 param1, unk32 param2, unk32 param3, unk32 param4, unk32 param5, unk32 param6);
|
||||
bool func_ov000_0208bc1c(unk32 param1, unk32 param2, void *param3, unk32 param4, void *param5, unk32 param6);
|
||||
bool func_ov000_0208bc1c(unk32 param1, unk32 param2, unk32 param3, unk32 param4, void *param5, unk32 param6);
|
||||
bool func_ov000_0208bc1c(unk32 param1, unk32 param2, unk32 param4, void *param5, unk32 param6);
|
||||
void func_ov000_0208bc9c(unk32 param1, unk32 param2);
|
||||
void func_ov000_0208bd20(bool param1, unk32 param2, unk32 param3);
|
||||
void func_ov000_0208bd30(bool param1, unk32 param2, unk32 param3, unk32 param4);
|
||||
bool func_ov000_0208be0c(ActorRef param1);
|
||||
bool func_ov000_0208be70(VecFx32 param1);
|
||||
bool func_ov000_0208bf34(unk32 param1);
|
||||
|
||||
static UnkStruct_027e0ce0_34 *func_ov000_0205c904();
|
||||
|
||||
@@ -870,7 +944,11 @@ public:
|
||||
static void Destroy();
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020bd5dc(unk32 param1);
|
||||
void func_ov017_020bd4a0(unk32 param1, bool param2);
|
||||
void func_ov017_020bd568(unk32 param1);
|
||||
void func_ov017_020bd5c4(void *param1);
|
||||
void func_ov017_020bd5dc(void *param1);
|
||||
void func_ov017_020bd644(void *param1);
|
||||
void func_ov017_020bd69c();
|
||||
};
|
||||
|
||||
|
||||
@@ -6,6 +6,9 @@
|
||||
class UnkStruct_027e0cf4 {
|
||||
public:
|
||||
~UnkStruct_027e0cf4();
|
||||
|
||||
// overlay 21
|
||||
void func_ov021_020f6f58(unk32 param1, unk32 param2, void *param3, unk32 param4, unk32 param5);
|
||||
void func_ov021_020f8cdc();
|
||||
void func_ov021_020f8d20();
|
||||
};
|
||||
|
||||
@@ -101,7 +101,7 @@ public:
|
||||
class UnkStruct_027e0cf8_08 {
|
||||
public:
|
||||
/* 000 */ UnkStruct_027e0cf8_08_00 *mUnk_000;
|
||||
/* 004 */ unk32 mUnk_004;
|
||||
/* 004 */ unk32 mUnk_004; // volatile?
|
||||
/* 008 */ unk32 mUnk_008;
|
||||
/* 00C */ unk32 mUnk_00C;
|
||||
/* 010 */ UnkArrayDataType1 mUnk_010;
|
||||
@@ -114,6 +114,10 @@ public:
|
||||
UnkStruct_027e0cf8_08();
|
||||
~UnkStruct_027e0cf8_08();
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020be8a8();
|
||||
|
||||
// overlay 24
|
||||
void func_ov024_020d32b4(unk8 *param1);
|
||||
void func_ov024_020d32d8();
|
||||
void func_ov024_020d32e8(Vec2s *param1);
|
||||
|
||||
@@ -25,11 +25,13 @@ public:
|
||||
bool func_ov031_020d9758();
|
||||
bool func_ov031_020d97e4();
|
||||
bool func_ov031_020d97f4();
|
||||
bool TryItemGive(ItemId itemId);
|
||||
void func_ov031_020d9844();
|
||||
void func_ov031_020d9854(VecFx32 *param1, fx32 param2);
|
||||
void func_ov031_020d994c();
|
||||
void func_ov031_020d996c();
|
||||
bool TryItemGive(ItemId itemId);
|
||||
unk32 func_ov031_020d9a4c(unk32 param1);
|
||||
bool func_ov031_020d9ab8();
|
||||
};
|
||||
|
||||
extern UnkStruct_027e0d34 *data_027e0d34;
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
#pragma once
|
||||
|
||||
#include "Actor/ActorRef.hpp"
|
||||
#include "global.h"
|
||||
#include "nitro/fx.h"
|
||||
#include "types.h"
|
||||
|
||||
class UnkStruct_027e0d38 : public AutoInstance<UnkStruct_027e0d38> {
|
||||
@@ -9,6 +11,9 @@ public:
|
||||
|
||||
UnkStruct_027e0d38();
|
||||
|
||||
// overlay 26
|
||||
unk32 func_ov026_020d9c14(ActorRef ref, VecFx32 *pPos, VecFx32 *pVel);
|
||||
|
||||
// overlay 31
|
||||
bool func_ov031_020d9bec();
|
||||
bool func_ov031_020d9c04(unk32 param1, unk32 param2, unk32 param3);
|
||||
|
||||
@@ -9,6 +9,7 @@ public:
|
||||
void func_ov071_0215e8f8();
|
||||
void func_ov071_0215e9ac();
|
||||
void func_ov071_0215eac8();
|
||||
void func_ov071_0215eb18();
|
||||
};
|
||||
|
||||
extern UnkStruct_027e0d70 *data_027e0d70;
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
#include "math.hpp"
|
||||
|
||||
class PlayerLinkActor_A0;
|
||||
class UnkStruct_027e0ce0_40;
|
||||
|
||||
class UnkStruct_ov000_0208f820_14 {
|
||||
public:
|
||||
@@ -102,24 +103,6 @@ public:
|
||||
/* 1C */ ItemId mUnk_1C;
|
||||
};
|
||||
|
||||
class UnkStruct_ov000_0208f820_24 {
|
||||
public:
|
||||
/* 00 */ unk8 mUnk_00[0x24];
|
||||
/* 24 */ unk8 mUnk_24;
|
||||
/* 25 */ unk8 mUnk_25;
|
||||
/* 26 */ STRUCT_PAD(0x26, 0x78);
|
||||
/* 78 */ void **mUnk_78;
|
||||
/* 7C */ STRUCT_PAD(0x7C, 0x94);
|
||||
/* 94 */ unk32 mUnk_94;
|
||||
/* 98 */ unk32 mUnk_98;
|
||||
/* 9C */ unk32 mUnk_9C;
|
||||
/* A0 */ STRUCT_PAD(0xA0, 0xFE);
|
||||
/* FE */ unk8 mUnk_FE;
|
||||
/* FF */ unk8 mUnk_FF;
|
||||
/* 100 */ unk32 mUnk_100;
|
||||
/* 104 */ u16 mUnk_104;
|
||||
};
|
||||
|
||||
class UnkStruct_ov000_0208f820_04 {
|
||||
public:
|
||||
/* 00 */ ActorRef mUnk_00;
|
||||
@@ -154,7 +137,7 @@ public:
|
||||
/* 1B */ unk8 mUnk_1B;
|
||||
/* 1C */ unk32 mUnk_1C;
|
||||
/* 20 */ unk32 mUnk_20;
|
||||
/* 24 */ UnkStruct_ov000_0208f820_24 *mUnk_24;
|
||||
/* 24 */ UnkStruct_027e0ce0_40 *mUnk_24;
|
||||
/* 28 */ UnkStruct_ov000_0208f820_28 *mUnk_28;
|
||||
/* 2C */ UnkStruct_ov000_0208f820_2c *mUnk_2C;
|
||||
/* 30 */ PlayerLinkActor_A0 *mUnk_30;
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
#pragma once
|
||||
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
class UnkStruct_ov016_020b8310 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
|
||||
UnkStruct_ov016_020b8310();
|
||||
~UnkStruct_ov016_020b8310();
|
||||
|
||||
/* 00 */ virtual void vfunc_00();
|
||||
/* 04 */ virtual void vfunc_04();
|
||||
/* 08 */ virtual void vfunc_08();
|
||||
/* 0C */ virtual void vfunc_0C(void *param1);
|
||||
/* 10 */ virtual void vfunc_10(void *param1);
|
||||
};
|
||||
|
||||
extern UnkStruct_ov016_020b8310 data_ov016_020b8310;
|
||||
@@ -1,17 +1,32 @@
|
||||
#pragma once
|
||||
|
||||
#include "global.h"
|
||||
#include "nitro/os/thread.h"
|
||||
#include "types.h"
|
||||
|
||||
class UnkStruct_ov017_020c3f70 {
|
||||
class UnkStruct_ov017_020c3f70_Base {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
/* 00 (vtable) */
|
||||
/* 04 */ OSThread mThread;
|
||||
/* C4 */ unk32 mUnk_C4;
|
||||
/* C8 */ unk32 mUnk_C8;
|
||||
/* CC */
|
||||
|
||||
UnkStruct_ov017_020c3f70();
|
||||
UnkStruct_ov017_020c3f70_Base(); // func_02013c24
|
||||
|
||||
// data_0204375c
|
||||
/* 00 */ virtual ~UnkStruct_ov017_020c3f70_Base(); // func_02013cd4 & func_02013d30
|
||||
/* 08 */ virtual void vfunc_08();
|
||||
};
|
||||
|
||||
class UnkStruct_ov017_020c3f70 : public UnkStruct_ov017_020c3f70_Base {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* CC */
|
||||
|
||||
// data_ov017_020c3f08
|
||||
/* 00 */ virtual ~UnkStruct_ov017_020c3f70();
|
||||
/* 08 */ virtual void vfunc_08(); //! TODO: probably inherited?
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
|
||||
void func_ov017_020bba78();
|
||||
void func_ov017_020bba94();
|
||||
|
||||
@@ -10,5 +10,5 @@ public:
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 1C */ virtual void vfunc_1C() override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
};
|
||||
|
||||
@@ -11,6 +11,6 @@ public:
|
||||
UnkStruct_ov031_02114870();
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(unk32 param1) override;
|
||||
/* 2C */ virtual void vfunc_2C(Actor_vfunc_30 *param1) override;
|
||||
/* 54 */ virtual G3d_Model *vfunc_54();
|
||||
};
|
||||
|
||||
+6
-2
@@ -4,7 +4,7 @@
|
||||
|
||||
#include <nitro/pad.h>
|
||||
|
||||
#define CHECK_BUTTON_COMBO(value, btn) ((value) & (btn))
|
||||
#define CHECK_BUTTON_COMBO(value, btn) (((value) & (btn)) != 0)
|
||||
|
||||
struct Input {
|
||||
/* 00 */ u16 cur;
|
||||
@@ -16,8 +16,12 @@ struct Input {
|
||||
this->Init();
|
||||
}
|
||||
|
||||
BOOL CheckCurButtonCombo(u16 combo) {
|
||||
return CHECK_BUTTON_COMBO(this->cur, combo);
|
||||
}
|
||||
|
||||
void Init();
|
||||
unk32 func_02013c08(u16 param1);
|
||||
unk32 func_02013c08(u32 param1);
|
||||
unk32 func_02013b24(unk32 param1);
|
||||
unk32 func_02013bbc();
|
||||
};
|
||||
|
||||
@@ -369,9 +369,47 @@ union Vec2sb {
|
||||
}
|
||||
};
|
||||
|
||||
union Vec3s {
|
||||
struct {
|
||||
/* 0 */ s16 x;
|
||||
/* 2 */ s16 y;
|
||||
/* 4 */ s16 z;
|
||||
/* 6 */
|
||||
};
|
||||
s16 coords[3];
|
||||
|
||||
void operator=(const Vec3s &from) {
|
||||
this->x = from.x;
|
||||
this->y = from.y;
|
||||
this->z = from.z;
|
||||
}
|
||||
|
||||
Vec3s() {}
|
||||
|
||||
Vec3s(Vec3s *from) {
|
||||
#if __MWERKS__
|
||||
this->coords = from->coords;
|
||||
#else
|
||||
this->x = from->x;
|
||||
this->y = from->y;
|
||||
this->z = from->z;
|
||||
#endif
|
||||
}
|
||||
|
||||
Vec3s(s16 X, s16 Y, s16 Z) {
|
||||
x = X;
|
||||
y = Y;
|
||||
y = Z;
|
||||
}
|
||||
};
|
||||
|
||||
struct UnkAngleStruct {
|
||||
union {
|
||||
u16 angle;
|
||||
s16 angle_signed;
|
||||
};
|
||||
|
||||
UnkAngleStruct() {}
|
||||
UnkAngleStruct(s16 angle) :
|
||||
angle_signed(angle) {}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user