summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAetias <144526980+AetiasHax@users.noreply.github.com>2026-04-16 23:10:14 +0200
committerGitHub <noreply@github.com>2026-04-16 23:10:14 +0200
commit38e9378f8f4bc465a09305e5021ead2eb89afb2b (patch)
treecb0c3cad894ce4d2fd74d111c090f8ca9698bb99 /include
parent81f4540e6c2e4b80709f6837298b27929e6a4061 (diff)
Delink ActorShopItem.cpp (#147)
* Make types compatible with dsd-ghidra typesync * Update actors.md * Update docs * Delink ActorShopItem.cpp
Diffstat (limited to 'include')
-rw-r--r--include/Actor/ActorShopItem.hpp409
-rw-r--r--include/DTCM/UnkStruct_027e0e58.hpp2
-rw-r--r--include/DTCM/UnkStruct_027e105c.hpp3
-rw-r--r--include/Message/MessageManager.hpp2
-rw-r--r--include/Unknown/UnkStruct_027e0dbc.hpp2
-rw-r--r--include/Unknown/UnkStruct_ov000_020e9c88.hpp2
-rw-r--r--include/lib/touch.h12
7 files changed, 427 insertions, 5 deletions
diff --git a/include/Actor/ActorShopItem.hpp b/include/Actor/ActorShopItem.hpp
new file mode 100644
index 00000000..2c27a854
--- /dev/null
+++ b/include/Actor/ActorShopItem.hpp
@@ -0,0 +1,409 @@
+#pragma once
+
+#include "global.h"
+#include "types.h"
+
+#include "Actor/Actor.hpp"
+#include "Actor/ActorType.hpp"
+
+class ActorShopItemBase : public Actor {
+public:
+ /* 000 (base) */
+ /* 158 */ unk32 mUnk_158;
+ /* 15c */ unk8 mUnk_15c;
+ /* 15d */ unk8 mUnk_15d;
+ /* 15e */ unk8 mUnk_15e;
+ /* 160 */
+
+ /* 00 */ virtual ~ActorShopItemBase() override;
+ /* 08 */ virtual bool Init() override;
+ /* 14 */ virtual void vfunc_14(u32 param1) override;
+ /* 18 */ virtual void vfunc_18(u32 param1) override;
+ /* b4 */ virtual bool vfunc_b4();
+ /* b8 */ virtual bool vfunc_b8();
+ /* bc */
+
+ ActorShopItemBase();
+};
+
+class ActorShopItem : public ActorShopItemBase {
+public:
+ /* 000 (base) */
+ /* 160 */ unk32 mUnk_160;
+ /* 164 */ unk32 mUnk_164;
+ /* 168 */ unk16 mUnk_168;
+ /* 16a */ unk16 mUnk_16a;
+ /* 16c */ unk16 mUnk_16c;
+ /* 16e */ unk16 mUnk_16e;
+ /* 170 */ unk16 mUnk_170;
+ /* 172 */ unk16 mUnk_172;
+ /* 174 */ unk8 mUnk_174;
+ /* 175 */ unk8 mUnk_175;
+ /* 178 */
+
+ /* 00 */ virtual ~ActorShopItem() override;
+ /* 08 */ virtual bool Init() override;
+ /* 14 */ virtual void vfunc_14(u32 param1) override;
+ /* 20 */ virtual void vfunc_20(bool param1) override;
+ /* bc */ virtual unk32 vfunc_bc() = 0;
+ /* c0 */ virtual unk32 vfunc_c0();
+ /* c4 */ virtual void vfunc_c4();
+ /* c8 */ virtual void vfunc_c8();
+ /* cc */ virtual void vfunc_cc();
+ /* d0 */ virtual unk32 vfunc_d0() = 0;
+ /* d4 */ virtual void vfunc_d4();
+ /* d8 */ virtual unk32 vfunc_d8();
+ /* dc */ virtual unk32 vfunc_dc();
+ /* e0 */ virtual unk32 vfunc_e0();
+ /* e4 */
+
+ ActorShopItem();
+
+ void func_ov031_0217f0b4();
+ void func_ov031_0217f114();
+ void func_ov031_0217f120();
+ unk32 func_ov031_0217f868();
+};
+
+class ActorShopItemDM : public ActorShopItem {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 178 */
+
+ /* 00 */ virtual ~ActorShopItemDM() override;
+ /* 08 */ virtual bool Init() override;
+ /* 20 */ virtual void vfunc_20(bool param1) override;
+ /* bc */ virtual unk32 vfunc_bc() override;
+ /* d0 */ virtual unk32 vfunc_d0() override;
+ /* d4 */ virtual void vfunc_d4() override;
+ /* e4 */
+
+ static ActorShopItemDM *Create();
+};
+
+class ActorShopItemSoldOut : public ActorShopItem {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 178 */
+
+ /* 00 */ virtual ~ActorShopItemSoldOut() override;
+ /* 08 */ virtual bool Init() override;
+ /* bc */ virtual unk32 vfunc_bc() override;
+ /* d0 */ virtual unk32 vfunc_d0() override;
+ /* d4 */ virtual void vfunc_d4() override;
+ /* e4 */
+
+ static ActorShopItemSoldOut *Create();
+};
+
+class ActorShopItemHeartContainer : public ActorShopItem {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 178 */
+
+ /* 00 */ virtual ~ActorShopItemHeartContainer() override;
+ /* 08 */ virtual bool Init() override;
+ /* bc */ virtual unk32 vfunc_bc() override;
+ /* c4 */ virtual void vfunc_c4() override;
+ /* d0 */ virtual unk32 vfunc_d0() override;
+ /* d4 */ virtual void vfunc_d4() override;
+ /* e0 */ virtual unk32 vfunc_e0() override;
+ /* e4 */
+
+ static ActorShopItemHeartContainer *Create();
+};
+
+class ActorShopItemArrows : public ActorShopItem {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 178 */
+
+ /* 00 */ virtual ~ActorShopItemArrows() override;
+ /* 08 */ virtual bool Init() override;
+ /* bc */ virtual unk32 vfunc_bc() override;
+ /* c4 */ virtual void vfunc_c4() override;
+ /* d0 */ virtual unk32 vfunc_d0() override;
+ /* e4 */
+
+ static ActorShopItemArrows *Create();
+};
+
+class ActorShopItemBombs : public ActorShopItem {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 178 */
+
+ /* 00 */ virtual ~ActorShopItemBombs() override;
+ /* 08 */ virtual bool Init() override;
+ /* bc */ virtual unk32 vfunc_bc() override;
+ /* c4 */ virtual void vfunc_c4() override;
+ /* d0 */ virtual unk32 vfunc_d0() override;
+ /* e4 */
+
+ static ActorShopItemBombs *Create();
+};
+
+class ActorShopItemBombchus : public ActorShopItem {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 178 */
+
+ /* 00 */ virtual ~ActorShopItemBombchus() override;
+ /* 08 */ virtual bool Init() override;
+ /* bc */ virtual unk32 vfunc_bc() override;
+ /* c4 */ virtual void vfunc_c4() override;
+ /* d0 */ virtual unk32 vfunc_d0() override;
+ /* e4 */
+
+ static ActorShopItemBombchus *Create();
+};
+
+class ActorShopItemQuiver : public ActorShopItem {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 178 */
+
+ /* 00 */ virtual ~ActorShopItemQuiver() override;
+ /* 08 */ virtual bool Init() override;
+ /* bc */ virtual unk32 vfunc_bc() override;
+ /* c4 */ virtual void vfunc_c4() override;
+ /* d0 */ virtual unk32 vfunc_d0() override;
+ /* e4 */
+
+ static ActorShopItemQuiver *Create();
+};
+
+class ActorShopItemBombBag : public ActorShopItem {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 178 */
+
+ /* 00 */ virtual ~ActorShopItemBombBag() override;
+ /* 08 */ virtual bool Init() override;
+ /* bc */ virtual unk32 vfunc_bc() override;
+ /* c4 */ virtual void vfunc_c4() override;
+ /* d0 */ virtual unk32 vfunc_d0() override;
+ /* e4 */
+
+ static ActorShopItemBombBag *Create();
+};
+
+class ActorShopItemB2 : public ActorShopItem {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 178 */
+
+ /* 00 */ virtual ~ActorShopItemB2() override;
+ /* 08 */ virtual bool Init() override;
+ /* bc */ virtual unk32 vfunc_bc() override;
+ /* c4 */ virtual void vfunc_c4() override;
+ /* d0 */ virtual unk32 vfunc_d0() override;
+ /* e4 */
+
+ static ActorShopItemB2 *Create();
+};
+
+struct ActorShopItemCollectable_Unk1 {
+ /* 00 */ unk32 mUnk_00;
+ /* 04 */ unk32 mUnk_04;
+ /* 08 */ unk32 mUnk_08;
+ /* 0c */ unk32 mUnk_0c;
+ /* 10 */ unk32 mUnk_10;
+ /* 14 */ unk32 mUnk_14;
+ /* 18 */ unk32 mUnk_18;
+ /* 1c */ unk32 mUnk_1c;
+ /* 20 */ unk32 mUnk_20;
+ /* 24 */ unk8 mUnk_24;
+ /* 25 */ unk8 mUnk_25;
+ /* 28 */
+};
+
+class ActorShopItemTreasure : public ActorShopItem {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 178 */ ActorShopItemCollectable_Unk1 *mUnk_178;
+ /* 17c */ unk32 mUnk_17c;
+ /* 180 */
+
+ /* 00 */ virtual ~ActorShopItemTreasure() override;
+ /* 08 */ virtual bool Init() override;
+ /* bc */ virtual unk32 vfunc_bc() override;
+ /* c4 */ virtual void vfunc_c4() override;
+ /* d0 */ virtual unk32 vfunc_d0() override;
+ /* d4 */ virtual void vfunc_d4() override;
+ /* e0 */ virtual unk32 vfunc_e0() override;
+ /* e4 */
+
+ static ActorShopItemTreasure *Create();
+ ActorShopItemTreasure();
+
+ unk32 func_ov031_02180248();
+ unk32 func_ov031_02180260();
+ unk32 func_ov031_02180278();
+};
+
+class ActorShopItemShipPart : public ActorShopItem {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 178 */ unk32 mUnk_178;
+ /* 17c */ ActorShopItemCollectable_Unk1 *mUnk_17c;
+ /* 180 */ unk32 mUnk_180;
+ /* 184 */
+
+ /* 00 */ virtual ~ActorShopItemShipPart() override;
+ /* 08 */ virtual bool Init() override;
+ /* 14 */ virtual void vfunc_14(u32 param1) override;
+ /* 20 */ virtual void vfunc_20(bool param1) override;
+ /* bc */ virtual unk32 vfunc_bc() override;
+ /* c4 */ virtual void vfunc_c4() override;
+ /* d0 */ virtual unk32 vfunc_d0() override;
+ /* d4 */ virtual void vfunc_d4() override;
+ /* e0 */ virtual unk32 vfunc_e0() override;
+ /* e4 */
+
+ static ActorShopItemShipPart *Create();
+ ActorShopItemShipPart();
+
+ unk32 func_ov031_02180248();
+ unk32 func_ov031_02180260();
+ unk32 func_ov031_02180278();
+};
+
+class ActorShopItemGem : public ActorShopItem {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 178 */
+
+ /* 00 */ virtual ~ActorShopItemGem() override;
+ /* 08 */ virtual bool Init() override;
+ /* bc */ virtual unk32 vfunc_bc() override;
+ /* c4 */ virtual void vfunc_c4() override;
+ /* d0 */ virtual unk32 vfunc_d0() override;
+ /* e4 */
+
+ static ActorShopItemGem *Create();
+};
+
+class ActorShopItemShield : public ActorShopItem {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 178 */
+
+ /* 00 */ virtual ~ActorShopItemShield() override;
+ /* 08 */ virtual bool Init() override;
+ /* bc */ virtual unk32 vfunc_bc() override;
+ /* c4 */ virtual void vfunc_c4() override;
+ /* d0 */ virtual unk32 vfunc_d0() override;
+ /* e4 */
+
+ static ActorShopItemShield *Create();
+};
+
+class ActorShopItemPotion : public ActorShopItem {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 178 */
+
+ /* 00 */ virtual ~ActorShopItemPotion() override;
+ /* 08 */ virtual bool Init() override;
+ /* bc */ virtual unk32 vfunc_bc() override;
+ /* c4 */ virtual void vfunc_c4() override;
+ /* d0 */ virtual unk32 vfunc_d0() override;
+ /* e0 */ virtual unk32 vfunc_e0() override;
+ /* e4 */
+
+ static ActorShopItemPotion *Create();
+};
+
+class ActorShopItemUnk : public ActorShopItemBase {
+public:
+ /* 000 (base) */
+ /* 160 */ unk32 mUnk_160;
+ /* 164 */ unk8 mUnk_164;
+ /* 168 */
+
+ /* 00 */ virtual ~ActorShopItemUnk() override;
+ /* 08 */ virtual bool Init() override;
+ /* 14 */ virtual void vfunc_14(u32 param1) override;
+ /* 20 */ virtual void vfunc_20(bool param1) override;
+ /* bc */
+
+ ActorShopItemUnk();
+};
+
+class ActorShopItemBK : public ActorShopItemUnk {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 168 */
+
+ /* 00 */ virtual ~ActorShopItemBK() override;
+ /* 1c */ virtual void vfunc_1c(u16 *param1) override;
+ /* b4 */ virtual bool vfunc_b4() override;
+ /* b8 */ virtual bool vfunc_b8() override;
+ /* bc */
+
+ static ActorShopItemBK *Create();
+};
+
+class ActorShopItemCC : public ActorShopItemUnk {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 168 */
+
+ /* 00 */ virtual ~ActorShopItemCC() override;
+ /* 1c */ virtual void vfunc_1c(u16 *param1) override;
+ /* b4 */ virtual bool vfunc_b4() override;
+ /* b8 */ virtual bool vfunc_b8() override;
+ /* bc */
+
+ static ActorShopItemCC *Create();
+};
+
+class ActorShopItemBY : public ActorShopItemUnk {
+public:
+ static ActorType gType;
+
+ /* 000 (base) */
+ /* 168 */
+
+ /* 00 */ virtual ~ActorShopItemBY() override;
+ /* 1c */ virtual void vfunc_1c(u16 *param1) override;
+ /* b4 */ virtual bool vfunc_b4() override;
+ /* b8 */ virtual bool vfunc_b8() override;
+ /* bc */
+
+ static ActorShopItemBY *Create();
+ ActorShopItemBY();
+};
diff --git a/include/DTCM/UnkStruct_027e0e58.hpp b/include/DTCM/UnkStruct_027e0e58.hpp
index 031c920c..3bc27500 100644
--- a/include/DTCM/UnkStruct_027e0e58.hpp
+++ b/include/DTCM/UnkStruct_027e0e58.hpp
@@ -3,6 +3,8 @@
#include "global.h"
#include "types.h"
+#include <nds/math.h>
+
struct UnkStruct_027e0e58 {
/* 00 */ unk8 mUnk_00[0x22];
/* 22 */ unk16 mUnk_22;
diff --git a/include/DTCM/UnkStruct_027e105c.hpp b/include/DTCM/UnkStruct_027e105c.hpp
index 41c4f031..3855cd48 100644
--- a/include/DTCM/UnkStruct_027e105c.hpp
+++ b/include/DTCM/UnkStruct_027e105c.hpp
@@ -1,7 +1,10 @@
#pragma once
+#include "global.h"
#include "types.h"
+#include "Item/Item.hpp"
+
struct UnkStruct_027e105c {
/* 0 */ const char **unk_0;
/* 4 */
diff --git a/include/Message/MessageManager.hpp b/include/Message/MessageManager.hpp
index b7588106..9cae73d7 100644
--- a/include/Message/MessageManager.hpp
+++ b/include/Message/MessageManager.hpp
@@ -50,7 +50,7 @@ public:
bool func_02036770(u32 param_2);
unk32 func_02036798(void);
bool func_020367dc(int param_2);
- bool MessageManager::func_020367ec(void);
+ bool func_020367ec(void);
bool func_02036808(void);
bool func_02036824(void);
bool func_02036850(void);
diff --git a/include/Unknown/UnkStruct_027e0dbc.hpp b/include/Unknown/UnkStruct_027e0dbc.hpp
index 21691344..0c816fd7 100644
--- a/include/Unknown/UnkStruct_027e0dbc.hpp
+++ b/include/Unknown/UnkStruct_027e0dbc.hpp
@@ -3,6 +3,8 @@
#include "global.h"
#include "types.h"
+#include "Game/GameMode.hpp"
+
class UnkStruct_027e0dbc {
public:
/* 00 */ unk32 mUnk_00;
diff --git a/include/Unknown/UnkStruct_ov000_020e9c88.hpp b/include/Unknown/UnkStruct_ov000_020e9c88.hpp
index ff60bd78..357f0c3b 100644
--- a/include/Unknown/UnkStruct_ov000_020e9c88.hpp
+++ b/include/Unknown/UnkStruct_ov000_020e9c88.hpp
@@ -3,6 +3,8 @@
#include "global.h"
#include "types.h"
+#include <nds/math.h>
+
struct UnkStruct_ov000_020e9c88 {
void func_ov000_0207b89c(s32 param2, Vec3p *param3, void (*param4)(void *), void *param5);
};
diff --git a/include/lib/touch.h b/include/lib/touch.h
index e5848f5f..bf911845 100644
--- a/include/lib/touch.h
+++ b/include/lib/touch.h
@@ -3,20 +3,24 @@
#include "global.h"
#include "types.h"
-struct TouchStateFlags {
+typedef struct TouchStateFlags {
u16 touchX;
u16 touchY;
u16 touch;
u16 flags;
-};
+} TouchStateFlags;
-struct TouchState {
+typedef struct TouchState {
bool touch;
s32 touchX;
s32 touchY;
-};
+} TouchState;
+#ifdef __cplusplus
extern "C" {
+#endif
void WaitForTouchUpdate(u16 param1);
bool GetTouchStateFlags(TouchStateFlags *pState);
+#ifdef __cplusplus
}
+#endif