summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAetias <144526980+AetiasHax@users.noreply.github.com>2025-06-29 20:56:46 +0200
committerGitHub <noreply@github.com>2025-06-29 20:56:46 +0200
commit3fe49695b4936ea29526eb8b7d07250a69a06c38 (patch)
treeac3efc0f20e0c349357e7ddd49e3859f5f0ee27a /include
parent21aaec6b40f8cb756e5ef4fff5552b980ab58d4e (diff)
parentf1c2aa37a7a706808b4c992638d89ee211cc0efd (diff)
Merge pull request #97 from AetiasHax/decomp-ActorSpawner
Decomp `ActorSpawner`
Diffstat (limited to 'include')
-rw-r--r--include/Actor/Actor.hpp9
-rw-r--r--include/Actor/ActorRupee.hpp2
-rw-r--r--include/Actor/ActorSpawner.hpp19
-rw-r--r--include/Actor/Dungeon/ActorActionObject.hpp2
-rw-r--r--include/Actor/Dungeon/ActorEventIcon.hpp2
-rw-r--r--include/Actor/Dungeon/ActorSwitchObject.hpp2
-rw-r--r--include/Actor/Navi/ActorNavi.hpp2
-rw-r--r--include/Actor/Navi/ActorNaviBase.hpp2
-rw-r--r--include/Actor/Player/ActorArrow.hpp2
-rw-r--r--include/Actor/Player/ActorBlast.hpp2
-rw-r--r--include/Actor/Player/ActorBomb.hpp2
-rw-r--r--include/Actor/Player/ActorRefill.hpp18
-rw-r--r--include/Actor/Player/ActorRope.hpp2
-rw-r--r--include/Item/Item.hpp4
-rw-r--r--include/Save/AdventureFlags.hpp19
15 files changed, 60 insertions, 29 deletions
diff --git a/include/Actor/Actor.hpp b/include/Actor/Actor.hpp
index 2906b670..b58c39c8 100644
--- a/include/Actor/Actor.hpp
+++ b/include/Actor/Actor.hpp
@@ -35,8 +35,8 @@ struct Actor_UnkStruct_020 {
/* 08 */ u8 mUnk_08[2];
/* 0a */ u8 mUnk_0a[2];
/* 0c */ unk8 mUnk_0c;
- /* 0d */ unk8 mUnk_0d;
- /* 0e */ unk8 mUnk_0e;
+ /* 0d */ u8 mUnk_0d;
+ /* 0e */ u8 mUnk_0e;
/* 0f */ unk8 mUnk_0f;
/* 10 */ unk32 mUnk_10;
/* 14 */
@@ -110,8 +110,7 @@ public:
/* 012 */ unk16 mUnk_012;
/* 014 */ Vec3p mUnk_014;
/* 020 */ Actor_UnkStruct_020 mUnk_020;
- /* 034 */ unk32 mUnk_034;
- /* 038 */ unk32 mUnk_038;
+ /* 034 */ ActorRef mUnk_034;
/* 03c */ unk32 mUnk_03c;
/* 040 */ ActorRef mUnk_040;
/* 048 */ Vec3p mPos;
@@ -174,7 +173,7 @@ public:
/* 158 */
/* 00 */ virtual ~Actor();
- /* 08 */ virtual bool vfunc_08();
+ /* 08 */ virtual bool Init();
/* 0c */ virtual bool vfunc_0c();
/* 10 */ virtual void vfunc_10(u32 param1);
/* 14 */ virtual void vfunc_14(u32 param1);
diff --git a/include/Actor/ActorRupee.hpp b/include/Actor/ActorRupee.hpp
index a5fcbea3..983abaae 100644
--- a/include/Actor/ActorRupee.hpp
+++ b/include/Actor/ActorRupee.hpp
@@ -33,7 +33,7 @@ public:
/* 160 */
/* 00 */ virtual ~ActorRupee() override;
- /* 08 */ virtual bool vfunc_08() override;
+ /* 08 */ virtual bool Init() override;
/* 14 */ virtual void vfunc_14(u32 param1) override;
/* 18 */ virtual void vfunc_18(u32 param1) override;
/* 20 */ virtual void vfunc_20(bool param1) override;
diff --git a/include/Actor/ActorSpawner.hpp b/include/Actor/ActorSpawner.hpp
index 94047e10..e99bafb3 100644
--- a/include/Actor/ActorSpawner.hpp
+++ b/include/Actor/ActorSpawner.hpp
@@ -5,10 +5,23 @@
#include "global.h"
#include "types.h"
+#include "Actor/Actor.hpp"
#include "Actor/ActorRef.hpp"
#include "Actor/ActorType.hpp"
+#include "System/SysNew.hpp"
-class ActorSpawner {
+struct ActorSpawnOptions {
+ /* 00 */ Actor_UnkStruct_020 mUnk_00;
+ /* 14 */ s16 mAngle;
+ /* 16 */ unk8 mUnk_16[0x2];
+ /* 18 */ unk32 mUnk_18;
+ /* 1c */ ActorRef mUnk_1c;
+ /* 24 */ unk32 mUnk_24;
+ /* 28 */ unk32 mUnk_28;
+ /* 2c */
+};
+
+class ActorSpawner : public SysObject {
public:
/* 0 (empty) */
@@ -18,8 +31,8 @@ public:
~ActorSpawner();
void func_ov000_020c4014();
void func_ov000_020c4018();
- Actor *CreateActor(ActorTypeId type);
- s32 Spawn(ActorTypeId type, Vec3p *pos, void *param3, ActorRef *ref);
+ Actor *CreateActor(ActorTypeId typeId);
+ s32 Spawn(ActorTypeId type, Vec3p *pos, ActorSpawnOptions *param3, ActorRef *ref);
};
extern ActorSpawner *gActorSpawner;
diff --git a/include/Actor/Dungeon/ActorActionObject.hpp b/include/Actor/Dungeon/ActorActionObject.hpp
index 0bf35dfb..c4e2add3 100644
--- a/include/Actor/Dungeon/ActorActionObject.hpp
+++ b/include/Actor/Dungeon/ActorActionObject.hpp
@@ -10,7 +10,7 @@ public:
/* 158 */
/* 00 */ virtual ~ActorActionObject() override;
- /* 08 */ virtual bool vfunc_08() override;
+ /* 08 */ virtual bool Init() override;
/* 14 */ virtual void vfunc_14(u32 param1) override;
/* 18 */ virtual void vfunc_18(u32 param1) override;
/* b4 */
diff --git a/include/Actor/Dungeon/ActorEventIcon.hpp b/include/Actor/Dungeon/ActorEventIcon.hpp
index ccef162d..a7a86751 100644
--- a/include/Actor/Dungeon/ActorEventIcon.hpp
+++ b/include/Actor/Dungeon/ActorEventIcon.hpp
@@ -17,7 +17,7 @@ public:
/* 160 */ UnkStruct_02035064 mUnk_160;
/* 00 */ virtual ~ActorEventIcon() override;
- /* 08 */ virtual bool vfunc_08() override;
+ /* 08 */ virtual bool Init() override;
/* 14 */ virtual void vfunc_14(u32 param1) override;
/* 18 */ virtual void vfunc_18(u32 param1) override;
/* 1c */ virtual void vfunc_1c(u16 *param1) override;
diff --git a/include/Actor/Dungeon/ActorSwitchObject.hpp b/include/Actor/Dungeon/ActorSwitchObject.hpp
index 61cc3267..0658fcb2 100644
--- a/include/Actor/Dungeon/ActorSwitchObject.hpp
+++ b/include/Actor/Dungeon/ActorSwitchObject.hpp
@@ -21,7 +21,7 @@ public:
/* 198 */
/* 00 */ virtual ~ActorSwitchObject() override;
- /* 08 */ virtual bool vfunc_08() override;
+ /* 08 */ virtual bool Init() override;
/* 0c */ virtual bool vfunc_0c() override;
/* 14 */ virtual void vfunc_14(u32 param1) override;
/* 18 */ virtual void vfunc_18(u32 param1) override;
diff --git a/include/Actor/Navi/ActorNavi.hpp b/include/Actor/Navi/ActorNavi.hpp
index 86774de4..f8a86acc 100644
--- a/include/Actor/Navi/ActorNavi.hpp
+++ b/include/Actor/Navi/ActorNavi.hpp
@@ -40,7 +40,7 @@ public:
/* 3c8 */
/* 00 */ virtual ~ActorNavi() override;
- /* 08 */ virtual bool vfunc_08() override;
+ /* 08 */ virtual bool Init() override;
/* 20 */ virtual void vfunc_20(bool param1) override;
/* 8c */ virtual bool vfunc_8c() override;
/* b4 */ virtual FairyId GetFairyId() override;
diff --git a/include/Actor/Navi/ActorNaviBase.hpp b/include/Actor/Navi/ActorNaviBase.hpp
index 59db230b..c7dd7cea 100644
--- a/include/Actor/Navi/ActorNaviBase.hpp
+++ b/include/Actor/Navi/ActorNaviBase.hpp
@@ -46,7 +46,7 @@ public:
/* 294 */
/* 00 */ virtual ~ActorNaviBase() override;
- /* 08 */ virtual bool vfunc_08() override;
+ /* 08 */ virtual bool Init() override;
/* 10 */ virtual void vfunc_10(u32 param1) override;
/* 14 */ virtual void vfunc_14(u32 param1) override;
/* 18 */ virtual void vfunc_18(u32 param1) override;
diff --git a/include/Actor/Player/ActorArrow.hpp b/include/Actor/Player/ActorArrow.hpp
index a0ced1e3..021007f6 100644
--- a/include/Actor/Player/ActorArrow.hpp
+++ b/include/Actor/Player/ActorArrow.hpp
@@ -36,7 +36,7 @@ public:
/* 1b8 */
/* 00 */ virtual ~ActorArrow() override;
- /* 08 */ virtual bool vfunc_08() override;
+ /* 08 */ virtual bool Init() override;
/* 10 */ virtual void vfunc_10(u32 param1) override;
/* 14 */ virtual void vfunc_14(u32 param1) override;
/* 18 */ virtual void vfunc_18(u32 param1) override;
diff --git a/include/Actor/Player/ActorBlast.hpp b/include/Actor/Player/ActorBlast.hpp
index a1e8b5fe..431cc1d7 100644
--- a/include/Actor/Player/ActorBlast.hpp
+++ b/include/Actor/Player/ActorBlast.hpp
@@ -19,7 +19,7 @@ public:
/* 164 */
/* 00 */ virtual ~ActorBlast() override;
- /* 08 */ virtual bool vfunc_08() override;
+ /* 08 */ virtual bool Init() override;
/* 14 */ virtual void vfunc_14(u32 param1) override;
/* 18 */ virtual void vfunc_18(u32 param1) override;
/* b4 */
diff --git a/include/Actor/Player/ActorBomb.hpp b/include/Actor/Player/ActorBomb.hpp
index 17538bf8..3817a73e 100644
--- a/include/Actor/Player/ActorBomb.hpp
+++ b/include/Actor/Player/ActorBomb.hpp
@@ -54,7 +54,7 @@ public:
/* 26c */
/* 00 */ virtual ~ActorBomb() override;
- /* 08 */ virtual bool vfunc_08() override;
+ /* 08 */ virtual bool Init() override;
/* 14 */ virtual void vfunc_14(u32 param1) override;
/* 18 */ virtual void vfunc_18(u32 param1) override;
/* 20 */ virtual void vfunc_20(bool param1) override;
diff --git a/include/Actor/Player/ActorRefill.hpp b/include/Actor/Player/ActorRefill.hpp
index bdd334ff..eeab2793 100644
--- a/include/Actor/Player/ActorRefill.hpp
+++ b/include/Actor/Player/ActorRefill.hpp
@@ -20,10 +20,10 @@ public:
ActorRefill(unk32 param1);
/* 00 */ virtual ~ActorRefill() override;
- /* 08 */ virtual bool vfunc_08() override;
+ /* 08 */ virtual bool Init() override;
/* 14 */ virtual void vfunc_14(u32 param1) override;
/* 20 */ virtual void vfunc_20(bool param1) override;
- /* b4 */ virtual ItemFlag vfunc_b4() = 0;
+ /* b4 */ virtual ItemFlag GetAmmoItem() = 0;
/* b8 */
bool func_ov014_02135364(unk32 param1);
@@ -42,7 +42,7 @@ public:
static ActorRefillBombs *Create();
/* 00 */ virtual ~ActorRefillBombs() override;
- /* b4 */ virtual ItemFlag vfunc_b4() override;
+ /* b4 */ virtual ItemFlag GetAmmoItem() override;
/* b8 */
};
@@ -58,7 +58,7 @@ public:
static ActorRefillBombchus *Create();
/* 00 */ virtual ~ActorRefillBombchus() override;
- /* b4 */ virtual ItemFlag vfunc_b4() override;
+ /* b4 */ virtual ItemFlag GetAmmoItem() override;
/* b8 */
};
@@ -74,7 +74,7 @@ public:
static ActorRefillArrows *Create();
/* 00 */ virtual ~ActorRefillArrows() override;
- /* b4 */ virtual ItemFlag vfunc_b4() override;
+ /* b4 */ virtual ItemFlag GetAmmoItem() override;
/* b8 */
};
@@ -90,8 +90,8 @@ public:
static ActorRefillTime *Create();
/* 00 */ virtual ~ActorRefillTime() override;
- /* 08 */ virtual bool vfunc_08() override;
- /* b4 */ virtual ItemFlag vfunc_b4() override;
+ /* 08 */ virtual bool Init() override;
+ /* b4 */ virtual ItemFlag GetAmmoItem() override;
/* b8 */
};
@@ -107,7 +107,7 @@ public:
static ActorLSTM *Create();
/* 00 */ virtual ~ActorLSTM() override;
- /* 08 */ virtual bool vfunc_08() override;
- /* b4 */ virtual ItemFlag vfunc_b4() override;
+ /* 08 */ virtual bool Init() override;
+ /* b4 */ virtual ItemFlag GetAmmoItem() override;
/* b8 */
};
diff --git a/include/Actor/Player/ActorRope.hpp b/include/Actor/Player/ActorRope.hpp
index 1d70a5fd..245a7851 100644
--- a/include/Actor/Player/ActorRope.hpp
+++ b/include/Actor/Player/ActorRope.hpp
@@ -46,7 +46,7 @@ public:
/* 1a0 */
/* 00 */ virtual ~ActorRope() override;
- /* 08 */ virtual bool vfunc_08() override;
+ /* 08 */ virtual bool Init() override;
/* 10 */ virtual void vfunc_10(u32 param1) override;
/* 14 */ virtual void vfunc_14(u32 param1) override;
/* 18 */ virtual void vfunc_18(u32 param1) override;
diff --git a/include/Item/Item.hpp b/include/Item/Item.hpp
index 4d70c9f1..cea5c551 100644
--- a/include/Item/Item.hpp
+++ b/include/Item/Item.hpp
@@ -50,7 +50,7 @@ enum ItemFlag_ {
/* 0x2d */ ItemFlag_SwordsmansScroll = 45,
/* 0x2e */ ItemFlag_CycloneSlate = 46,
- /* 0x2f */ ItemFlag_Unk_47 = 47,
+ /* 0x2f */ ItemFlag_BigCatchLure = 47,
/* 0x60 */ ItemFlag_TreasureChart1 = 96,
/* 0x61 */ ItemFlag_TreasureChart2 = 97,
@@ -224,7 +224,7 @@ enum ItemId_ {
/* 0x7d */ ItemId_Unk_125 = 125,
/* 0x7e */ ItemId_Unk_126 = 126,
/* 0x7f */ ItemId_CycloneSlate = 127,
- /* 0x80 */ ItemId_Unk_128 = 128,
+ /* 0x80 */ ItemId_BigCatchLure = 128,
/* 0x81 */ ItemId_Rupoor10 = 129,
/* 0x82 */ ItemId_Rupoor50 = 130,
/* 0x83 */ ItemId_Unk_131 = 131,
diff --git a/include/Save/AdventureFlags.hpp b/include/Save/AdventureFlags.hpp
index 0484fba8..39d2e409 100644
--- a/include/Save/AdventureFlags.hpp
+++ b/include/Save/AdventureFlags.hpp
@@ -23,6 +23,10 @@ enum AdventureFlag_ {
/* 0x30 */ AdventureFlag_Cannon = 48,
+ /* 0x33 */ AdventureFlag_RegalNecklace = 51,
+
+ /* 0x7a */ AdventureFlag_CourageCrest = 122,
+
/* 0x7d */ AdventureFlag_Azurine = 125,
/* 0x7e */ AdventureFlag_Crimsonine = 126,
/* 0x7f */ AdventureFlag_Aquanine = 127,
@@ -30,11 +34,26 @@ enum AdventureFlag_ {
/* 0x8c */ AdventureFlag_SalvageArm = 140,
+ /* 0xa2 */ AdvantureFlag_HerosNewClothes = 162,
+ /* 0xa3 */ AdvantureFlag_Kaleidoscope = 163,
+ /* 0xa4 */ AdventureFlag_GuardNotebook = 164,
+
+ /* 0xa7 */ AdventureFlag_WoodHeart = 167,
+
+ /* 0xb6 */ AdventureFlag_SpawnFinalPhantoms = 182,
+
/* 0x126 */ AdventureFlag_ReceivedGoldenChimney = 294,
/* 0x127 */ AdventureFlag_ReceivedGoldenHandrail = 295,
/* 0x128 */ AdventureFlag_ReceivedGoldenCannon = 296,
/* 0x129 */ AdventureFlag_ReceivedGoldenHull = 297,
+ /* 0x137 */ AdventureFlag_FrogGlyph_MercayIsland = 311,
+ /* 0x138 */ AdventureFlag_FrogGlyph_MolidaIsland = 312,
+ /* 0x139 */ AdventureFlag_FrogGlyph_BannanIsland = 313,
+ /* 0x13a */ AdventureFlag_FrogGlyph_DeeEssIsland = 314,
+ /* 0x13b */ AdventureFlag_FrogGlyph_IsleOfFrost = 315,
+ /* 0x13c */ AdventureFlag_FrogGlyph_NorthEast = 316,
+
/* 0x187 */ AdventureFlag_COUNT = 391,
};