Files
st/include/Actor/ActorUnkMLCK.hpp
T
Alessevan 33299ac188 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
2026-07-05 13:32:06 +02:00

139 lines
4.3 KiB
C++

#pragma once
#include "Actor/Actor.hpp"
#include "Actor/ActorProfile.hpp"
#include "FileSelect/FileSelectUnkDraw.hpp"
#include "global.h"
#include "types.h"
class ActorUnkMLCK;
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_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_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 {
public:
/* 00 (base) */
ActorProfileUnkMLCK();
~ActorProfileUnkMLCK();
/* 0C */ virtual Actor *Create();
static ActorProfileUnkMLCK *GetProfile();
};