mirror of
https://github.com/zeldaret/st
synced 2026-05-24 07:10:56 -04:00
0f74fd4201
* name item 31 to 34 * name item 25 to 29 * decompile PassengerManager (95%) * started cargo manager * local attribute * passenger/cargo manager ov001 functions * name item manager functions * fix build issues & more docs on 027e0cd8 * format
304 lines
10 KiB
C++
304 lines
10 KiB
C++
#pragma once
|
|
|
|
#include "Save/SaveManager.hpp"
|
|
#include "System/SysNew.hpp"
|
|
#include "global.h"
|
|
#include "types.h"
|
|
|
|
struct UnkStruct5 {
|
|
unk8 mUnk_00;
|
|
u8 mUnk_01;
|
|
u16 mUnk_02;
|
|
|
|
u16 mUnk_04;
|
|
u8 mUnk_06;
|
|
};
|
|
|
|
// data_ov000_020b2078
|
|
class UnkSystem1_ov000_Base : public SysObject {
|
|
public:
|
|
/* 00 (vtable) */
|
|
/* 04 */ unk16 mUnk_04;
|
|
/* 06 */ u16 mUnk_06;
|
|
/* 08 */ unk32 mUnk_08;
|
|
|
|
UnkSystem1_ov000_Base(unk32 param1);
|
|
bool func_ov000_020669b4(u8 *param1);
|
|
void func_ov000_020669dc();
|
|
unk32 func_ov000_02066a08(UnkStruct5 *param1);
|
|
|
|
/* 00 */ virtual void vfunc_00(unk32 param1); // func_ov000_020667d8
|
|
/* 04 */ virtual void vfunc_04(); // func_ov000_020667f4
|
|
/* 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
|
|
/* 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
|
|
/* 24 */
|
|
};
|
|
|
|
// data_ov000_020b20a4
|
|
class UnkSystem1_ov000_Derived1 : public UnkSystem1_ov000_Base {
|
|
public:
|
|
/* 00 (base) */
|
|
/* 0C */ UnkStruct_ov000_02067bc4::UnkStruct1 *mUnk_0C;
|
|
/* 10 */ unk16 mUnk_10;
|
|
/* 12 */ unk8 mUnk_12; // file slot index
|
|
/* 13 */ unk8 mUnk_13;
|
|
/* 14 */
|
|
|
|
UnkSystem1_ov000_Derived1();
|
|
UnkSystem1_ov000_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
void func_ov000_0206738c();
|
|
|
|
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov000_020673c8
|
|
/* 0C */ virtual unk32 vfunc_0C() override; // func_ov000_02067434
|
|
/* 10 */ virtual unk32 vfunc_10(u16 *param1) override; // func_ov000_02067474
|
|
/* 24 */ virtual ~UnkSystem1_ov000_Derived1(); // func_ov000_020672ac & func_ov000_020672f4
|
|
};
|
|
|
|
// data_ov000_020b489c
|
|
class UnkSystem1_ov000_Derived2 : public UnkSystem1_ov000_Base {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov000_Derived2(unk32 param1, unk32 param2);
|
|
|
|
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov000_0209fbec
|
|
/* 0C */ virtual unk32 vfunc_0C() override; // func_ov000_0209fcdc
|
|
/* 24 */ virtual ~UnkSystem1_ov000_Derived2() override; // func_ov000_0209fb18 & func_ov000_0209fb5c
|
|
};
|
|
|
|
// data_ov010_020b8e10
|
|
class UnkSystem1_ov010 : public UnkSystem1_ov000_Derived1 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov010(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
|
|
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov010_020b8844
|
|
/* 1C */ virtual unk32 vfunc_1C(u32 param1, unk32 param2, unk32 param3) override; // func_ov010_020b8878
|
|
/* 24 */ virtual ~UnkSystem1_ov010() override; // func_ov010_020b65f0
|
|
};
|
|
|
|
class UnkSystem1_ov010_Derived1 : public UnkSystem1_ov010 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov010_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
/* 24 */ virtual ~UnkSystem1_ov010_Derived1() override; // func_ov010_020b88b0
|
|
};
|
|
|
|
// data_ov016_020b8278
|
|
class UnkSystem1_ov016 : public UnkSystem1_ov000_Derived1 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov016(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
|
|
/* 24 */ virtual ~UnkSystem1_ov016() override; // func_ov016_020b7650
|
|
};
|
|
|
|
class UnkSystem1_ov016_Derived1 : public UnkSystem1_ov016 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov016_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
/* 24 */ virtual ~UnkSystem1_ov016_Derived1() override; // func_ov016_020b7664
|
|
/* 2C */ virtual void vfunc_2C(); // func_ov016_020b776c
|
|
};
|
|
|
|
// data_ov019_020d1e00
|
|
class UnkSystem1_ov019_1 : public UnkSystem1_ov000_Derived1 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov019_1();
|
|
UnkSystem1_ov019_1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2) :
|
|
UnkSystem1_ov000_Derived1(param1, param2) {}
|
|
|
|
/* 24 */ virtual ~UnkSystem1_ov019_1() override {} // func_ov019_020c4914
|
|
};
|
|
|
|
class UnkSystem1_ov019_Derived1 : public UnkSystem1_ov019_1 {
|
|
public:
|
|
/* 00 (base) */
|
|
/* 14 */ SaveFile *mUnk_14;
|
|
/* 18 */ unk16 mUnk_18;
|
|
/* 1A */ unk8 mUnk_1A; // bool?
|
|
/* 1B */ u8 mUnk_1B; // bool?
|
|
/* 1C */
|
|
|
|
UnkSystem1_ov019_Derived1();
|
|
UnkSystem1_ov019_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
|
|
void func_ov019_020c5200();
|
|
unk32 func_ov019_020c5540(bool param1, unk16 param2);
|
|
void func_ov019_020c5590(unk32 param1, unk32 param2, unk32 param3);
|
|
|
|
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov019_020c523c
|
|
/* 1C */ virtual unk32 vfunc_1C(u32 param1, unk32 param2, unk32 param3) override; // func_ov019_020c5284
|
|
/* 20 */ virtual unk32 vfunc_20(unk32 param1, unk32 param2, unk32 param3) override; // func_ov019_020c5430
|
|
/* 24 */ WEAK virtual ~UnkSystem1_ov019_Derived1() override {} // func_ov019_020c5614
|
|
};
|
|
|
|
class UnkSystem1_ov019_2 : public UnkSystem1_ov000_Derived1 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov019_2(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2) :
|
|
UnkSystem1_ov000_Derived1(param1, param2) {}
|
|
|
|
/* 24 */ virtual ~UnkSystem1_ov019_2() override {} // func_ov019_020c4c38
|
|
};
|
|
|
|
// used to create new files
|
|
class UnkSystem1_ov019_Derived2 : public UnkSystem1_ov019_2 { // 0x02262F24
|
|
public:
|
|
/* 00 (base) */
|
|
/* 14 */ bool mUnk_14;
|
|
/* 15 */ u8 mUnk_15;
|
|
/* 16 */ unk8 mUnk_16;
|
|
/* 17 */ unk8 mUnk_17;
|
|
/* 18 */
|
|
|
|
UnkSystem1_ov019_Derived2();
|
|
|
|
// data_ov019_020d2440 vtable
|
|
/* 08 */ virtual void vfunc_08(unk32 param1) override; // func_ov019_020d035c
|
|
/* 1C */ virtual unk32 vfunc_1C(u32 param1, unk32 param2, unk32 param3) override; // func_ov019_020d03a4
|
|
/* 24 */ WEAK virtual ~UnkSystem1_ov019_Derived2() override {} // func_ov019_020d0594
|
|
};
|
|
|
|
class UnkSystem1_ov019_3 : public UnkSystem1_ov000_Derived1 {
|
|
public:
|
|
/* 00 (base) */
|
|
/* 14 */
|
|
|
|
UnkSystem1_ov019_3(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2) :
|
|
UnkSystem1_ov000_Derived1(param1, param2) {}
|
|
|
|
/* 24 */ virtual ~UnkSystem1_ov019_3() override {} // func_ov019_020c5fd0
|
|
};
|
|
|
|
// used to copy and delete files
|
|
class UnkSystem1_ov019_Derived3 : public UnkSystem1_ov019_3 {
|
|
public:
|
|
/* 00 (base) */
|
|
/* 14 */ bool mUnk_14;
|
|
/* 15 */ unk8 mUnk_15;
|
|
/* 16 */ unk8 mUnk_16;
|
|
/* 17 */ unk8 mUnk_17;
|
|
/* 18 */ unk32 mUnk_18; // operating mode: 0 for copy and 1 for erase
|
|
/* 1C */ unk32 mUnk_1C;
|
|
/* 20 */ u8 mUnk_20; // bool?
|
|
/* 21 */ bool mUnk_21;
|
|
/* 22 */ unk8 mUnk_22;
|
|
/* 22 */ unk8 mUnk_23;
|
|
|
|
UnkSystem1_ov019_Derived3();
|
|
|
|
// data_ov019_020d2474 vtable
|
|
/* 04 */ virtual void vfunc_04() override;
|
|
/* 08 */ virtual void vfunc_08(unk32 param1) override;
|
|
/* 1C */ virtual unk32 vfunc_1C(u32 param1, unk32 param2, unk32 param3) override;
|
|
/* 24 */ WEAK virtual ~UnkSystem1_ov019_Derived3() override {}
|
|
};
|
|
|
|
// data_ov036_021225f4
|
|
class UnkSystem1_ov036 : public UnkSystem1_ov000_Derived1 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov036(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
|
|
/* 24 */ virtual ~UnkSystem1_ov036() override; // func_ov036_0211eb68
|
|
};
|
|
|
|
class UnkSystem1_ov036_Derived1 : public UnkSystem1_ov036 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov036_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
|
|
/* 24 */ virtual ~UnkSystem1_ov036_Derived1() override; // func_ov036_02120c18
|
|
};
|
|
|
|
// data_ov056_0213ec20
|
|
class UnkSystem1_ov056 : public UnkSystem1_ov000_Derived1 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov056(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
|
|
/* 24 */ virtual ~UnkSystem1_ov056() override; // func_ov056_0213b910
|
|
};
|
|
|
|
class UnkSystem1_ov056_Derived1 : public UnkSystem1_ov056 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov056_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
|
|
/* 24 */ virtual ~UnkSystem1_ov056_Derived1() override; // func_ov056_0213d4dc
|
|
};
|
|
|
|
// data_ov059_02163a28
|
|
class UnkSystem1_ov059 : public UnkSystem1_ov000_Derived1 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov059(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
|
|
/* 24 */ virtual ~UnkSystem1_ov059() override; // func_ov059_021605c8 (?)
|
|
};
|
|
|
|
class UnkSystem1_ov059_Derived1 : public UnkSystem1_ov059 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov059_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
|
|
/* 24 */ virtual ~UnkSystem1_ov059_Derived1() override; // func_ov059_02160d98
|
|
};
|
|
|
|
// data_ov062_021608e8
|
|
class UnkSystem1_ov062 : public UnkSystem1_ov000_Derived1 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov062(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
|
|
/* 24 */ virtual ~UnkSystem1_ov062() override; // func_ov062_0215cf18
|
|
};
|
|
|
|
class UnkSystem1_ov062_Derived1 : public UnkSystem1_ov062 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov062_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
|
|
/* 24 */ virtual ~UnkSystem1_ov062_Derived1() override; // func_ov062_0215e734
|
|
};
|
|
|
|
// data_ov063_02163714
|
|
class UnkSystem1_ov063 : public UnkSystem1_ov000_Derived1 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov063(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
|
|
/* 24 */ virtual ~UnkSystem1_ov063() override; // func_ov063_0215f1c0
|
|
};
|
|
|
|
class UnkSystem1_ov063_Derived1 : public UnkSystem1_ov063 {
|
|
public:
|
|
/* 00 (base) */
|
|
|
|
UnkSystem1_ov063_Derived1(unk32 param1, UnkStruct_ov000_02067bc4::UnkStruct1 *param2);
|
|
|
|
/* 24 */ virtual ~UnkSystem1_ov063_Derived1() override; // func_ov063_0215f29c
|
|
};
|