Misc stuff 4 (#59)

* playrget progress and match treasuremanager remaining functions

* some docs

* fix build issues

* random docs

* match func_ov094_02172290

* random docs

* actor cleanup

* match freestanding item funcs

* mType -> mpProfile

* decompile random functions

* docs and start of wip chest stuff

* random docs

* more random docs

* match func_ov036_0211d0a8

* match func_ov036_0211d2dc & func_ov036_0211d570

* match func_ov110_02184a40

* random doc

* document letter/stamps system

* match func_ov001_020bb9f8

* fix build issues

* decompile tres

* start decomp chest base

* fix regressions

* name TRES

* name UnkStruct_ov024_020d86b0

* name stamp types and update save struct stuff

* name things and document BMG IDs
This commit is contained in:
Yanis
2026-05-03 18:57:01 +02:00
committed by GitHub
parent e6eae481b8
commit 645ed65b76
97 changed files with 2680 additions and 688 deletions
+3 -5
View File
@@ -95,7 +95,7 @@ public:
class MapObject_20 {
public:
/* 00 */ u16 mUnk_00[4];
/* 00 */ u16 mUnk_00[4]; // parameters
/* 08 */ u8 mUnk_08[2];
/* 0A */ u16 mUnk_0A[2];
/* 0E */ unk16 mUnk_0E;
@@ -125,7 +125,7 @@ public:
/* 1B */ unk8 mUnk_1B;
/* 1C */ MapObjFlags mFlags[1];
/* 1E */ unk16 mUnk_1E;
/* 20 */ MapObject_20 mUnk_20;
/* 20 */ MapObject_20 mUnk_20; // parameters
/* 38 */ unk8 mUnk_38;
/* 39 */ unk8 mUnk_39;
/* 3A */ Vec2b mUnk_3A;
@@ -133,7 +133,7 @@ public:
/* 40 */
// data_ov000_020b3590
/* 00 */ virtual bool vfunc_00();
/* 00 */ virtual bool vfunc_00(); // Init? the newly-created map object is deleted if this returns false
/* 04 */ virtual void vfunc_04();
/* 08 */ virtual void vfunc_08();
/* 0C */ virtual void vfunc_0C();
@@ -183,8 +183,6 @@ public:
bool func_ov000_0209d668();
void func_ov000_0209d6ac(Vec3p *param1);
void func_ov031_02103878();
static void func_ov000_0209d0bc(Vec2b *param1, MapObject *thisx);
static void func_ov000_0209d22c(unk16 *param1, MapObject *thisx, unk32 param2);
static void func_ov000_0209d54c(void *param1, MapObject *thisx, unk32 param2, Vec3p *param3, unk32 param4, unk32 param5);
+68
View File
@@ -0,0 +1,68 @@
#pragma once
#include "Item/Item.hpp"
#include "MapObject/MapObject.hpp"
#include "Unknown/Common.hpp"
#include "global.h"
#include "types.h"
class MapObjectTreasureSpawned_74 : public UnkSystem4 {
public:
/* 00 (base) */
/* 60 */ bool mUnk_60;
/* 61 */ unk8 mUnk_61; // pad?
/* 62 */ unk8 mUnk_62; // pad?
/* 63 */ unk8 mUnk_63; // pad?
/* 64 */
MapObjectTreasureSpawned_74(unk32 param1);
// data_ov031_02115844
/* 00 */ virtual ~MapObjectTreasureSpawned_74() override {}
/* 1C */ virtual void vfunc_1C(UnkSystem4_vfunc_1C *param1) override;
void func_ov000_0209dde0(void);
void func_ov031_0210306c(void);
};
class MapObjectChestBase : public MapObject {
public:
/* 000 (base) */
/* 040 */ unk32 mUnk_040;
/* 044 */ unk32 mUnk_044;
/* 048 */ unk32 mUnk_048;
/* 04C */ unk8 mUnk_04C;
/* 04D */ unk8 mUnk_04D;
/* 04E */ unk8 mUnk_04E; // pad?
/* 04F */ unk8 mUnk_04F; // pad?
/* 050 */ MapObject_10 mUnk_050;
/* 074 */ MapObjectTreasureSpawned_74 mUnk_074;
/* 0D8 */ ItemId mItemId;
/* 0DC */ UnkSubStruct19 mUnk_0DC;
/* 154 */
MapObjectChestBase(unk32 param1); // func_ov031_0210307c
/* 00 */ virtual bool vfunc_00() override;
/* 04 */ virtual void vfunc_04() override;
/* 08 */ virtual void vfunc_08() override;
/* 0C */ virtual void vfunc_0C() override;
/* 14 */ virtual void vfunc_14() override;
/* 18 */ virtual void vfunc_18(s8 *param1, s8 param2) override;
/* 28 */ virtual ItemId vfunc_28() override;
/* 30 */ virtual ~MapObjectChestBase() override;
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2);
/* 3C */ virtual unk32 vfunc_3C();
/* 40 */ virtual bool vfunc_40();
/* 44 */ virtual bool vfunc_44();
/* 4C */ virtual void vfunc_4C();
/* 50 */ virtual void vfunc_50();
/* 54 */ virtual Vec2p *vfunc_54();
/* 58 */
unk32 func_ov031_021037d0();
bool func_ov031_02103864();
void func_ov031_02103878();
void func_ov031_02103f48();
};
+4 -7
View File
@@ -4,12 +4,9 @@
#include "Unknown/UnkStruct_ov000_020b34c4.hpp"
#include "types.h"
typedef void (*UnkCallback_func_01fff4cc)(void *, void *);
#include <nitro/math.h>
struct UnkStruct_func_01fff498 {
u8 ptrIndex;
u8 valueIndex;
};
typedef void (*UnkCallback_func_01fff4cc)(void *, void *);
class MapObjectManager {
public:
@@ -29,12 +26,12 @@ public:
/* 6C */ void *mUnk_6C;
/* 70 */
MapObject *func_01fff498(UnkStruct_func_01fff498 param1);
MapObject *func_01fff498(Vec2b param1);
void func_01fff4cc(UnkCallback_func_01fff4cc param1, void *param2);
MapObject **func_01fff520(UnkStruct_ov000_020b34c4 *param1, MapObject **param2);
void func_01fff6d0(Vec3p *param1, s32 *param2, s32 *param3);
void func_ov000_0209c3a8();
MapObjectId func_ov000_0209c3a8(Vec2b *param1);
void func_ov000_0209c3e8();
void func_ov000_0209c444();
+1 -1
View File
@@ -24,7 +24,7 @@ public:
/* 0E */ unk8 mUnk_0E;
/* 0F */ u8 mUnk_0F;
/* 10 */ MapObjectId mMapObjId;
/* 14 */ unk32 mUnk_14;
/* 14 */ MapObjectId mUnk_14;
/* 18 */ unk32 mUnk_18;
/* 1C */ unk8 mUnk_1C;
/* 1D */ unk8 mUnk_1D;
@@ -0,0 +1,33 @@
#pragma once
#include "MapObject/MapObjectChestBase.hpp"
#include "MapObject/MapObjectProfile.hpp"
class MapObjectTreasureSpawned : public MapObjectChestBase {
public:
/* 00 (base) */
MapObjectTreasureSpawned();
// data_ov031_021157dc
/* 30 */ virtual ~MapObjectTreasureSpawned() override;
/* 3C */ virtual unk32 vfunc_3C() override;
/* 40 */ virtual bool vfunc_40() override;
/* 54 */ virtual Vec2p *vfunc_54() override;
void func_ov031_02102f64(void);
void func_ov031_02102f90(void);
void func_ov031_02102f98(void);
};
class MapObjectProfileTreasureSpawned : public MapObjectProfile_Derived2 {
public:
/* 00 (base) */
MapObjectProfileTreasureSpawned();
~MapObjectProfileTreasureSpawned();
/* 0C */ virtual MapObject *Create();
static MapObjectProfileTreasureSpawned *GetProfile();
};
-34
View File
@@ -1,34 +0,0 @@
//! TODO: This file was generated automatically and might contain errors
#pragma once
#include "MapObject/MapObject.hpp"
#include "MapObject/MapObjectProfile.hpp"
#include "global.h"
#include "types.h"
class MapObjectUnkTRES : public MapObject {
public:
/* 00 (base) */
/* 40 */
MapObjectUnkTRES();
/* 30 */ virtual ~MapObjectUnkTRES() override;
void func_ov031_02102f64(void);
void func_ov031_02102f90(void);
void func_ov031_02102f98(void);
};
class MapObjectProfileUnkTRES : public MapObjectProfile {
public:
/* 00 (base) */
MapObjectProfileUnkTRES();
~MapObjectProfileUnkTRES();
/* 0C */ virtual MapObject *Create();
static MapObjectProfileUnkTRES *GetProfile();
};
+3 -2
View File
@@ -10,7 +10,8 @@
class MapObjectUnkWDST : public MapObject {
public:
/* 00 (base) */
/* 40 */
/* 40 */ STRUCT_PAD(0x40, 0xB8);
/* B8 */ unk32 mUnk_B8;
MapObjectUnkWDST();
@@ -34,7 +35,7 @@ public:
void func_ov094_02172ae0(void);
void func_ov094_02172af4(void);
void func_ov094_02172bfc(void);
void func_ov094_02172c94(void);
void func_ov094_02172c94(unk32 param1);
void func_ov094_0217310c(void);
void func_ov094_021731e4(void);
void func_ov094_02173464(void);