mirror of
https://github.com/zeldaret/st
synced 2026-08-15 12:58:54 -04:00
Misc Stuff 6 (#78)
* gcc fixes * document random things in UnkStruct_027e09b8_00 * match func_ov001_020ba670 and rabbit docs * match func_ov026_0211f394 * fix build issues * match func_ov026_0211e3e0 * match func_ov026_02102924 * move structs to header * document train rope thing * MapObject OK and ActorRef stuff * match more actor funcs * fix regressions * fix build issues * more regressions fixes * name keyt grab func * UnkSubStruct19 -> CellAnimObject (based on the only assert string) * fix build issues due to merge * Actor::mUnk_4C -> Actor::mState + related changes * create GetActorPtr template inline for Actor_c4 * ActorUnk_ov000_020a8bb0 -> Actor_Derived1 * actor: add comments about mUnk_50/52 and change type of mAngle
This commit is contained in:
+32
-10
@@ -101,6 +101,12 @@ enum ActorFlag_ {
|
||||
|
||||
class Actor_c4;
|
||||
|
||||
struct ActorGrabParams {
|
||||
/* 00 */ u16 unk_00;
|
||||
/* 02 */ u16 unk_02;
|
||||
/* 04 */
|
||||
};
|
||||
|
||||
class Actor_9c {
|
||||
public:
|
||||
/* 00 (vtable) */
|
||||
@@ -115,6 +121,7 @@ public:
|
||||
};
|
||||
|
||||
typedef s16 ActorState;
|
||||
#define ActorState_None -1
|
||||
|
||||
class Actor : public SysObject {
|
||||
public:
|
||||
@@ -122,7 +129,7 @@ public:
|
||||
/* 04 */ VecFx32 mPos;
|
||||
/* 10 */ VecFx32 mPrevPos;
|
||||
/* 1C */ VecFx32 mVel;
|
||||
/* 28 */ s16 mAngle;
|
||||
/* 28 */ fx16 mAngle;
|
||||
/* 2A */ unk16 mUnk_2A;
|
||||
/* 2C */ unk32 mUnk_2C; // gravity?
|
||||
/* 30 */ Cylinder *mUnk_30;
|
||||
@@ -133,12 +140,11 @@ public:
|
||||
/* 44 */ u16 mUnk_44;
|
||||
/* 46 */ unk16 mUnk_46;
|
||||
/* 48 */ unk16 mUnk_48;
|
||||
/* 4A */ unk8 mUnk_4A;
|
||||
/* 4A */ unk8 mUnk_4B;
|
||||
/* 4C */ ActorState mUnk_4C;
|
||||
/* 4E */ s16 mUnk_4E;
|
||||
/* 50 */ volatile u16 mUnk_50;
|
||||
/* 52 */ u16 mUnk_52;
|
||||
/* 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;
|
||||
/* 58 */ ActorFlags mFlags[1];
|
||||
/* 5C */ ActorParams mUnk_5C;
|
||||
@@ -146,7 +152,7 @@ public:
|
||||
/* 90 */ ActorProfile *mpProfile;
|
||||
/* 94 */
|
||||
|
||||
/* 00 */ virtual void vfunc_00(VecFx32 *param1);
|
||||
/* 00 */ virtual void GetOffsetPos(VecFx32 *pPos) const;
|
||||
/* 04 */ virtual bool vfunc_04();
|
||||
/* 08 */ virtual unk16 vfunc_08();
|
||||
/* 0C */ virtual unk8 vfunc_0c();
|
||||
@@ -160,8 +166,8 @@ public:
|
||||
/* 2C */ virtual void vfunc_2c(unk32 param1);
|
||||
/* 30 */ virtual void vfunc_30();
|
||||
/* 34 */ virtual unk32 vfunc_34();
|
||||
/* 38 */ virtual unk32 vfunc_38(unk32 param1);
|
||||
/* 3C */ virtual bool vfunc_3c(unk32 param2, VecFx32 *param3);
|
||||
/* 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();
|
||||
@@ -178,6 +184,10 @@ public:
|
||||
UNSET_FLAG(this->mFlags, ActorFlag_Alive);
|
||||
}
|
||||
|
||||
bool IsAlive() {
|
||||
return GET_FLAG(this->mFlags, ActorFlag_Alive);
|
||||
}
|
||||
|
||||
Actor();
|
||||
|
||||
ActorId GetActorId();
|
||||
@@ -252,6 +262,10 @@ public:
|
||||
/* 0C */ virtual void vfunc_0c(unk32 param1);
|
||||
/* 10 */
|
||||
|
||||
template <typename T> T *GetActorPtr() {
|
||||
return (T *) this->mUnk_20;
|
||||
}
|
||||
|
||||
Actor_c4(Actor *param1) :
|
||||
Actor_c4_Base(¶m1->mRef, 0) {}
|
||||
};
|
||||
@@ -275,3 +289,11 @@ public:
|
||||
};
|
||||
|
||||
extern UnkStruct_ov000_020b539c data_ov000_020b539c_eur;
|
||||
|
||||
struct UnkActorDataStruct1 {
|
||||
/* 00 */ unk32 unk_00[4];
|
||||
/* 10 */ unk32 unk_10;
|
||||
/* 14 */ unk32 unk_14;
|
||||
/* 18 */
|
||||
};
|
||||
extern "C" void func_ov000_02099ddc(void *thisx, UnkActorDataStruct1 param1, unk32 param2, unk32 param3);
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
class ActorEventIcon : public Actor {
|
||||
public:
|
||||
/* 000 (base) */
|
||||
/* 094 */ UnkSubStruct19 mUnk_094; // event icon
|
||||
/* 094 */ CellAnimObject mUnk_094; // event icon
|
||||
/* 10C */ unk16 mUnk_10C;
|
||||
/* 110 */ unk16 mUnk_10E; // pad?
|
||||
|
||||
|
||||
@@ -5,6 +5,16 @@
|
||||
#include "ActorRupee.hpp"
|
||||
#include "types.h"
|
||||
|
||||
enum ActorHeartState_ {
|
||||
ActorHeartState_0 = 0,
|
||||
ActorHeartState_1 = 1,
|
||||
ActorHeartState_2 = 2,
|
||||
ActorHeartState_3 = 3,
|
||||
ActorHeartState_4 = 4,
|
||||
ActorHeartState_5 = 5,
|
||||
ActorHeartState_Max,
|
||||
};
|
||||
|
||||
class ActorHeart_c4 : public Actor_c4 {
|
||||
public:
|
||||
ActorHeart_c4(Actor *param1);
|
||||
@@ -45,14 +55,15 @@ public:
|
||||
/* 4C */ virtual ~ActorHeart() override {};
|
||||
|
||||
void func_ov031_020f0750();
|
||||
static void func_ov031_020eed64(ActorRef *pOutRef, const VecFx32 *pPos, u32 params, ActorRef ref);
|
||||
void func_ov031_020ef1b4(unk16 param_2);
|
||||
void SetState(ActorState state);
|
||||
void func_ov031_020ef208();
|
||||
void func_ov031_020ef4a8();
|
||||
void func_ov031_020ef528();
|
||||
void func_ov031_020ef570();
|
||||
void func_ov031_020ef698();
|
||||
|
||||
static void func_ov031_020eed64(ActorRef *pOutRef, const VecFx32 *pPos, u32 params, ActorRef ref);
|
||||
|
||||
// data_ov031_02113d74
|
||||
void func_ov031_020ef2f8();
|
||||
void func_ov031_020ef334();
|
||||
|
||||
@@ -20,21 +20,21 @@ enum ItemDropType_ {
|
||||
ItemDropType_Max = 10,
|
||||
};
|
||||
|
||||
enum ActorDroppedItemState_ {
|
||||
ActorDroppedItemState_0 = 0,
|
||||
ActorDroppedItemState_1 = 1,
|
||||
ActorDroppedItemState_2 = 2,
|
||||
ActorDroppedItemState_3 = 3,
|
||||
ActorDroppedItemState_4 = 4,
|
||||
ActorDroppedItemState_5 = 5,
|
||||
ActorDroppedItemState_6 = 6,
|
||||
ActorDroppedItemState_Max,
|
||||
enum ActorItemDropState_ {
|
||||
ActorItemDropState_0 = 0,
|
||||
ActorItemDropState_1 = 1,
|
||||
ActorItemDropState_2 = 2,
|
||||
ActorItemDropState_3 = 3,
|
||||
ActorItemDropState_4 = 4,
|
||||
ActorItemDropState_5 = 5,
|
||||
ActorItemDropState_6 = 6,
|
||||
ActorItemDropState_Max,
|
||||
};
|
||||
|
||||
class ActorDroppedItem_c4 : public Actor_c4 {
|
||||
class ActorItemDrop_c4 : public Actor_c4 {
|
||||
public:
|
||||
// func_ov031_020fa9f8
|
||||
ActorDroppedItem_c4(Actor *param1);
|
||||
ActorItemDrop_c4(Actor *param1);
|
||||
|
||||
virtual bool vfunc_00(ActorRef ref, unk32 param2) override;
|
||||
virtual void vfunc_04() override;
|
||||
@@ -58,7 +58,7 @@ public:
|
||||
/* 0D8 */ fx32 mUnk_D8;
|
||||
/* 0DC */ ActorRef mUnk_DC;
|
||||
/* 0E0 */ ActorRef mUnk_E0;
|
||||
/* 0E4 */ ActorDroppedItem_c4 mUnk_E4;
|
||||
/* 0E4 */ ActorItemDrop_c4 mUnk_E4;
|
||||
/* 108 */ unk16 mUnk_108;
|
||||
/* 10A */ STRUCT_PAD(0x10A, 0x10C);
|
||||
/* 10C */ VecFx32 mUnk_10C;
|
||||
@@ -83,24 +83,28 @@ public:
|
||||
/* 4C */ virtual ~ActorItemDrop() override;
|
||||
|
||||
void func_ov031_020fa260();
|
||||
void func_ov031_020fa424(ActorState state);
|
||||
void func_ov031_020fa468();
|
||||
void func_ov031_020fa46c();
|
||||
void func_ov031_020fa494();
|
||||
void func_ov031_020fa4a0();
|
||||
void func_ov031_020fa524();
|
||||
void func_ov031_020fa568();
|
||||
void func_ov031_020fa5d8();
|
||||
void func_ov031_020fa5f0();
|
||||
void func_ov031_020fa650();
|
||||
void func_ov031_020fa664();
|
||||
void func_ov031_020fa668();
|
||||
void func_ov031_020fa678();
|
||||
void func_ov031_020fa6c8();
|
||||
void func_ov031_020fa72c();
|
||||
void SetState(ActorState state);
|
||||
void func_ov031_020fa900();
|
||||
|
||||
static void func_ov031_020f9f8c(ActorRef *pOutRef, const VecFx32 *pPos, u32 params, ActorRef ref);
|
||||
|
||||
// data_ov031_02114bb0
|
||||
void func_ov031_020fa46c();
|
||||
void func_ov031_020fa4a0();
|
||||
void func_ov031_020fa568();
|
||||
void func_ov031_020fa5f0();
|
||||
void func_ov031_020fa664();
|
||||
void func_ov031_020fa678();
|
||||
void func_ov031_020fa72c();
|
||||
|
||||
// data_ov031_02114be8
|
||||
void func_ov031_020fa468();
|
||||
void func_ov031_020fa494();
|
||||
void func_ov031_020fa524();
|
||||
void func_ov031_020fa5d8();
|
||||
void func_ov031_020fa650();
|
||||
void func_ov031_020fa668();
|
||||
void func_ov031_020fa6c8();
|
||||
};
|
||||
|
||||
class ActorProfileArrowDrop : public ActorProfile {
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "Actor/ActorUnk_ov000_020a8bb0.hpp"
|
||||
#include "Actor/ActorRef.hpp"
|
||||
#include "Actor/Actor_Derived1.hpp"
|
||||
#include "System/SysNew.hpp"
|
||||
#include "Unknown/Common.hpp"
|
||||
#include "files.h"
|
||||
@@ -43,8 +44,8 @@ public:
|
||||
ActorManager();
|
||||
~ActorManager();
|
||||
|
||||
Actor *func_01fff3b4(ActorRef ref);
|
||||
Actor **func_01fff350(void *param1, Actor **ppActorTable);
|
||||
Actor *func_01fff3b4(ActorRef ref);
|
||||
|
||||
void func_ov000_02096e44(int index);
|
||||
unk32 func_ov000_0209704c();
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
#include "Actor/Actor.hpp"
|
||||
#include "Actor/ActorManager.hpp"
|
||||
#include "Actor/ActorProfile.hpp"
|
||||
#include "Actor/ActorUnk_ov000_020a8bb0.hpp"
|
||||
#include "Actor/Actor_Derived1.hpp"
|
||||
#include "Player/PlayerGet.hpp"
|
||||
#include "types.h"
|
||||
|
||||
@@ -19,6 +19,23 @@ enum RupeeId_ {
|
||||
/* 7 */ RupeeId_7,
|
||||
};
|
||||
|
||||
enum ActorRupeeState_ {
|
||||
ActorRupeeState_0 = 0,
|
||||
ActorRupeeState_1 = 1,
|
||||
ActorRupeeState_2 = 2,
|
||||
ActorRupeeState_3 = 3,
|
||||
ActorRupeeState_4 = 4,
|
||||
ActorRupeeState_5 = 5,
|
||||
ActorRupeeState_6 = 6,
|
||||
ActorRupeeState_7 = 7,
|
||||
ActorRupeeState_8 = 8,
|
||||
ActorRupeeState_9 = 9,
|
||||
ActorRupeeState_10 = 10,
|
||||
ActorRupeeState_11 = 11,
|
||||
ActorRupeeState_12 = 12,
|
||||
ActorRupeeState_Max,
|
||||
};
|
||||
|
||||
class ActorRupee_c4 : public Actor_c4 {
|
||||
public:
|
||||
ActorRupee_c4(Actor *param1);
|
||||
@@ -91,7 +108,7 @@ public:
|
||||
void func_ov031_020e9740();
|
||||
void func_ov031_020e9838();
|
||||
void func_ov031_020e98c4();
|
||||
void func_ov031_020e9904(unk32 param1);
|
||||
void SetState(ActorState state);
|
||||
void func_ov031_020e9b88();
|
||||
void func_ov031_020e9be8();
|
||||
bool func_ov031_020e9d54();
|
||||
|
||||
@@ -24,13 +24,13 @@ public:
|
||||
|
||||
ActorUnkKEYT();
|
||||
|
||||
/* 38 */ virtual bool Grab(ActorGrabParams grabParams) override;
|
||||
/* 4C */ virtual ~ActorUnkKEYT() override;
|
||||
|
||||
void func_ov041_02123c7c(void);
|
||||
void func_ov041_02123cf8(void);
|
||||
void func_ov041_02123d40(void);
|
||||
void func_ov041_02123d88(void);
|
||||
void func_ov041_02123eb8(void);
|
||||
void func_ov041_02123ff8(void);
|
||||
void func_ov041_02124094(void);
|
||||
void func_ov041_021240c0(void);
|
||||
|
||||
@@ -6,6 +6,12 @@
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
enum ActorUnkOBPCState_ {
|
||||
ActorUnkOBPCState_0 = 0,
|
||||
ActorUnkOBPCState_1 = 1,
|
||||
ActorUnkOBPCState_Max,
|
||||
};
|
||||
|
||||
class ActorUnkOBPC : public Actor {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
@@ -19,10 +25,9 @@ public:
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 24 */ virtual void vfunc_24() override;
|
||||
/* 4C */ virtual ~ActorUnkOBPC() override;
|
||||
|
||||
bool func_ov024_020d6f74(void);
|
||||
void func_ov024_020d7064(s16 param1, unk32 param2);
|
||||
void SetState(ActorState state, int param2);
|
||||
bool func_ov024_020d7154(void);
|
||||
};
|
||||
|
||||
@@ -31,7 +36,6 @@ public:
|
||||
/* 00 (base) */
|
||||
|
||||
ActorProfileUnkOBPC();
|
||||
~ActorProfileUnkOBPC();
|
||||
|
||||
/* 0C */ virtual Actor *Create();
|
||||
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
|
||||
#include "Actor/Actor.hpp"
|
||||
#include "Actor/ActorProfile.hpp"
|
||||
#include "Actor/Actor_Derived1.hpp"
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
@@ -17,20 +18,40 @@ public:
|
||||
/* 0C */ virtual void vfunc_0c(unk32 param1) override;
|
||||
};
|
||||
|
||||
class ActorUnkRB1T : public Actor {
|
||||
class ActorUnkRB1T : public Actor_Derived1 {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 94 */
|
||||
/* 000 (base) */
|
||||
/* 120 */ unk32 mUnk_120;
|
||||
/* 124 */ STRUCT_PAD(0x124, 0x20C);
|
||||
/* 20C */ ModelRender mUnk_20C; // actually a derived class of a derived class
|
||||
/* 26C */ STRUCT_PAD(0x26C, 0x280);
|
||||
/* 280 */ unk32 mUnk_280;
|
||||
/* 284 */ STRUCT_PAD(0x284, 0x300);
|
||||
/* 300 */ unk32 mUnk_300;
|
||||
/* 304 */ STRUCT_PAD(0x304, 0x36C);
|
||||
/* 36C */ unk8 mUnk_36C;
|
||||
/* 36D */ unk8 mUnk_36D;
|
||||
/* 36E */ unk8 mUnk_36E;
|
||||
/* 36F */ unk8 mUnk_36F;
|
||||
/* 370 */ unk8 mUnk_370;
|
||||
/* 371 */ unk8 mUnk_371;
|
||||
/* 372 */ unk8 mUnk_372;
|
||||
/* 373 */ unk8 mUnk_373;
|
||||
/* 374 */ unk8 mUnk_374;
|
||||
/* 375 */ unk8 mUnk_375;
|
||||
/* 376 */ unk8 mUnk_376;
|
||||
/* 377 */ unk8 mUnk_377;
|
||||
|
||||
ActorUnkRB1T();
|
||||
|
||||
/* 4C */ virtual ~ActorUnkRB1T() override;
|
||||
/* 58 */ virtual void vfunc_58(unk32 param1);
|
||||
|
||||
void func_ov026_0211e3cc(void);
|
||||
void func_ov026_0211e3e0(void);
|
||||
bool func_ov026_0211e3e0(unk32 param1);
|
||||
void func_ov026_0211e4c8(void);
|
||||
void func_ov026_0211e554(void);
|
||||
void func_ov026_0211e6cc(void);
|
||||
unk32 func_ov026_0211e6cc(void);
|
||||
void func_ov026_0211e6e4(void);
|
||||
void func_ov026_0211e6f0(void);
|
||||
void func_ov026_0211e748(void);
|
||||
@@ -77,7 +98,7 @@ public:
|
||||
void func_ov026_02120744(void);
|
||||
void func_ov026_021207e0(void);
|
||||
void func_ov026_02120874(void);
|
||||
void func_ov026_021208a0(void);
|
||||
static void func_ov026_021208a0(void); //! TODO is this really static? can't make it work as a ptmf
|
||||
void func_ov026_02120954(void);
|
||||
void func_ov026_02120974(void);
|
||||
void func_ov026_021209d8(void);
|
||||
|
||||
@@ -2,9 +2,17 @@
|
||||
|
||||
#include "Actor/Actor.hpp"
|
||||
#include "Actor/ActorProfile.hpp"
|
||||
#include "Actor/ActorRef.hpp"
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
enum ActorUnkSWOBState_ {
|
||||
ActorUnkSWOBState_0 = 0,
|
||||
ActorUnkSWOBState_1 = 1,
|
||||
ActorUnkSWOBState_2 = 2,
|
||||
ActorUnkSWOBState_Max,
|
||||
};
|
||||
|
||||
class ActorUnkSWOB : public Actor {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
@@ -21,10 +29,9 @@ public:
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 4C */ virtual ~ActorUnkSWOB() override;
|
||||
|
||||
bool func_ov000_0209a948(void);
|
||||
void func_ov000_0209a9b4(unk32 param1);
|
||||
void SetState(ActorState state);
|
||||
void func_ov000_0209aa30(void);
|
||||
};
|
||||
|
||||
@@ -33,7 +40,6 @@ public:
|
||||
/* 00 (base) */
|
||||
|
||||
ActorProfileUnkSWOB();
|
||||
~ActorProfileUnkSWOB();
|
||||
|
||||
/* 0C */ virtual Actor *Create();
|
||||
|
||||
|
||||
@@ -5,6 +5,14 @@
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
enum ActorUnkSWTMState_ {
|
||||
ActorUnkSWTMState_0 = 0,
|
||||
ActorUnkSWTMState_1 = 1,
|
||||
ActorUnkSWTMState_2 = 2,
|
||||
ActorUnkSWTMState_3 = 3,
|
||||
ActorUnkSWTMState_Max,
|
||||
};
|
||||
|
||||
class ActorUnkSWTM_B0 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
@@ -39,7 +47,7 @@ public:
|
||||
/* 24 */ virtual void vfunc_24() override;
|
||||
/* 4C */ virtual ~ActorUnkSWTM() override;
|
||||
|
||||
void func_ov000_0209af54(unk32 param1);
|
||||
void SetState(ActorState state);
|
||||
bool func_ov000_0209afe4(void);
|
||||
unk32 func_ov000_0209b038(void);
|
||||
void func_ov000_0209b160(void);
|
||||
@@ -52,7 +60,6 @@ public:
|
||||
/* 00 (base) */
|
||||
|
||||
ActorProfileUnkSWTM();
|
||||
~ActorProfileUnkSWTM();
|
||||
|
||||
/* 0C */ virtual Actor *Create();
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ public:
|
||||
ActorUnk_vfunc_b0();
|
||||
};
|
||||
|
||||
class ActorUnk_ov000_020a8bb0_94 {
|
||||
class Actor_Derived1_94 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
@@ -41,20 +41,20 @@ public:
|
||||
/* 0A */ unk16 mUnk_0A;
|
||||
/* 0C */ unk32 mUnk_0C;
|
||||
|
||||
ActorUnk_ov000_020a8bb0_94();
|
||||
~ActorUnk_ov000_020a8bb0_94();
|
||||
Actor_Derived1_94();
|
||||
~Actor_Derived1_94();
|
||||
};
|
||||
|
||||
class ActorUnk_ov000_020a8bb0_94_Derived1 : public ActorUnk_ov000_020a8bb0_94 {
|
||||
class Actor_Derived1_94_Derived1 : public Actor_Derived1_94 {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
|
||||
ActorUnk_ov000_020a8bb0_94_Derived1(unk32 param1) {
|
||||
Actor_Derived1_94_Derived1(unk32 param1) {
|
||||
this->mUnk_0C = param1;
|
||||
}
|
||||
};
|
||||
|
||||
class ActorUnk_ov000_020a8bb0_a4 {
|
||||
class Actor_Derived1_a4 {
|
||||
public:
|
||||
/* 00 */ ModelRender *mpModelRender;
|
||||
/* 08 */ unk16 mUnk_04;
|
||||
@@ -64,16 +64,16 @@ public:
|
||||
|
||||
void func_01ffc6d4(u16 param1, VecFx32 *pos);
|
||||
|
||||
ActorUnk_ov000_020a8bb0_a4(ModelRender *pModelRender) {
|
||||
Actor_Derived1_a4(ModelRender *pModelRender) {
|
||||
this->mpModelRender = pModelRender;
|
||||
this->mUnk_04 = 0;
|
||||
this->mUnk_08 = 0;
|
||||
}
|
||||
|
||||
~ActorUnk_ov000_020a8bb0_a4() {}
|
||||
~Actor_Derived1_a4() {}
|
||||
};
|
||||
|
||||
class ActorUnk_ov000_020a8bb0_EC {
|
||||
class Actor_Derived1_EC {
|
||||
public:
|
||||
/* 00 */ UnkStruct_027e0960_TableEntry *mUnk_00;
|
||||
/* 04 */ u8 mUnk_04;
|
||||
@@ -84,8 +84,8 @@ public:
|
||||
/* 0C */ VecFx32 mUnk_0C;
|
||||
/* 18 */
|
||||
|
||||
ActorUnk_ov000_020a8bb0_EC();
|
||||
~ActorUnk_ov000_020a8bb0_EC() {}
|
||||
Actor_Derived1_EC();
|
||||
~Actor_Derived1_EC() {}
|
||||
|
||||
void func_ov024_020d6680(const VecFx32 *param1, u8 *param2);
|
||||
void func_ov024_020d66c0(const VecFx32 *param1, unk32 param2);
|
||||
@@ -96,11 +96,11 @@ public:
|
||||
u16 *func_ov024_020d6d80(VecFx32 *pPos, VecFx32 *pVel);
|
||||
};
|
||||
|
||||
class ActorUnk_ov000_020a8bb0 : public Actor {
|
||||
class Actor_Derived1 : public Actor {
|
||||
public:
|
||||
/* 000 (base) */
|
||||
/* 094 */ ActorUnk_ov000_020a8bb0_94_Derived1 mUnk_094;
|
||||
/* 0A4 */ ActorUnk_ov000_020a8bb0_a4 mUnk_0A4;
|
||||
/* 094 */ Actor_Derived1_94_Derived1 mUnk_094;
|
||||
/* 0A4 */ Actor_Derived1_a4 mUnk_0A4;
|
||||
/* 0B0 */ u16 mUnk_0B0;
|
||||
/* 0B4 */ unk32 mUnk_0B4;
|
||||
/* 0B8 */ unk32 mUnk_0B8;
|
||||
@@ -116,10 +116,10 @@ public:
|
||||
/* 0DC */ unk16 mUnk_0DE;
|
||||
/* 0E0 */ unk16 mUnk_0E0;
|
||||
/* 0E0 */ unk16 mUnk_0E2;
|
||||
/* 0E4 */ unk32 mUnk_0E4;
|
||||
/* 0E4 */ void *mUnk_0E4; // callback
|
||||
/* 0E8 */ unk16 mUnk_0E8;
|
||||
/* 0E8 */ unk16 mUnk_0EA;
|
||||
/* 0EC */ ActorUnk_ov000_020a8bb0_EC mUnk_0EC;
|
||||
/* 0EC */ Actor_Derived1_EC mUnk_0EC;
|
||||
/* 104 */ Cylinder mUnk_104;
|
||||
/* 114 */ unk32 mUnk_114;
|
||||
/* 118 */ unk32 mUnk_118;
|
||||
@@ -131,9 +131,9 @@ public:
|
||||
/* 20 */ virtual void vfunc_20() override;
|
||||
/* 24 */ virtual void vfunc_24() override;
|
||||
/* 2C */ virtual void vfunc_2c(unk32 param1) override;
|
||||
/* 4C */ virtual ~ActorUnk_ov000_020a8bb0();
|
||||
/* 4C */ virtual ~Actor_Derived1();
|
||||
/* 54 */ virtual void vfunc_54(unk32 param1);
|
||||
/* 54 */ virtual void vfunc_58(unk32 param1) = 0;
|
||||
/* 58 */ virtual void vfunc_58(unk32 param1) = 0;
|
||||
/* 5C */ virtual void vfunc_5c();
|
||||
/* 60 */ virtual void vfunc_60();
|
||||
/* 64 */ virtual bool vfunc_64();
|
||||
@@ -149,7 +149,7 @@ public:
|
||||
/* 8C */ virtual unk32 vfunc_8c();
|
||||
/* 90 */ virtual unk32 vfunc_90();
|
||||
/* 94 */ virtual void vfunc_94();
|
||||
/* 98 */ virtual void vfunc_98();
|
||||
/* 98 */ virtual void vfunc_98(unk32 param1);
|
||||
/* 9C */ virtual void vfunc_9c();
|
||||
/* A0 */ virtual unk32 vfunc_a0();
|
||||
/* A4 */ virtual void vfunc_a4();
|
||||
@@ -160,8 +160,10 @@ public:
|
||||
/* B8 */ virtual void vfunc_b8();
|
||||
/* BC */
|
||||
|
||||
Actor_Derived1(ModelRender *param1, unk32 param2);
|
||||
|
||||
// overlay 0
|
||||
void func_ov000_020a8ae0(fx32 param1);
|
||||
ActorUnk_ov000_020a8bb0(ModelRender *param1, unk32 param2);
|
||||
bool func_ov000_020a8db0();
|
||||
bool func_ov000_020a8dd0();
|
||||
void func_ov000_020a8df0(ActorRef param1, unk32 param2);
|
||||
@@ -172,7 +174,6 @@ public:
|
||||
void func_ov000_020a9248();
|
||||
void func_ov000_020a94b0();
|
||||
void func_ov000_020a95d8();
|
||||
static void func_ov000_020a9804();
|
||||
void func_ov000_020a9a20();
|
||||
void func_ov000_020a9a34();
|
||||
void func_ov000_020a9a50();
|
||||
@@ -181,5 +182,8 @@ public:
|
||||
void func_ov000_020a9ae0();
|
||||
void func_ov000_020a9afc();
|
||||
|
||||
static void func_ov000_020a9804();
|
||||
|
||||
// overlay 31
|
||||
void func_ov031_020e3ca4();
|
||||
};
|
||||
@@ -0,0 +1,47 @@
|
||||
#pragma once
|
||||
|
||||
#include <math.hpp>
|
||||
#include <nns/anim.h>
|
||||
|
||||
// assumed to be the only original name, from an assert inside `func_ov000_020609c4`
|
||||
class CellAnimObject {
|
||||
public:
|
||||
/* 00 */ CellAnim mCellAnim;
|
||||
/* 50 */ unk32 mUnk_50;
|
||||
/* 54 */ unk32 mUnk_54;
|
||||
/* 58 */ unk32 mUnk_58; // another timer?
|
||||
/* 5C */ Vec2s mUnk_5C; // position of the animated texture
|
||||
/* 60 */ unk32 mUnk_60;
|
||||
/* 64 */ unk32 mUnk_64;
|
||||
/* 68 */ unk32 mUnk_68;
|
||||
/* 6C */ unk16 mUnk_6C;
|
||||
/* 6E */ bool mUnk_6E;
|
||||
/* 6F */ unk8 mUnk_6F;
|
||||
/* 70 */ unk32 mUnk_70;
|
||||
/* 74 */ unk16 mUnk_74;
|
||||
/* 76 */ unk16 mUnk_76;
|
||||
/* 78 */
|
||||
|
||||
CellAnimObject();
|
||||
CellAnimObject(unk32 param1, unk32 param2) {
|
||||
this->mUnk_6E = true;
|
||||
this->mUnk_70 = 0;
|
||||
this->mUnk_5C.x = 0;
|
||||
this->mUnk_5C.y = 0;
|
||||
this->mUnk_74 = 0;
|
||||
this->func_ov000_0206082c(param1, param2);
|
||||
}
|
||||
|
||||
void func_ov000_0206082c(s16 param1, unk32 param2);
|
||||
void func_ov000_02060950();
|
||||
void func_ov000_020609b0();
|
||||
void func_ov000_020609c4(void);
|
||||
bool func_ov000_02060a98(unk32 param1);
|
||||
void func_ov000_02060ad0();
|
||||
bool func_ov000_02060af8(void);
|
||||
void func_ov000_02060b50();
|
||||
void func_ov000_02060b64(void);
|
||||
void func_ov000_02060bac();
|
||||
unk32 func_ov000_02060c28(void);
|
||||
void func_ov000_02060bd8(unk32 param1);
|
||||
};
|
||||
@@ -16,7 +16,7 @@ extern "C" void func_ov001_020bd6a8();
|
||||
|
||||
class FileSelect_UnkClass7_04 {
|
||||
public:
|
||||
/* 000 */ UnkSubStruct19 mUnk_000[30];
|
||||
/* 000 */ CellAnimObject mUnk_000[30];
|
||||
/* E10 */ Vec2us mUnk_E10[30];
|
||||
/* E88 */
|
||||
};
|
||||
|
||||
@@ -124,7 +124,7 @@ public:
|
||||
// adventure mode animated sword icon
|
||||
/* 10BC */ UnkSystem2_UnkSubSystem9 mUnk_10BC;
|
||||
/* 1100 */ UnkSystem2_UnkSubSystem9 mUnk_1100;
|
||||
/* 1144 */ UnkSubStruct19 mUnk_1144;
|
||||
/* 1144 */ CellAnimObject mUnk_1144;
|
||||
|
||||
// "battle" button
|
||||
/* 11BC */ UnkSystem2_UnkSubSystem1_Derived2 mUnk_11BC;
|
||||
@@ -135,7 +135,7 @@ public:
|
||||
// battle mode animated sword icon
|
||||
/* 14D4 */ UnkSystem2_UnkSubSystem9 mUnk_14D4;
|
||||
/* 1518 */ UnkSystem2_UnkSubSystem9 mUnk_1518;
|
||||
/* 155C */ UnkSubStruct19 mUnk_155C;
|
||||
/* 155C */ CellAnimObject mUnk_155C;
|
||||
|
||||
// "contact mode" button
|
||||
/* 15D4 */ UnkSystem2_UnkSubSystem1_Derived2 mUnk_15D4;
|
||||
|
||||
@@ -18,16 +18,16 @@ public:
|
||||
/* 064 */ UnkSystem2_UnkSubSystem5 mUnk_064;
|
||||
/* 29C */ UnkStruct_ov019_020d24c8_28_258 mUnk_29C; // top-left 1 and 2 icons
|
||||
/* 2B4 */ UnkStruct_ov019_020d24c8_28_258 mUnk_2B4; // static hearts (hearts before beating heart)
|
||||
/* 2CC */ UnkSubStruct19 mUnk_2CC;
|
||||
/* 344 */ UnkSubStruct19 mUnk_344;
|
||||
/* 3BC */ UnkSubStruct19 mUnk_3BC;
|
||||
/* 434 */ UnkSubStruct19 mUnk_434;
|
||||
/* 4AC */ UnkSubStruct19 mUnk_4AC;
|
||||
/* 524 */ UnkSubStruct19 mUnk_524; // forest dungeon icon
|
||||
/* 59C */ UnkSubStruct19 mUnk_59C; // snow dungeon icon
|
||||
/* 614 */ UnkSubStruct19 mUnk_614; // ocean dungeon icon
|
||||
/* 68C */ UnkSubStruct19 mUnk_68C; // fire dungeon icon
|
||||
/* 704 */ UnkSubStruct19 mUnk_704; // desert dungeon icon
|
||||
/* 2CC */ CellAnimObject mUnk_2CC;
|
||||
/* 344 */ CellAnimObject mUnk_344;
|
||||
/* 3BC */ CellAnimObject mUnk_3BC;
|
||||
/* 434 */ CellAnimObject mUnk_434;
|
||||
/* 4AC */ CellAnimObject mUnk_4AC;
|
||||
/* 524 */ CellAnimObject mUnk_524; // forest dungeon icon
|
||||
/* 59C */ CellAnimObject mUnk_59C; // snow dungeon icon
|
||||
/* 614 */ CellAnimObject mUnk_614; // ocean dungeon icon
|
||||
/* 68C */ CellAnimObject mUnk_68C; // fire dungeon icon
|
||||
/* 704 */ CellAnimObject mUnk_704; // desert dungeon icon
|
||||
/* 77C */ Vec2us mUnk_77C;
|
||||
/* 780 */
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ public:
|
||||
/* 04 */ GameModeCreateCallback createCallback;
|
||||
/* 08 */ GameUnkCallback1 mUnk_08; // seems related to entering and leaving houses/grottos??
|
||||
/* 0C */ unk32 mFrameCounter;
|
||||
/* 10 */ SaveFile *mpSaveFile;
|
||||
/* 10 */ SaveSlot *mpSaveSlot;
|
||||
/* 14 */ GameUnkCallback2 mUnk_14; // only set for wireless stuff?
|
||||
/* 18 */ GameUnkCallback3 mUnk_18; // same as above
|
||||
/* 1C */ UnkStruct_02049a2c_1C mUnk_1C;
|
||||
|
||||
@@ -186,5 +186,6 @@ public:
|
||||
|
||||
static void func_ov000_0209d0bc(Vec2b *param1, MapObject *thisx);
|
||||
static void func_ov000_0209d22c(unk16 *param1, MapObject *thisx, unk32 param2);
|
||||
static void func_ov000_0209d54c(void *param1, MapObject *thisx, unk32 param2, VecFx32 *param3, unk32 param4, unk32 param5);
|
||||
static void func_ov000_0209d54c(ActorRef *param1, MapObject *thisx, u16 param2, const VecFx32 *pPos, s16 param3,
|
||||
u16 param4);
|
||||
};
|
||||
|
||||
@@ -40,7 +40,7 @@ public:
|
||||
/* 050 */ MapObject_10 mUnk_050;
|
||||
/* 074 */ MapObjectTreasureSpawned_74 mUnk_074;
|
||||
/* 0D8 */ ItemId mItemId;
|
||||
/* 0DC */ UnkSubStruct19 mUnk_0DC;
|
||||
/* 0DC */ CellAnimObject mUnk_0DC;
|
||||
/* 154 */
|
||||
|
||||
MapObjectChestBase(unk32 param1); // func_ov031_0210307c
|
||||
|
||||
@@ -143,7 +143,7 @@ struct FLW1Instr {
|
||||
InstrBranch branch;
|
||||
InstrEvent event;
|
||||
};
|
||||
/* 09 */
|
||||
/* 08 */
|
||||
};
|
||||
|
||||
struct SectionFLW1 {
|
||||
|
||||
@@ -1,11 +1,14 @@
|
||||
#pragma once
|
||||
|
||||
#include "Actor/Actor.hpp"
|
||||
#include "LinkList.hpp"
|
||||
#include "Unknown/Common.hpp"
|
||||
#include "Unknown/UnkStruct_ov000_0208f820.hpp"
|
||||
#include "math.hpp"
|
||||
#include "types.h"
|
||||
|
||||
class UnkStruct_027e0ce0_40;
|
||||
|
||||
class PlayerActorBase_5C {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
@@ -41,14 +44,14 @@ public:
|
||||
/* 30 */ u16 mAngle;
|
||||
/* 32 */ u8 mInvincibilityTimer;
|
||||
/* 33 */ u8 mInvincibilityIconTimer; // the blinking icon on top-screen
|
||||
/* 34 */ unk32 mUnk_34;
|
||||
/* 34 */ ActorRef mGrabActor;
|
||||
/* 38 */ UnkStruct_PlayerGet_64 mUnk_38;
|
||||
/* 44 */ unk32 mUnk_44;
|
||||
/* 48 */ unk32 mUnk_48;
|
||||
/* 4C */ unk32 mUnk_4C;
|
||||
/* 50 */ unk32 mUnk_50;
|
||||
/* 50 */ ActorGrabParams mUnk_50;
|
||||
/* 54 */ unk32 mUnk_54;
|
||||
/* 58 */ unk32 mUnk_58;
|
||||
/* 58 */ UnkStruct_027e0ce0_40 *mUnk_58;
|
||||
/* 5C */ PlayerActorBase_5C mUnk_5C;
|
||||
/* 70 */ PlayerActorBase_70 *mUnk_70;
|
||||
/* 74 */ PlayerActorBase_74 *mUnk_74;
|
||||
@@ -194,9 +197,9 @@ public:
|
||||
/* 0B9 */ unk8 mUnk_B9;
|
||||
/* 0BA */ unk8 mUnk_BA;
|
||||
/* 0BB */ unk8 mUnk_BB;
|
||||
/* 0BC */ UnkSubStruct19 mUnk_BC;
|
||||
/* 0BC */ CellAnimObject mUnk_BC;
|
||||
/* 134 */ PlayerActor_134 *mUnk_134;
|
||||
/* 138 */ UnkSubStruct19 mUnk_138; // sanctuary link icon animation
|
||||
/* 138 */ CellAnimObject mUnk_138; // sanctuary link icon animation
|
||||
/* 1B0 */ PlayerActor_1B0 mUnk_1B0[3];
|
||||
/* 1D4 */
|
||||
|
||||
|
||||
+124
-43
@@ -3,6 +3,7 @@
|
||||
#include "Item/ItemManager.hpp"
|
||||
#include "MainGame/MiscAdvManager.hpp"
|
||||
#include "MainGame/PassengerManager.hpp"
|
||||
#include "flags.h"
|
||||
#include "math.hpp"
|
||||
#include "types.h"
|
||||
|
||||
@@ -37,10 +38,12 @@ struct SaveFile_00000_0000_Data_D8 {
|
||||
SaveFile_00000_0000_Data_D8();
|
||||
};
|
||||
|
||||
// related to scene flags?
|
||||
struct SaveFile_00000_0000_Data_184 {
|
||||
/* 00 */ unk32 unk_00;
|
||||
/* 04 */ unk16 unk_04;
|
||||
/* 06 */ unk16 unk_06;
|
||||
/* 06 */ u8 keyAmount;
|
||||
/* 07 */ unk8 unk_07;
|
||||
/* 08 */
|
||||
|
||||
SaveFile_00000_0000_Data_184() :
|
||||
@@ -126,24 +129,122 @@ struct SaveFile_00000_0000_Data_C84 {
|
||||
}
|
||||
};
|
||||
|
||||
struct SaveFile_00000_0000_Data_D4C {
|
||||
/* D24 */ unk32 unk_D4C;
|
||||
/* D24 */ unk32 unk_D50;
|
||||
/* D24 */ unk32 unk_D54;
|
||||
/* D24 */ unk32 unk_D58;
|
||||
/* D24 */ unk32 unk_D5C;
|
||||
/* D24 */ unk32 unk_D60;
|
||||
/* D24 */ unk32 unk_D64;
|
||||
/* D24 */ unk32 unk_D68;
|
||||
/* D6C */ unk8 unk_D6C[0x08];
|
||||
/* D74 */ unk16 unk_D74;
|
||||
struct SaveFile_00000_0000_Data_D24 {
|
||||
/* 00 */ unk32 unk_00;
|
||||
/* 04 */ unk32 unk_04;
|
||||
/* 08 */ unk32 unk_08;
|
||||
/* 0C */ unk32 unk_0C;
|
||||
/* 10 */ unk32 unk_10;
|
||||
/* 14 */ unk32 unk_14;
|
||||
/* 18 */ unk32 unk_18;
|
||||
/* 1C */ unk32 unk_1C;
|
||||
/* 20 */ unk32 unk_20;
|
||||
/* 24 */ unk32 unk_24;
|
||||
/* 28 */
|
||||
};
|
||||
|
||||
SaveFile_00000_0000_Data_D4C() {
|
||||
MI_CpuFill32(0, this->unk_D6C, sizeof(this->unk_D6C));
|
||||
this->unk_D74 = 0;
|
||||
typedef u32 RabbitFlag;
|
||||
enum RabbitFlag_ {
|
||||
RabbitFlag_None = -1,
|
||||
RabbitFlag_Grass_01 = FLAG(0, 0),
|
||||
RabbitFlag_Grass_02 = FLAG(0, 1),
|
||||
RabbitFlag_Grass_03 = FLAG(0, 2),
|
||||
RabbitFlag_Grass_04 = FLAG(0, 3),
|
||||
RabbitFlag_Grass_05 = FLAG(0, 4),
|
||||
RabbitFlag_Grass_06 = FLAG(0, 5),
|
||||
RabbitFlag_Grass_07 = FLAG(0, 6),
|
||||
RabbitFlag_Grass_08 = FLAG(0, 7),
|
||||
RabbitFlag_Grass_09 = FLAG(0, 8),
|
||||
RabbitFlag_Grass_10 = FLAG(0, 9),
|
||||
RabbitFlag_Snow_01 = FLAG(0, 10),
|
||||
RabbitFlag_Snow_02 = FLAG(0, 11),
|
||||
RabbitFlag_Snow_03 = FLAG(0, 12),
|
||||
RabbitFlag_Snow_04 = FLAG(0, 13),
|
||||
RabbitFlag_Snow_05 = FLAG(0, 14),
|
||||
RabbitFlag_Snow_06 = FLAG(0, 15),
|
||||
RabbitFlag_Snow_07 = FLAG(0, 16),
|
||||
RabbitFlag_Snow_08 = FLAG(0, 17),
|
||||
RabbitFlag_Snow_09 = FLAG(0, 18),
|
||||
RabbitFlag_Snow_10 = FLAG(0, 19),
|
||||
RabbitFlag_Water_01 = FLAG(0, 20),
|
||||
RabbitFlag_Water_02 = FLAG(0, 21),
|
||||
RabbitFlag_Water_03 = FLAG(0, 22),
|
||||
RabbitFlag_Water_04 = FLAG(0, 23),
|
||||
RabbitFlag_Water_05 = FLAG(0, 24),
|
||||
RabbitFlag_Water_06 = FLAG(0, 25),
|
||||
RabbitFlag_Water_07 = FLAG(0, 26),
|
||||
RabbitFlag_Water_08 = FLAG(0, 27),
|
||||
RabbitFlag_Water_09 = FLAG(0, 28),
|
||||
RabbitFlag_Water_10 = FLAG(0, 29),
|
||||
RabbitFlag_Mountain_01 = FLAG(0, 30),
|
||||
RabbitFlag_Mountain_02 = FLAG(0, 31),
|
||||
RabbitFlag_Mountain_03 = FLAG(1, 0),
|
||||
RabbitFlag_Mountain_04 = FLAG(1, 1),
|
||||
RabbitFlag_Mountain_05 = FLAG(1, 2),
|
||||
RabbitFlag_Mountain_06 = FLAG(1, 3),
|
||||
RabbitFlag_Mountain_07 = FLAG(1, 4),
|
||||
RabbitFlag_Mountain_08 = FLAG(1, 5),
|
||||
RabbitFlag_Mountain_09 = FLAG(1, 6),
|
||||
RabbitFlag_Mountain_10 = FLAG(1, 7),
|
||||
RabbitFlag_Sand_01 = FLAG(1, 8),
|
||||
RabbitFlag_Sand_02 = FLAG(1, 9),
|
||||
RabbitFlag_Sand_03 = FLAG(1, 10),
|
||||
RabbitFlag_Sand_04 = FLAG(1, 11),
|
||||
RabbitFlag_Sand_05 = FLAG(1, 12),
|
||||
RabbitFlag_Sand_06 = FLAG(1, 13),
|
||||
RabbitFlag_Sand_07 = FLAG(1, 14),
|
||||
RabbitFlag_Sand_08 = FLAG(1, 15),
|
||||
RabbitFlag_Sand_09 = FLAG(1, 16),
|
||||
RabbitFlag_Sand_10 = FLAG(1, 17),
|
||||
RabbitFlag_Max,
|
||||
};
|
||||
|
||||
struct SaveFile_00000_0000_Data_D4C {
|
||||
/* 00 */ unk32 unk_00;
|
||||
/* 04 */ unk32 unk_04;
|
||||
/* 08 */ unk32 unk_08;
|
||||
/* 0C */ unk32 unk_0C;
|
||||
/* 10 */ unk32 unk_10;
|
||||
/* 14 */ unk32 unk_14;
|
||||
/* 18 */ unk32 unk_18;
|
||||
/* 1C */ unk32 unk_1C;
|
||||
/* 20 */ RabbitFlag rabbitFlags[2];
|
||||
/* 28 */ unk16 unk_28;
|
||||
/* 2A */ unk16 unk_2A;
|
||||
/* 2C */ unk32 unk_2C;
|
||||
/* 30 */ unk32 unk_30;
|
||||
/* 34 */ unk32 unk_34;
|
||||
/* 38 */ unk32 unk_38;
|
||||
/* 3C */ unk32 unk_3C;
|
||||
/* 40 */
|
||||
|
||||
SaveFile_00000_0000_Data_D4C() {}
|
||||
|
||||
SaveFile_00000_0000_Data_D4C(unk16 param1) {
|
||||
MI_CpuFill32(0, this->rabbitFlags, sizeof(this->rabbitFlags));
|
||||
this->unk_28 = param1;
|
||||
}
|
||||
};
|
||||
|
||||
struct SaveFile_00000_0000_Data_D8C {
|
||||
/* 00 */ unk32 unk_00;
|
||||
/* 04 */ unk32 unk_04;
|
||||
/* 08 */ unk32 unk_08;
|
||||
/* 0C */ unk32 unk_0C;
|
||||
/* 10 */
|
||||
};
|
||||
|
||||
struct SaveFile_00000_0000_Data_D9C {
|
||||
/* 00 */ unk32 unk_00;
|
||||
/* 04 */ unk16 unk_04;
|
||||
/* 06 */ wchar_t mPlayerName[LENGTH_PLAYER_NAME + 1];
|
||||
/* 18 */ unk32 unk_18;
|
||||
/* 1C */ unk32 unk_1C;
|
||||
/* 20 */
|
||||
|
||||
unk32 func_ov000_020a1000();
|
||||
};
|
||||
|
||||
struct SaveInfoData {
|
||||
/* 000 */ unk32 unk_000;
|
||||
/* 004 */ unk32 unk_004;
|
||||
@@ -162,35 +263,14 @@ struct SaveInfoData {
|
||||
/* 040 */ SaveInventory inventory;
|
||||
/* 0D8 */ SaveFile_00000_0000_Data_D8 unk_0D8;
|
||||
/* 158 */ SaveFile_00000_0000_Data_158 unk_158;
|
||||
/* 184 */ SaveFile_00000_0000_Data_184 unk_184[96];
|
||||
/* 184 */ SaveFile_00000_0000_Data_184 unk_184[SaveCourseIndex_Max];
|
||||
/* 484 */ SaveFile_00000_0000_Data_484 unk_484[256];
|
||||
/* C84 */ SaveFile_00000_0000_Data_C84 unk_C84;
|
||||
/* C94 */ SaveMiscAdvManager miscAdvManager;
|
||||
/* D24 */ unk32 unk_D24;
|
||||
/* D24 */ unk32 unk_D28;
|
||||
/* D24 */ unk32 unk_D2C;
|
||||
/* D24 */ unk32 unk_D30;
|
||||
/* D24 */ unk32 unk_D34;
|
||||
/* D24 */ unk32 unk_D38;
|
||||
/* D24 */ unk32 unk_D3C;
|
||||
/* D24 */ unk32 unk_D40;
|
||||
/* D24 */ unk32 unk_D44;
|
||||
/* D24 */ unk32 unk_D48;
|
||||
/* D24 */ SaveFile_00000_0000_Data_D24 unk_D24;
|
||||
/* D4C */ SaveFile_00000_0000_Data_D4C unk_D4C;
|
||||
/* D78 */ unk32 unk_D78;
|
||||
/* D7C */ unk32 unk_D7C;
|
||||
/* D80 */ unk32 unk_D80;
|
||||
/* D84 */ unk32 unk_D84;
|
||||
/* D88 */ unk32 unk_D88;
|
||||
/* D8C */ unk32 unk_D8C;
|
||||
/* D90 */ unk32 unk_D90;
|
||||
/* D94 */ unk32 unk_D94;
|
||||
/* D98 */ unk32 unk_D98;
|
||||
/* D9C */ unk32 unk_D9C;
|
||||
/* DA0 */ unk16 unk_DA0;
|
||||
/* DA2 */ wchar_t mPlayerName[LENGTH_PLAYER_NAME + 1];
|
||||
/* DB4 */ unk32 unk_DB4;
|
||||
/* DB8 */ unk32 unk_DB8;
|
||||
/* D8C */ SaveFile_00000_0000_Data_D8C unk_D8C;
|
||||
/* D9C */ SaveFile_00000_0000_Data_D9C unk_D9C;
|
||||
/* DBC */ unk32 unk_DBC;
|
||||
/* DC0 */ unk32 unk_DC0;
|
||||
/* DC4 */ unk32 unk_DC4;
|
||||
@@ -212,7 +292,8 @@ struct SaveInfoData {
|
||||
/* E00 */
|
||||
|
||||
SaveInfoData() :
|
||||
unk_014(0) {}
|
||||
unk_014(0),
|
||||
unk_D4C(0) {}
|
||||
};
|
||||
|
||||
struct SaveTreasureData {
|
||||
@@ -267,11 +348,11 @@ public:
|
||||
}
|
||||
|
||||
wchar_t *GetPlayerName() {
|
||||
return this->mInfoData[0].mPlayerName;
|
||||
return this->mInfoData[0].unk_D9C.mPlayerName;
|
||||
}
|
||||
|
||||
bool IsPlayerNameSet() {
|
||||
return this->mInfoData[0].mPlayerName[0] != L'\0';
|
||||
return this->mInfoData[0].unk_D9C.mPlayerName[0] != L'\0';
|
||||
}
|
||||
|
||||
SaveFile_00000_2600_Data *Get2600Ptr() {
|
||||
|
||||
@@ -9,6 +9,8 @@
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
#include <nitro/mi.h>
|
||||
|
||||
#define SAVE_DATA_SIZE (sizeof(SaveSlot) + sizeof(u8) * NUM_UNK_BLOCKS * SIZE_UNK_BLOCK)
|
||||
|
||||
enum {
|
||||
@@ -19,25 +21,19 @@ enum {
|
||||
SaveDataIndex_04,
|
||||
};
|
||||
|
||||
class SaveManager_21C {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
|
||||
unk32 func_ov000_020a1000();
|
||||
};
|
||||
|
||||
struct SaveManager_36 {
|
||||
/* 00 */ u8 mKeyAmount;
|
||||
/* 01 */ STRUCT_PAD(0x01, 0x08);
|
||||
/* 08 */
|
||||
};
|
||||
|
||||
struct SaveManager_00 {
|
||||
/* 000 */ STRUCT_PAD(0x00, 0x36);
|
||||
/* 036 */ SaveManager_36 mUnk_36[0x60];
|
||||
/* 336 */ STRUCT_PAD(0x336, 0xB30);
|
||||
/* B30 */ unk32 mUnk_B30[1]; // flags, at least 1
|
||||
/* 000 */ unk32 unk_00;
|
||||
/* 004 */ SaveFile_00000_0000_Data_158 unk_004;
|
||||
/* 030 */ SaveFile_00000_0000_Data_184 unk_030[SaveCourseIndex_Max];
|
||||
/* 330 */ SaveFile_00000_0000_Data_484 unk_330[256];
|
||||
/* B30 */ SaveFile_00000_0000_Data_C84 unk_B30;
|
||||
/* B40 */ SaveFile_00000_0000_Data_D24 unk_B40;
|
||||
/* B68 */ SaveFile_00000_0000_Data_D8C unk_B68;
|
||||
/* B78 */ SaveFile_00000_0000_Data_D4C unk_B78;
|
||||
/* BB8 */
|
||||
|
||||
SaveManager_00(unk16 param1) :
|
||||
unk_B78(param1) {}
|
||||
};
|
||||
|
||||
class SaveManager {
|
||||
@@ -54,8 +50,7 @@ public:
|
||||
/* 210 */ unk32 mUnk_210;
|
||||
/* 214 */ unk32 mUnk_214;
|
||||
/* 218 */ SaveFile *mpSaveFile;
|
||||
/* 21C */ SaveManager_21C mUnk_21C;
|
||||
/* 220 */ STRUCT_PAD(0x220, 0x23C);
|
||||
/* 21C */ SaveFile_00000_0000_Data_D9C mUnk_21C;
|
||||
/* 23C */ PTMF<SaveFile>::PTMFCallback mUnk_23C;
|
||||
/* 244 */ unk32 mUnk_244;
|
||||
|
||||
@@ -75,17 +70,25 @@ public:
|
||||
return this->mpSaveFile->mSlots;
|
||||
}
|
||||
|
||||
SaveManager_00 *GetUnk000() {
|
||||
return this->mUnk_000;
|
||||
}
|
||||
|
||||
SaveManager();
|
||||
|
||||
// overlay 0
|
||||
void func_ov000_020a0b2c(UnkCallback param1, unk32 param2);
|
||||
bool func_ov000_020a0b70(void *param1, unk32 param2);
|
||||
|
||||
// overlay 1
|
||||
void func_ov001_020ba670();
|
||||
void func_ov001_020ba7a8();
|
||||
void func_ov001_020ba7c8(u16 saveSlotIndex);
|
||||
|
||||
// overlay 17
|
||||
void func_ov017_020c3040(void *param1, unk32 param2);
|
||||
|
||||
// overlay 19
|
||||
void func_ov019_020d08fc(unk32 param1, PTMF<SaveFile>::PTMFCallback param2);
|
||||
bool func_ov019_020d0964(void);
|
||||
void func_ov019_020d09dc(u16 saveSlotIndex);
|
||||
|
||||
@@ -40,7 +40,7 @@ public:
|
||||
|
||||
void *operator new(size_t length, u32 id, u32 idLength = 4);
|
||||
void *operator new[](size_t length, u32 id, u32 idLength = 4);
|
||||
static inline void *operator new(size_t length, void *ptr = nullptr) {
|
||||
inline void *operator new(size_t length, void *ptr = nullptr) {
|
||||
#pragma unused(length)
|
||||
return ptr;
|
||||
}
|
||||
|
||||
@@ -73,15 +73,15 @@ public:
|
||||
/* 021 */ u8 mUnk_021;
|
||||
/* 022 */ unk8 mUnk_022;
|
||||
/* 023 */ unk8 mUnk_023;
|
||||
/* 024 */ UnkSubStruct19 mUnk_024; // feather
|
||||
/* 09C */ UnkSubStruct19 mUnk_09C; // green rectangle
|
||||
/* 114 */ UnkSubStruct19 mUnk_114; // "touch screen!" text
|
||||
/* 18C */ UnkSubStruct19 mUnk_18C; // copyright text
|
||||
/* 024 */ CellAnimObject mUnk_024; // feather
|
||||
/* 09C */ CellAnimObject mUnk_09C; // green rectangle
|
||||
/* 114 */ CellAnimObject mUnk_114; // "touch screen!" text
|
||||
/* 18C */ CellAnimObject mUnk_18C; // copyright text
|
||||
/* 204 */ TitleScreen_Sub2 mUnk_204;
|
||||
/* 218 */ TitleScreen_Sub3 mUnk_218;
|
||||
/* 23C */ UnkStruct_ov019_020d24c8_28_258 mUnk_23C;
|
||||
/* 254 */ UnkSubStruct19 mUnk_254; // logo shine
|
||||
/* 2CC */ UnkSubStruct19 mUnk_2CC; // logo shine outline (it's barely visible)
|
||||
/* 254 */ CellAnimObject mUnk_254; // logo shine
|
||||
/* 2CC */ CellAnimObject mUnk_2CC; // logo shine outline (it's barely visible)
|
||||
/* 344 */ unk32 mUnk_344;
|
||||
/* 348 */
|
||||
|
||||
|
||||
+36
-67
@@ -1,5 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include "Animation/CellAnimObject.hpp"
|
||||
#include "Game/GameModeManager.hpp"
|
||||
#include "System/SysNew.hpp"
|
||||
#include "Unknown/UnkFileSystem.hpp"
|
||||
@@ -880,71 +881,6 @@ struct UnkResult {
|
||||
void func_02017520(const char *nscrPath, const char *ncgrPath, const char *nclrPath);
|
||||
};
|
||||
|
||||
// used to draw the swords from the adventure and battle buttons
|
||||
class UnkSubStruct19 {
|
||||
public:
|
||||
/* 00 */ void *mUnk_00;
|
||||
/* 04 */ void *mUnk_04;
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
/* 0C */ unk32 mUnk_0C; // pause the animation timer (in this context: pause the shiny animation on the sword)
|
||||
/* 10 */ unk32 mUnk_10; // animation timer
|
||||
/* 14 */ unk32 mUnk_14; // animation speed (also affects above timer)
|
||||
/* 18 */ unk32 mUnk_18;
|
||||
/* 1C */ void *mUnk_1C; // pointer to animation bank ("ABNK")
|
||||
/* 20 */ unk32 mUnk_20;
|
||||
/* 24 */ unk32 mUnk_24;
|
||||
/* 28 */ u8 mUnk_28; // bool?
|
||||
/* 29 */ unk8 mUnk_29;
|
||||
/* 2A */ unk8 mUnk_2A;
|
||||
/* 2B */ unk8 mUnk_2B;
|
||||
/* 2C */ unk32 mUnk_2C;
|
||||
/* 30 */ void *mUnk_30; // pointer to somewhere inside "CEBK"
|
||||
/* 34 */ void *mUnk_34;
|
||||
/* 38 */ unk32 mUnk_38;
|
||||
/* 3C */ unk32 mUnk_3C;
|
||||
/* 40 */ unk32 mUnk_40; // related to the width of the texture (scaling matrix?)
|
||||
/* 44 */ unk32 mUnk_44; // related to the height of the texture
|
||||
/* 48 */ Vec2us mUnk_48;
|
||||
/* 4C */ unk32 mUnk_4C;
|
||||
/* 50 */ unk32 mUnk_50;
|
||||
/* 54 */ unk32 mUnk_54;
|
||||
/* 58 */ unk32 mUnk_58; // another timer?
|
||||
/* 5C */ Vec2s mUnk_5C; // position of the animated texture
|
||||
/* 60 */ unk32 mUnk_60;
|
||||
/* 64 */ unk32 mUnk_64;
|
||||
/* 68 */ unk32 mUnk_68;
|
||||
/* 6C */ unk16 mUnk_6C;
|
||||
/* 6E */ bool mUnk_6E;
|
||||
/* 6F */ unk8 mUnk_6F;
|
||||
/* 70 */ unk32 mUnk_70;
|
||||
/* 74 */ unk16 mUnk_74;
|
||||
/* 76 */ unk16 mUnk_76;
|
||||
/* 78 */
|
||||
|
||||
UnkSubStruct19();
|
||||
UnkSubStruct19(unk32 param1, unk32 param2) {
|
||||
this->mUnk_6E = true;
|
||||
this->mUnk_70 = 0;
|
||||
this->mUnk_5C.x = 0;
|
||||
this->mUnk_5C.y = 0;
|
||||
this->mUnk_74 = 0;
|
||||
this->func_ov000_0206082c(param1, param2);
|
||||
}
|
||||
|
||||
void func_ov000_0206082c(s16 param1, unk32 param2);
|
||||
void func_ov000_02060950();
|
||||
void func_ov000_020609b0();
|
||||
void func_ov000_020609c4(void);
|
||||
bool func_ov000_02060a98(unk32 param1);
|
||||
void func_ov000_02060ad0();
|
||||
bool func_ov000_02060af8(void);
|
||||
void func_ov000_02060b50();
|
||||
void func_ov000_02060b64(void);
|
||||
void func_ov000_02060bac();
|
||||
unk32 func_ov000_02060c28(void);
|
||||
void func_ov000_02060bd8(unk32 param1);
|
||||
};
|
||||
|
||||
struct UnkStruct_StackTitleScreen {
|
||||
/* 00 */ unk32 pad[5];
|
||||
/* 14 */
|
||||
@@ -1026,8 +962,8 @@ class UnkActorSystem2 : public GameModeManagerBase_104 {
|
||||
public:
|
||||
/* 000 (base) */
|
||||
/* 01B */ bool mUnk_01B;
|
||||
/* 01C */ UnkSubStruct19 mUnk_01C;
|
||||
/* 094 */ UnkSubStruct19 mUnk_094;
|
||||
/* 01C */ CellAnimObject mUnk_01C;
|
||||
/* 094 */ CellAnimObject mUnk_094;
|
||||
/* 10C */ bool mUnk_10C;
|
||||
/* 10C */ bool mUnk_10D;
|
||||
|
||||
@@ -1293,3 +1229,36 @@ public:
|
||||
/* 00 */ virtual ~MapObjectProfile_Derived5() override;
|
||||
/* 08 */
|
||||
};
|
||||
|
||||
//! TODO: move to a better place
|
||||
enum TrainPresetType_ {
|
||||
TrainPresetType_Default = 0, // normal overworld settings
|
||||
TrainPresetType_DarkRealmNormal = 1, // default dark realm settings (SceneIndex_t_dark)
|
||||
TrainPresetType_DarkRealmLightTear = 2, // dark realm when on a light tear (SceneIndex_t_dark)
|
||||
TrainPresetType_DarkRealmLightTearRope = 3, // same as above but when pulling the rope (SceneIndex_t_dark)
|
||||
TrainPresetType_DarkRealmFight = 4, // (SceneIndex_t_eviltrain, SceneIndex_t_eviltrain2 & SceneIndex_t_eviltrain3)
|
||||
TrainPresetType_5 = 5, // unused?
|
||||
TrainPresetType_Max,
|
||||
};
|
||||
|
||||
struct TrainSpeedTarget {
|
||||
/* 00 */ unk32 speed;
|
||||
/* 04 */ unk32 unk_04;
|
||||
/* 08 */
|
||||
};
|
||||
|
||||
struct TrainSpeedPreset {
|
||||
/* 00 */ TrainSpeedTarget reverse;
|
||||
/* 08 */ TrainSpeedTarget stop;
|
||||
/* 10 */ TrainSpeedTarget slow;
|
||||
/* 18 */ TrainSpeedTarget fast;
|
||||
/* 20 */ unk32 unk_20;
|
||||
/* 24 */ unk32 unk_24;
|
||||
/* 28 */ unk32 unk_28;
|
||||
/* 2C */ unk32 unk_2C;
|
||||
/* 30 */ unk32 unk_30;
|
||||
/* 34 */ unk32 unk_34;
|
||||
/* 38 */ unk32 unk_38; // related to the "emergency break" thing when you go to reverse while fast speed
|
||||
/* 3C */ fx32 unk_3C;
|
||||
/* 40 */
|
||||
};
|
||||
|
||||
@@ -25,15 +25,15 @@ public:
|
||||
/* 00A */ u8 mUnk_00A;
|
||||
/* 00B */ unk8 mUnk_00B;
|
||||
/* 000 */ UnkStruct_ov019_020d24c8_28_258 mUnk_00C;
|
||||
/* 018 */ UnkSubStruct19 mUnk_024;
|
||||
/* 090 */ UnkSubStruct19 mUnk_09C;
|
||||
/* 108 */ UnkSubStruct19 mUnk_114;
|
||||
/* 180 */ UnkSubStruct19 mUnk_18C;
|
||||
/* 1F8 */ UnkSubStruct19 mUnk_204;
|
||||
/* 270 */ UnkSubStruct19 mUnk_27C;
|
||||
/* 2E8 */ UnkSubStruct19 mUnk_2F4;
|
||||
/* 360 */ UnkSubStruct19 mUnk_36C;
|
||||
/* 3E4 */ UnkSubStruct19 mUnk_3E4[2];
|
||||
/* 018 */ CellAnimObject mUnk_024;
|
||||
/* 090 */ CellAnimObject mUnk_09C;
|
||||
/* 108 */ CellAnimObject mUnk_114;
|
||||
/* 180 */ CellAnimObject mUnk_18C;
|
||||
/* 1F8 */ CellAnimObject mUnk_204;
|
||||
/* 270 */ CellAnimObject mUnk_27C;
|
||||
/* 2E8 */ CellAnimObject mUnk_2F4;
|
||||
/* 360 */ CellAnimObject mUnk_36C;
|
||||
/* 3E4 */ CellAnimObject mUnk_3E4[2];
|
||||
/* 4D4 */ u8 mUnk_4D4;
|
||||
/* 4D5 */ u8 mUnk_4D5;
|
||||
/* 4D6 */ unk8 mUnk_4D6; // pad?
|
||||
@@ -191,7 +191,7 @@ public:
|
||||
class UICounter_SmallKeys {
|
||||
public:
|
||||
/* 00 */ UnkStruct_ov019_020d24c8_28_258 mUnk_00;
|
||||
/* 18 */ UnkSubStruct19 mUnk_18;
|
||||
/* 18 */ CellAnimObject mUnk_18;
|
||||
/* 90 */ unk16 mUnk_90;
|
||||
/* 92 */ unk16 mUnk_92;
|
||||
/* 94 */
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
#include "types.h"
|
||||
|
||||
class UnkSubStruct19;
|
||||
class CellAnimObject;
|
||||
|
||||
class UnkStruct_0204af1c_00 {
|
||||
public:
|
||||
@@ -22,7 +22,7 @@ public:
|
||||
UnkStruct_0204af1c();
|
||||
void func_0201a800();
|
||||
void func_0201aa44(UnkStruct_ov019_020d24c8_28_258_00 *param1, void *param2, unk32 param3, void *param4);
|
||||
void func_0201aad0(UnkSubStruct19 *param1, void *param2, unk32 param3, void *param4);
|
||||
void func_0201aad0(CellAnimObject *param1, void *param2, unk32 param3, void *param4);
|
||||
void func_0201aa8c(UnkStruct_ov019_020d24c8_28_258_00 *param1, unk32 param2, unk32 param3, unk32 param4, unk32 param5);
|
||||
};
|
||||
|
||||
|
||||
@@ -15,11 +15,15 @@ struct stack_ov000_02073578 {
|
||||
|
||||
class UnkStruct_027e09b8_00 {
|
||||
public:
|
||||
/* 000 */ STRUCT_PAD(0x000, 0xFD4);
|
||||
/* 000 */ STRUCT_PAD(0x000, 0xFD0);
|
||||
/* FD0 */ unk16 mUnk_FD0; // set to 1 when link has a blocking interaction?
|
||||
/* FD2 */ unk16 mUnk_FD2;
|
||||
/* FD4 */
|
||||
|
||||
UnkStruct_027e09b8_00();
|
||||
~UnkStruct_027e09b8_00();
|
||||
|
||||
void func_ov000_02073bc0();
|
||||
};
|
||||
|
||||
class UnkStruct_027e09b8_04 {
|
||||
@@ -85,6 +89,7 @@ public:
|
||||
unk32 func_ov000_02073470(void *param1, unk32 param2);
|
||||
unk32 func_ov000_02073388(void *param1, unk32 param2);
|
||||
void func_ov000_02073578(void *param1, unk32 param2);
|
||||
void func_ov000_0207332c();
|
||||
|
||||
#if IS_JP
|
||||
void func_ov000_02074d78(unk32 param1);
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
#include "Actor/ActorRef.hpp"
|
||||
#include "Item/ItemManager.hpp"
|
||||
#include "LinkList.hpp"
|
||||
#include "Player/Player.hpp"
|
||||
@@ -105,7 +106,10 @@ public:
|
||||
|
||||
class UnkStruct_027e0ce0_38_58 {
|
||||
public:
|
||||
/* 000 */ STRUCT_PAD(0x00, 0x3D4);
|
||||
/* 000 */ STRUCT_PAD(0x00, 0x338);
|
||||
/* 338 */ unk32 mUnk_338; // rope pulled timer
|
||||
/* 33C */ unk32 mUnk_33C; // rope pull strength, 0 to 8
|
||||
/* 340 */ STRUCT_PAD(0x340, 0x3D4);
|
||||
/* 3D4 */
|
||||
|
||||
UnkStruct_027e0ce0_38_58();
|
||||
@@ -175,7 +179,7 @@ public:
|
||||
/* 050 */ unk32 mUnk_050;
|
||||
/* 054 */ unk16 mUnk_054;
|
||||
/* 056 */ unk16 mUnk_056;
|
||||
/* 058 */ UnkStruct_027e0ce0_38_58 *mUnk_058;
|
||||
/* 058 */ UnkStruct_027e0ce0_38_58 *mUnk_058; // related to train invicibility state in the dark realm (+0x35C/+0x360)
|
||||
/* 05C */ UnkStruct_027e0ce0_38_5C *mUnk_05C;
|
||||
/* 060 */ UnkStruct_027e0ce0_38_60 mUnk_060;
|
||||
/* 138 */ unk32 mUnk_138;
|
||||
@@ -197,7 +201,7 @@ public:
|
||||
/* 174 */ UnkStruct_027e0ce0_38_174 mUnk_174;
|
||||
/* 19C */ UnkStruct_027e0ce0_38_19C mUnk_19C;
|
||||
/* 1C8 */ UnkStruct_027e0ce0_38_1C8 mUnk_1C8;
|
||||
/* 1FC */ UnkSubStruct19 mUnk_1FC;
|
||||
/* 1FC */ CellAnimObject mUnk_1FC;
|
||||
/* 274 */ UnkStruct_ov019_020d24c8_28_258_00 mUnk_274;
|
||||
/* 280 */
|
||||
|
||||
@@ -243,7 +247,17 @@ public:
|
||||
|
||||
class UnkStruct_027e0ce0_40_Base_94 {
|
||||
public:
|
||||
/* 00 */ STRUCT_PAD(0x00, 0x5C);
|
||||
/* 00 */ STRUCT_PAD(0x00, 0x14);
|
||||
/* 14 */ ActorRef mUnk_14;
|
||||
/* 18 */ unk32 mUnk_18;
|
||||
/* 1C */ ActorRef mUnk_1C;
|
||||
/* 20 */ unk32 mUnk_20;
|
||||
/* 24 */ STRUCT_PAD(0x24, 0x48);
|
||||
/* 48 */ ActorRef mUnk_48;
|
||||
/* 4C */ unk32 mUnk_4C;
|
||||
/* 50 */ unk32 mUnk_50;
|
||||
/* 54 */ unk32 mUnk_54;
|
||||
/* 58 */ unk32 mUnk_58;
|
||||
/* 5C */ unk32 mUnk_5C; // seems to be the walking speed of link??
|
||||
/* 60 */ unk32 mUnk_60;
|
||||
/* 64 */ unk32 mUnk_64;
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
#include "types.h"
|
||||
|
||||
struct UnkStruct_027e0cf8_00_18_00 {
|
||||
/* 00 */ UnkSubStruct19 mUnk_00;
|
||||
/* 00 */ CellAnimObject mUnk_00;
|
||||
/* 78 */ unk32 mUnk_78;
|
||||
/* 7C */ unk32 mUnk_7C;
|
||||
/* 80 */ unk32 mUnk_80;
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
#include "Actor/ActorRef.hpp"
|
||||
#include "Item/ItemManager.hpp"
|
||||
#include "System/SysNew.hpp"
|
||||
#include "math.hpp"
|
||||
@@ -25,9 +26,9 @@ public:
|
||||
|
||||
class UnkStruct_PlayerGet_64 {
|
||||
public:
|
||||
/* 00 */ unk32 mUnk_00;
|
||||
/* 00 */ ActorRef *mUnk_00;
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
/* 08 */ u16 mUnk_08;
|
||||
/* 08 */ u16 mUnk_08; // makes link invisible when set
|
||||
/* 0A */ unk16 mUnk_0A;
|
||||
/* 0C */
|
||||
|
||||
@@ -94,7 +95,7 @@ public:
|
||||
/* A0 */ STRUCT_PAD(0xA0, 0x148);
|
||||
/* 148 */ u32 mUnk_148;
|
||||
/* 14C */ unk32 mUnk_14C;
|
||||
/* 150 */ unk32 mUnk_150;
|
||||
/* 150 */ ActorRef mUnk_150;
|
||||
};
|
||||
|
||||
class UnkStruct_ov000_0208f820_30_10 {
|
||||
@@ -160,25 +161,17 @@ public:
|
||||
|
||||
class UnkStruct_ov000_0208f820_04 {
|
||||
public:
|
||||
/* 00 */ union {
|
||||
u8 mUnk_00[4];
|
||||
u16 mUnk_00_s16;
|
||||
u32 mUnk_00_s32;
|
||||
};
|
||||
/* 04 */ union {
|
||||
u8 mUnk_04[4];
|
||||
u16 mUnk_04_s16;
|
||||
u32 mUnk_04_s32;
|
||||
};
|
||||
/* 00 */ ActorRef mUnk_00;
|
||||
/* 04 */ ActorRef mUnk_04;
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
/* 0C */ ItemId mItemId;
|
||||
/* 10 */
|
||||
|
||||
UnkStruct_ov000_0208f820_04(unk32 param1, unk32 param2, unk32 param3, ItemId itemId) {
|
||||
*(u32 *) this->mUnk_00 = param1;
|
||||
*(u32 *) this->mUnk_04 = param2;
|
||||
this->mUnk_08 = param3;
|
||||
this->mItemId = itemId;
|
||||
this->mUnk_00.data = param1;
|
||||
this->mUnk_04.data = param2;
|
||||
this->mUnk_08 = param3;
|
||||
this->mItemId = itemId;
|
||||
}
|
||||
|
||||
UnkStruct_ov000_0208f820_04() {}
|
||||
|
||||
@@ -68,7 +68,7 @@ public:
|
||||
void func_ov000_0206d0bc(unk32 param1);
|
||||
void func_ov000_0206d0ec(unk32 param1, unk32 param2, unk32 param3, unk32 param4);
|
||||
void func_ov000_0206d134(unk32 param1);
|
||||
void func_ov000_0206d274(unk32 param1);
|
||||
void func_ov000_0206d274(unk32 param1); // play seq?
|
||||
|
||||
void func_ov018_020c5940();
|
||||
};
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include "Message/BMG.hpp"
|
||||
#include "Save/SaveManager.hpp"
|
||||
#include "System/SysNew.hpp"
|
||||
#include "global.h"
|
||||
@@ -33,7 +34,7 @@ public:
|
||||
/* 08 */ virtual void vfunc_08(unk32 param1); // func_ov000_020669cc
|
||||
/* 0C */ virtual unk32 vfunc_0C(); // func_ov000_020669d0
|
||||
/* 10 */ virtual unk32 vfunc_10(u16 *param1); // func_ov000_02066a5c
|
||||
/* 14 */ virtual unk32 vfunc_14(void *param1); // func_ov000_02066dfc
|
||||
/* 14 */ virtual bool vfunc_14(FLW1Instr *param1); // func_ov000_02066dfc
|
||||
/* 18 */ virtual void vfunc_18(); // func_ov000_020669d8
|
||||
/* 1C */ virtual unk32 vfunc_1C(u32 param1, unk32 param2, unk32 param3); // func_ov000_02067234
|
||||
/* 20 */ virtual unk32 vfunc_20(unk32 param1, unk32 param2, unk32 param3); // func_ov000_0206723c
|
||||
|
||||
+2
-2
@@ -319,7 +319,7 @@ static inline void Vec2pCpp_Copy(const Vec2pCpp *a, Vec2pCpp *dst) {
|
||||
}
|
||||
|
||||
//! TODO: remove
|
||||
extern "C" static inline Vec2s *Vec2s_New(s16 x, s16 y) {
|
||||
extern "C" inline Vec2s *Vec2s_New(s16 x, s16 y) {
|
||||
Vec2s vec;
|
||||
vec.x = x;
|
||||
vec.y = y;
|
||||
@@ -327,7 +327,7 @@ extern "C" static inline Vec2s *Vec2s_New(s16 x, s16 y) {
|
||||
}
|
||||
|
||||
//! TODO: remove
|
||||
extern "C" static inline Vec2s *Vec2s_GetCopy(Vec2s *src) {
|
||||
extern "C" inline Vec2s *Vec2s_GetCopy(Vec2s *src) {
|
||||
Vec2s vec;
|
||||
vec.x = src->x;
|
||||
vec.y = src->y;
|
||||
|
||||
Reference in New Issue
Block a user