mirror of
https://github.com/zeldaret/st
synced 2026-07-06 05:44:35 -04:00
Decompiling MLCK actor (#99)
* feat: begin decompiling mlck actor * feat: improvements * feat: save changes as a commit not as a stash eheh * feat: improvements * feat: better match for constructor * style: remove dead code * refactor: switch to fields to bool and use != 0 for unk32
This commit is contained in:
+107
-28
@@ -1,49 +1,128 @@
|
||||
//! TODO: This file was generated automatically and might contain errors
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "Actor/Actor.hpp"
|
||||
#include "Actor/ActorProfile.hpp"
|
||||
#include "FileSelect/FileSelectUnkDraw.hpp"
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
class ActorUnkMLCK_C4 : public Actor_C4 {
|
||||
public:
|
||||
ActorUnkMLCK_C4(Actor *param1);
|
||||
class ActorUnkMLCK;
|
||||
|
||||
/* 00 */ virtual bool vfunc_00(ActorRef ref, unk32 param2) override;
|
||||
/* 04 */ virtual void vfunc_04() override;
|
||||
/* 08 */ virtual void vfunc_08() override;
|
||||
/* 0C */ virtual void vfunc_0C(unk32 param1) override;
|
||||
class ActorUnkMLCK_94 : FileSelectManager_UnkDrawBase {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 0C */
|
||||
|
||||
// /* 00 */ virtual ~ActorUnkMLCK_94() override; // func_ov031_020fb2fc & func_ov031_020fb2ac
|
||||
/* 10 */ virtual void vfunc_10(unk32 param1, unk32 param2) override; // func_ov031_020fb2ec
|
||||
/* 1C */ virtual void vfunc_1C(unk32 param1) override; // func_ov031_020fb2dc
|
||||
/* 20 */ virtual void vfunc_20(unk32 param1, unk32 param2) override; // func_ov031_020fb2cc
|
||||
/* 24 */ virtual void vfunc_24() override; // func_ov031_020fb2bc
|
||||
};
|
||||
|
||||
class ActorUnkMLCK : public Actor {
|
||||
class ActorUnkMLCK_D8 {
|
||||
public:
|
||||
/* 00 (vtable) */
|
||||
/* 04 */ bool mUnk_04;
|
||||
/* 05 */ bool mUnk_05;
|
||||
/* 08 */ ActorUnkMLCK *mUnk_08;
|
||||
/* 0C */
|
||||
|
||||
ActorUnkMLCK_D8(ActorUnkMLCK *actor) :
|
||||
mUnk_04(true),
|
||||
mUnk_05(true),
|
||||
mUnk_08(actor) {}
|
||||
|
||||
/* 00 */ virtual void vfunc2_00() override; // func_ov031_020fb1b0
|
||||
/* 04 */ virtual void vfunc2_04() override; // func_ov031_020fb1cc
|
||||
};
|
||||
|
||||
class ActorUnkMLCK_B4_00 {
|
||||
public:
|
||||
/* 00 (vtable) */
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
/* 0C */ u16 mUnk_0C;
|
||||
/* 0E */ u16 mUnk_0E;
|
||||
/* 10 */ u16 mUnk_10;
|
||||
/* 12 */ u16 mUnk_12;
|
||||
/* 14 */
|
||||
|
||||
/* 00 */ virtual void vfunc_00();
|
||||
/* 04 */ virtual bool vfunc_04();
|
||||
/* 08 */ virtual void vfunc_08();
|
||||
|
||||
void func_ov031_020fb184();
|
||||
};
|
||||
|
||||
class ActorUnkMLCK_B4 {
|
||||
public:
|
||||
/* 00 */ ActorUnkMLCK_B4_00 *mUnk_00;
|
||||
/* 04 */
|
||||
};
|
||||
|
||||
class Actor_ov102_02184950 : public Actor {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 94 */
|
||||
|
||||
/* 20 */ virtual void vfunc_20() override; // func_ov102_02184644
|
||||
/* 24 */ virtual void vfunc_24() override; // func_ov102_021847d4
|
||||
|
||||
/* 54 */ virtual void vfunc_54(unk32 param1, unk32 param2) override;
|
||||
/* 58 */ virtual void vfunc_58() override;
|
||||
/* 5C */ virtual void vfunc_5C() override;
|
||||
/* 60 */ virtual void vfunc_60() override;
|
||||
/* 64 */ virtual void vfunc_64(unk32 param1) override;
|
||||
/* 68 */ virtual void vfunc_68() override;
|
||||
/* 6C */ virtual void vfunc_6C() override;
|
||||
/* 70 */ virtual void vfunc_70() override;
|
||||
};
|
||||
|
||||
class ActorUnkMLCK : public Actor_ov102_02184950 {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 94 */ ActorUnkMLCK_94 mUnk_94;
|
||||
/* A0 */ ActorUnkMLCK_B4 mUnk_A0[0x5];
|
||||
/* B4 */ ActorUnkMLCK_B4 *mUnk_B4;
|
||||
/* B8 */ unk32 mUnk_B8;
|
||||
/* BC */ unk32 mUnk_BC;
|
||||
/* C0 */ u16 mUnk_C0;
|
||||
/* C2 */ u16 mUnk_C2;
|
||||
/* C4 */ ActorUnkMLCK_B4_00 *mUnk_C4;
|
||||
/* C8 */ unk32 mUnk_C8;
|
||||
/* CC */ unk32 mUnk_CC;
|
||||
/* D0 */ unk16 mUnk_D0;
|
||||
/* D0 */ unk16 mUnk_D2;
|
||||
/* D0 */ unk16 mUnk_D4;
|
||||
/* D0 */ unk16 mUnk_D6;
|
||||
/* D8 */ ActorUnkMLCK_D8 mUnk_D8;
|
||||
/* E4 */ ActorUnkMLCK_D8 mUnk_E4;
|
||||
/* F0 */ bool mUnk_F0;
|
||||
/* F1 */ bool mUnk_F1;
|
||||
/* F2 */ bool mUnk_F2;
|
||||
/* F2 */ bool mUnk_F3;
|
||||
/* F4 */ unk32 mUnk_F4;
|
||||
|
||||
ActorUnkMLCK();
|
||||
|
||||
/* 18 */ virtual bool vfunc_18(unk32 param1) override; // func_ov031_020fac64
|
||||
/* 4C */ virtual ~ActorUnkMLCK() override;
|
||||
/* 54 */ virtual void vfunc_54(unk32 param1, unk32 param2) override; // func_ov031_020fad88
|
||||
/* 58 */ virtual void vfunc_58() override; // func_ov031_020fada8
|
||||
/* 5C */ virtual void vfunc_5C() override; // func_ov031_020fadb4
|
||||
/* 60 */ virtual void vfunc_60() override; // func_ov031_020fae08
|
||||
/* 64 */ virtual void vfunc_64(unk32 param1) override; // func_ov031_020fad3c
|
||||
/* 68 */ virtual void vfunc_68() override; // func_ov031_020fae20
|
||||
/* 6C */ virtual void vfunc_6C() override; // func_ov031_020faeb4
|
||||
/* 70 */ virtual void vfunc_70() override; // func_ov031_020faf04
|
||||
|
||||
void func_ov031_020fac64(void);
|
||||
void func_ov031_020fad3c(void);
|
||||
void func_ov031_020fad88(void);
|
||||
void func_ov031_020fada8(void);
|
||||
void func_ov031_020fadb4(void);
|
||||
void func_ov031_020fae08(void);
|
||||
void func_ov031_020fae20(void);
|
||||
void func_ov031_020faeb0(void);
|
||||
void func_ov031_020faeb4(void);
|
||||
void func_ov031_020faf04(void);
|
||||
void func_ov031_020faf24(void);
|
||||
void func_ov031_020fb104(void);
|
||||
void func_ov031_020fb11c(void);
|
||||
void func_ov031_020fb184(void);
|
||||
void func_ov031_020fb1b0(void);
|
||||
void func_ov031_020fb1cc(void);
|
||||
void func_ov031_020fb1e8(void);
|
||||
void func_ov031_020fb204(void);
|
||||
void func_ov031_020faeb0();
|
||||
void func_ov031_020faf24();
|
||||
void func_ov031_020fb104();
|
||||
void func_ov031_020fb11c();
|
||||
void func_ov031_020fb1e8(ActorUnkMLCK_B4_00 *param1);
|
||||
bool func_ov031_020fb204(unk32 param1);
|
||||
};
|
||||
|
||||
class ActorProfileUnkMLCK : public ActorProfile {
|
||||
|
||||
@@ -636,10 +636,17 @@ public:
|
||||
bool func_ov024_020ca280();
|
||||
};
|
||||
|
||||
class AdventureModeManager_194_0C {
|
||||
public:
|
||||
/* 00 (base) */ STRUCT_PAD(0x00, 0xC4);
|
||||
/* C4 */ u8 mUnk_C4;
|
||||
/* C8 */
|
||||
};
|
||||
|
||||
class AdventureModeManager_194 : public FileSelectManager_UnkDrawBase {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 0C */ unk32 mUnk_0C;
|
||||
/* 0C */ AdventureModeManager_194_0C *mUnk_0C;
|
||||
/* 10 */ STRUCT_PAD(0x10, 0x48);
|
||||
/* 48 */
|
||||
|
||||
@@ -991,7 +998,7 @@ public:
|
||||
void func_ov024_020c6c60();
|
||||
void func_ov024_020c6cd4();
|
||||
bool func_ov024_020c6ce4();
|
||||
unk32 func_ov024_020c6d04();
|
||||
AdventureModeManager_194_0C *func_ov024_020c6d04();
|
||||
void func_ov024_020c6d10();
|
||||
void func_ov024_020c6d20(unk32 param1);
|
||||
void func_ov024_020c6d2c(unk32 param1);
|
||||
|
||||
@@ -17,9 +17,12 @@ public:
|
||||
UnkStruct_027e0d34();
|
||||
~UnkStruct_027e0d34();
|
||||
|
||||
// overlay 31
|
||||
bool func_ov031_020d97e4();
|
||||
bool func_ov031_020d97f4();
|
||||
void func_ov031_020d9844();
|
||||
void func_ov031_020d994c();
|
||||
void func_ov031_020d996c();
|
||||
bool TryItemGive(ItemId itemId);
|
||||
};
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include "Actor/ActorUnkMLCK.hpp"
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
@@ -15,6 +16,9 @@ public:
|
||||
|
||||
UnkStruct_ov000_020b52e8();
|
||||
~UnkStruct_ov000_020b52e8();
|
||||
|
||||
// overlay 0
|
||||
ActorUnkMLCK_B4_00 *func_ov000_0206f980(unk32 param1);
|
||||
};
|
||||
|
||||
extern UnkStruct_ov000_020b52e8 data_ov000_020b52e8;
|
||||
|
||||
Reference in New Issue
Block a user