Start decompilation of actor SZKU (#125)

This commit is contained in:
Alessevan
2026-08-07 10:09:14 -04:00
committed by GitHub
parent 7c266293a7
commit 7232214eca
17 changed files with 620 additions and 124 deletions
+2
View File
@@ -246,8 +246,10 @@ public:
// overlay 17
bool func_ov017_020beeec(unk32 param1);
void func_ov017_020bef88(Actor_vfunc_30 *param1, void *param2, unk32 param3);
void func_ov017_020bf5c4(VecFx32 *param1, unk32 param2, unk32 param3, unk32 param4, unk32 param5);
void func_ov017_020bf9c8(Actor *param1);
void func_ov017_020bfa50(VecFx32 *param1, unk32 param2);
void func_ov017_020bfb18(Actor_9C *param1);
// overlay 71 (might be temporary)
+94 -20
View File
@@ -4,38 +4,118 @@
#include "Actor/Actor.hpp"
#include "Actor/ActorProfile.hpp"
#include "ActorUnkZLSL_ZSRS.hpp"
#include "Item/Item.hpp"
#include "global.h"
#include "types.h"
class ActorUnkSZKU_C4 : public Actor_C4 {
public:
ActorUnkSZKU_C4(Actor *param1);
class ActorUnkSZKU;
class ActorProfileUnkSZKU;
struct ActorUnkZSKU_UnkStruct {
/* 00 */ void (ActorUnkSZKU::*fct)();
/* 08 */
};
class ActorUnkSZKU_204 : public UnkStruct_PlayerGet_ec {
public:
/* 00 (base) */
/* 04 */ unk32 mUnk_04;
/* 08 */ unk32 mUnk_08;
/* 0C */
ActorUnkSZKU_204();
~ActorUnkSZKU_204(); // func_ov071_02151d24
};
class ActorUnkSZKU_194 : public Actor_C4 {
public:
/* 00 (base) */
/* 24 */
ActorUnkSZKU_194(ActorUnkSZKU *param1);
// data_ov071_02164c00
/* 00 */ virtual bool vfunc_00(ActorRef ref, unk32 param2) override;
/* 04 */ virtual bool vfunc_04() override;
/* 08 */ virtual void vfunc_08() override;
/* 0C */ virtual void vfunc_0C(unk32 param1) override;
};
class ActorUnkSZKU : public Actor {
class ActorUnkSKZU_Base : public UnkStruct_ov000_020b31a8 {
public:
/* 00 (base) */
/* 94 */ STRUCT_PAD(0x94, 0xA0);
/* A0 */ ItemId mItemId;
/* 1C */
ActorUnkSKZU_Base(UnkSystem5 *param1, ModelRender *param2, unk32 param3) :
UnkStruct_ov000_020b31a8(param1, param2, param3) {}
// data_ov071_021641e0
/* 00 */ virtual ~ActorUnkSKZU_Base(); // func_ov071_02151d10 & func_ov071_0215b744
/* 30 */ virtual s8 vfunc_30();
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2) override;
/* 3C */ virtual void vfunc_3C() override;
};
class ActorUnkSKZU_104 : public ActorUnkSKZU_Base {
public:
/* 00 (base) */
/* 1C */
ActorUnkSKZU_104(UnkSystem5 *param1, ModelRender *param2, unk32 param3) :
ActorUnkSKZU_Base(param1, param2, param3) {}
// data_ov071_02164c3c
/* 00 */ virtual ~ActorUnkSKZU_104();
};
enum ActorUnkSZKUState_ {
ActorUnkSZKUState_0 = 0,
ActorUnkSZKUState_1 = 1,
ActorUnkSZKUState_2 = 2,
ActorUnkSZKUState_3 = 3,
ActorUnkSZKUState_4 = 4,
ActorUnkSZKUState_5 = 5,
ActorUnkSZKUState_6 = 6,
ActorUnkSZKUState_7 = 7,
ActorUnkSZKUState_8 = 8,
ActorUnkSZKUState_Max,
};
class ActorUnkSZKU : public Actor {
public:
/* 000 (base) */
/* 094 */ VecFx32 mUnk_094;
/* 0A0 */ ItemId mItemId;
/* 0A4 */ ModelRender mUnk_0A4;
/* 104 */ ActorUnkSKZU_104 mUnk_104;
/* 120 */ UnkSystem5 mUnk_120;
/* 140 */ unk32 mUnk_140;
/* 144 */ STRUCT_PAD(0x144, 0x160);
/* 160 */ ActorUnkZSKU_UnkStruct mUnk_160;
/* 168 */ Actor_9C mUnk_168;
/* 188 */ unk32 mUnk_188;
/* 18C */ bool mUnk_18C;
/* 18D */ bool mUnk_18D;
/* 190 */ ActorRef mUnk_190;
/* 194 */ ActorUnkSZKU_194 mUnk_194;
/* 1B8 */ u8 mUnk_1B8;
/* 1B9 */ unk8 mUnk_1B9;
/* 1BC */ UnkStruct_ov031_Items_02 mUnk_1BC;
/* 1C8 */ STRUCT_PAD(0x1C8, 0x204);
/* 204 */ ActorUnkSZKU_204 mUnk_204[0x2];
ActorUnkSZKU();
/* 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;
/* 30 */ virtual void vfunc_30(Actor_vfunc_30 *param1) override;
/* 4C */ virtual ~ActorUnkSZKU() override;
void func_ov071_0215f424(void);
void func_ov071_0215f530(void);
void func_ov071_0215f5dc(void);
void func_ov071_0215f608(void);
void func_ov071_0215f654(void);
void func_ov071_0215f714(void);
void func_ov071_0215f7dc(void);
void func_ov071_0215f7f4(void);
void func_ov071_0215f7f4(ActorState state);
void func_ov071_0215f80c(void);
void func_ov071_0215f824(void);
void func_ov071_0215f92c(void);
@@ -52,13 +132,7 @@ public:
void func_ov071_0215ff3c(void);
void func_ov071_0215ffb8(void);
void func_ov071_0215ffbc(void);
void func_ov071_02160000(void);
void func_ov071_02160038(void);
void func_ov071_02160078(void);
void func_ov071_02160094(void);
void func_ov071_021600b8(void);
void func_ov071_021600d4(void);
void func_ov071_021600e8(void);
};
class ActorProfileUnkSZKU : public ActorProfile_Derived1 {
+1 -1
View File
@@ -54,7 +54,7 @@ public:
/* 19 */ STRUCT_PAD(0x19, 0x1C);
/* 1C */
UnkStruct_ov000_020b31a8(unk32 param1, unk32 param2, unk32 param3);
UnkStruct_ov000_020b31a8(UnkSystem5 *param1, ModelRender *param2, unk32 param3);
// data_ov000_020b31a8
/* 00 */ virtual ~UnkStruct_ov000_020b31a8();
+11
View File
@@ -0,0 +1,11 @@
#pragma once
#include "types.h"
class UnkStruct_020431b8 {
public:
/* 00 */ unk32 mUnk_00;
/* 04 */ unk32 mUnk_04;
/* 08 */
};
extern UnkStruct_020431b8 data_020431b8;
+2 -1
View File
@@ -272,7 +272,6 @@ public:
// overlay 0
unk32 func_ov000_02080180(Vec2bCpp *param1);
void func_ov000_020801b0(Vec2bCpp *param1, unk32 param2, unk32 param3);
bool func_ov000_0208217c(VecFx32 *param1, unk32 param2);
bool func_ov000_020802ec(u16 param1, VecFx32 *param2);
void func_ov000_020803ec(u16 param1);
void func_ov000_0208053c(u16 param1);
@@ -283,6 +282,8 @@ public:
unk32 func_ov000_02080a44();
void func_ov000_02080a5c(VecFx32 *param1);
void func_ov000_02080a78(VecFx32 *param1);
bool func_ov000_02082008(Vec2bCpp *param1);
bool func_ov000_0208217c(VecFx32 *param1, unk32 param2);
// overlay 1
void func_ov001_020b85d0(const EntranceInfo *param1);