PlayerControl: Decomp 7%

This commit is contained in:
Aetias
2025-01-09 08:24:32 +01:00
parent 6b9c7701fe
commit a76eefa1a5
15 changed files with 142 additions and 38 deletions
+27 -1
View File
@@ -1,3 +1,29 @@
#pragma once
class ActorNavi;
#include "global.h"
#include "types.h"
#include "Actor/Actor.hpp"
#include "Actor/ActorNaviBase.hpp"
#include "Render/ModelRender.hpp"
class ActorNavi : public ActorNaviBase {
public:
/* 000 (base) */
/* 294 */ ModelRender mUnk_294;
/* 2f0 */ void *mUnk_2f0;
/* 2f4 */ unk8 mUnk_2f4[0x40];
/* 334 */ unk32 mUnk_334;
/* 338 */ unk32 mUnk_338;
/* 33c */ unk32 mUnk_33c;
/* 340 */ unk16 mUnk_340;
/* 342 */ unk8 mUnk_342[0x2];
/* 344 */ unk32 mUnk_344;
/* 348 */ unk32 mUnk_348;
/* 34c */ unk8 mUnk_34c[0x68];
/* 3b4 */ unk32 mUnk_3b4;
/* 3b8 */ unk32 mUnk_3b8;
/* 3bc */ unk32 mUnk_3bc;
/* 3c0 */ unk8 mUnk_3c0[0x8];
/* 3c8 */
};
+34
View File
@@ -0,0 +1,34 @@
#pragma once
#include "global.h"
#include "types.h"
#include "Actor/Actor.hpp"
#include "Render/ModelRender.hpp"
class ActorNaviBase : public Actor {
public:
/* 000 (base) */
/* 158 */ Vec3p mOffsetPos;
/* 164 */ u32 mUnk_164;
/* 168 */ unk8 mUnk_168[0x68];
/* 1d0 */ void *mUnk_1d0;
/* 164 */ unk8 mUnk_1d4[0x40];
/* 214 */ unk16 mUnk_214;
/* 216 */ unk8 mUnk_216[0xc];
/* 222 */ unk16 mUnk_222;
/* 224 */ unk8 mUnk_224[0x28];
/* 24c */ unk32 mUnk_24c;
/* 250 */ unk32 mUnk_250;
/* 254 */ unk32 mUnk_254;
/* 258 */ unk32 mUnk_258;
/* 25c */ unk32 mUnk_25c;
/* 260 */ unk32 mUnk_260;
/* 264 */ unk8 mUnk_264[0x1c];
/* 280 */ unk32 mUnk_280;
/* 284 */ unk32 mUnk_284;
/* 288 */ unk8 mUnk_288[0x2];
/* 28a */ unk16 mUnk_28a;
/* 28c */ unk8 mUnk_28c[0x8];
/* 294 */
};
+1 -1
View File
@@ -4,7 +4,7 @@
#include "types.h"
struct UnkStruct_027e05f8 {
/* 0 */ unk16 mUnk_0;
/* 0 */ u16 mUnk_0;
/* 2 */ unk16 mUnk_2;
/* 4 */ unk16 mUnk_4;
/* 6 */
+4 -1
View File
@@ -16,10 +16,13 @@ struct UnkStruct_027e103c {
/* 20 */ unk16 mUnk_20;
/* 22 */ s16 mUnk_22;
/* 24 */ u8 mUnk_24;
/* 25 */ unk8 mUnk_25[7];
/* 25 */ unk8 mUnk_25[5];
/* 2a */ unk8 mUnk_2a;
/* 2c */
unk32 func_ov000_020cf01c();
void func_ov000_020cf2b8();
void func_ov000_020cf9dc(s32 param1, s32 param2);
};
extern UnkStruct_027e103c *data_027e103c;
+21
View File
@@ -0,0 +1,21 @@
#pragma once
#include "types.h"
struct UnkStruct_027e1098 {
/* 00 */ unk8 mUnk_00[0x38];
/* 38 */ unk32 mUnk_38;
/* 3c */ unk32 mUnk_3c;
/* 40 */ unk32 mUnk_40;
/* 44 */ unk32 mUnk_44;
/* 48 */ unk8 mUnk_48;
/* 49 */ unk8 mUnk_49;
/* 4a */ unk8 mUnk_4a;
/* 4b */ unk8 mUnk_4b;
/* 4c */ unk32 mUnk_4c;
/* 50 */
void func_ov014_0211fd04();
};
extern UnkStruct_027e1098 *data_027e1098;
+3 -3
View File
@@ -8,7 +8,7 @@ extern "C" {
#include "lib/math.h"
#include "types.h"
#include "Actor/ActorNavi.hpp"
#include "Actor/ActorNaviBase.hpp"
#include "DTCM/UnkStruct_027e0f78.hpp"
#include "Item/Item.hpp"
#include "Map/MapManager.hpp"
@@ -172,7 +172,7 @@ public:
/* 008 */ ItemFlag mForcedItem; // game crashes when any item besides this one is equipped
/* 00c */ u32 mHourglassSandFrames;
/* 010 */ FairyId mEquippedFairy;
/* 014 */ ActorNavi *mFairies[FairyId_COUNT];
/* 014 */ ActorNaviBase *mFairies[FairyId_COUNT];
/* 020 */ u16 mEquipLoadTimer;
/* 022 */ u16 mNumRupees;
/* 024 */ u8 mNumGems[Gem_COUNT];
@@ -218,7 +218,7 @@ public:
// Fairy
FairyId GetEquippedFairy() const;
ActorNavi *GetFairy(FairyId id) const;
ActorNaviBase *GetFairy(FairyId id) const;
u32 GetActiveFairyLevel(FairyId id) const;
u32 GetFairyLevel(FairyId id) const;
+2
View File
@@ -41,4 +41,6 @@ public:
/* 34 */ virtual void vfunc_34(unk16 *param1) override; // func_ov58_0213ecb4
/* 38 */ virtual void vfunc_38(unk32 param1) override; // func_ov58_02199170
/* 50 */
void func_ov014_0213ec64();
};
+1 -1
View File
@@ -48,7 +48,7 @@ public:
/* 7b */ bool mUnk_7b;
/* 7c */ s8 mUnk_7c;
/* 7d */ bool mUnk_7d;
/* 7e */ s8 mUnk_7e;
/* 7e */ u8 mUnk_7e;
/* 7f */ bool mUnk_7f;
/* 80 */ bool mUnk_80;
/* 81 */ bool mFollowing;