From 51dedbad073080486f86e8e25bb283aea3f9e8b5 Mon Sep 17 00:00:00 2001 From: Aetias Date: Mon, 1 Jan 2024 14:54:07 +0100 Subject: [PATCH] Update types in equip item headers --- include/Inventory.hpp | 44 +---------------------------- include/Item.hpp | 47 +++++++++++++++++++++++++++++++ include/Player/EquipBomb.hpp | 16 +++++------ include/Player/EquipBombchu.hpp | 12 ++++---- include/Player/EquipBoomerang.hpp | 6 ++-- include/Player/EquipBow.hpp | 8 +++--- include/Player/EquipHammer.hpp | 26 ++++++++--------- include/Player/EquipItem.hpp | 21 +++++++------- include/Player/EquipRope.hpp | 30 ++++++++++---------- include/Player/EquipScoop.hpp | 23 +++++++++++++++ include/Player/EquipShovel.hpp | 23 --------------- 11 files changed, 131 insertions(+), 125 deletions(-) create mode 100644 include/Item.hpp create mode 100644 include/Player/EquipScoop.hpp delete mode 100644 include/Player/EquipShovel.hpp diff --git a/include/Inventory.hpp b/include/Inventory.hpp index ada64b78..f1391fa7 100644 --- a/include/Inventory.hpp +++ b/include/Inventory.hpp @@ -2,6 +2,7 @@ #include "types.h" #include "SysNew.hpp" +#include "Item.hpp" #include "Player/EquipItem.hpp" #include "Actors/Navi/Navi.hpp" @@ -78,49 +79,6 @@ enum Potion_ { Potion_COUNT, }; -typedef u32 ItemFlag; -enum ItemFlag_ { - ItemFlag_None = -1, - ItemFlag_OshusSword = 0, - ItemFlag_WoodenShield = 1, - ItemFlag_Boomerang = 2, - ItemFlag_Shovel = 3, - ItemFlag_BombBag = 4, - ItemFlag_Bow = 5, - ItemFlag_GrapplingHook = 6, - ItemFlag_BombchuBag = 7, - ItemFlag_Hammer = 8, - ItemFlag_PotionA = 9, - ItemFlag_PotionB = 10, - ItemFlag_EQUIP_START = ItemFlag_OshusSword, - ItemFlag_EQUIP_END = ItemFlag_PotionB + 1, - ItemFlag_EQUIP_COUNT = ItemFlag_EQUIP_END - ItemFlag_EQUIP_START, - - ItemFlag_SpiritOfCourage = 20, - ItemFlag_SpiritOfPower = 21, - ItemFlag_SpiritOfWisdom = 22, - ItemFlag_CourageLv1 = 23, - ItemFlag_PowerLv1 = 24, - ItemFlag_WisdomLv1 = 25, - ItemFlag_CourageLv2 = 26, - ItemFlag_PowerLv2 = 27, - ItemFlag_WisdomLv2 = 28, - - ItemFlag_Hourglass = 32, - ItemFlag_SeaChartSW = 33, - ItemFlag_SeaChartNW = 34, - ItemFlag_SeaChartSE = 35, - ItemFlag_SeaChartNE = 36, - ItemFlag_PhantomSword = 37, - ItemFlag_SunKey = 38, - - ItemFlag_KingsKey = 42, - ItemFlag_GhostKey = 43, - - ItemFlag_SwordsmansScroll = 45, - - ItemFlag_COUNT = 128, -}; struct ItemFlags { /* 00 */ u32 flags[CEIL_DIV(ItemFlag_COUNT, 32)]; diff --git a/include/Item.hpp b/include/Item.hpp new file mode 100644 index 00000000..1541038d --- /dev/null +++ b/include/Item.hpp @@ -0,0 +1,47 @@ +#pragma once + +#include "types.h" + +typedef u32 ItemFlag; +enum ItemFlag_ { + ItemFlag_None = -1, + ItemFlag_OshusSword = 0, + ItemFlag_WoodenShield = 1, + ItemFlag_Boomerang = 2, + ItemFlag_Shovel = 3, + ItemFlag_BombBag = 4, + ItemFlag_Bow = 5, + ItemFlag_GrapplingHook = 6, + ItemFlag_BombchuBag = 7, + ItemFlag_Hammer = 8, + ItemFlag_PotionA = 9, + ItemFlag_PotionB = 10, + ItemFlag_EQUIP_START = ItemFlag_OshusSword, + ItemFlag_EQUIP_END = ItemFlag_PotionB + 1, + ItemFlag_EQUIP_COUNT = ItemFlag_EQUIP_END - ItemFlag_EQUIP_START, + + ItemFlag_SpiritOfCourage = 20, + ItemFlag_SpiritOfPower = 21, + ItemFlag_SpiritOfWisdom = 22, + ItemFlag_CourageLv1 = 23, + ItemFlag_PowerLv1 = 24, + ItemFlag_WisdomLv1 = 25, + ItemFlag_CourageLv2 = 26, + ItemFlag_PowerLv2 = 27, + ItemFlag_WisdomLv2 = 28, + + ItemFlag_Hourglass = 32, + ItemFlag_SeaChartSW = 33, + ItemFlag_SeaChartNW = 34, + ItemFlag_SeaChartSE = 35, + ItemFlag_SeaChartNE = 36, + ItemFlag_PhantomSword = 37, + ItemFlag_SunKey = 38, + + ItemFlag_KingsKey = 42, + ItemFlag_GhostKey = 43, + + ItemFlag_SwordsmansScroll = 45, + + ItemFlag_COUNT = 128, +}; diff --git a/include/Player/EquipBomb.hpp b/include/Player/EquipBomb.hpp index 0e9e54db..b0c24798 100644 --- a/include/Player/EquipBomb.hpp +++ b/include/Player/EquipBomb.hpp @@ -6,25 +6,25 @@ class EquipBomb : public EquipItem { private: /* 00 (base) */ - /* 09 */ u8 mUnk_09[3]; - /* 0c */ u32 mUnk_0c; - /* 10 */ u8 mUnk_10[0x14]; - /* 24 */ u32 mUnk_24; + /* 09 */ unk8 mUnk_09[3]; + /* 0c */ unk32 mUnk_0c; + /* 10 */ unk8 mUnk_10[0x14]; + /* 24 */ unk32 mUnk_24; /* 28 */ public: EquipBomb(); - /* 00 */ virtual void vfunc_00(u32 param1, u32 param2, u32 param3) override; // func_ov55_02198d00 + /* 00 */ virtual void vfunc_00(unk32 param1, unk32 param2, unk32 param3) override; // func_ov55_02198d00 /* 04 */ virtual EquipItem* vfunc_04() override; // func_ov14_213d214 /* 08 */ virtual ~EquipBomb() override; - /* 0c */ virtual u32 GetId() const override; + /* 0c */ virtual ItemFlag GetId() const override; - /* 14 */ virtual bool IsUsable(u32 param1, u32 param2) const override; + /* 14 */ virtual bool IsUsable(unk32 param1, unk32 param2) const override; /* 18 */ virtual void vfunc_18() override; // func_ov55_02198d8c /* 30 */ virtual void vfunc_30() override; // func_ov55_02198da4 - /* 38 */ virtual void vfunc_38(u32 param1, u32 param2, u32 param3) override; // func_ov55_2198df8 + /* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov55_2198df8 /* 50 */ virtual void vfunc_50(); // func_ov14_0213d228 /* 54 */ }; diff --git a/include/Player/EquipBombchu.hpp b/include/Player/EquipBombchu.hpp index dd414d02..4eb65af1 100644 --- a/include/Player/EquipBombchu.hpp +++ b/include/Player/EquipBombchu.hpp @@ -26,18 +26,18 @@ private: public: EquipBombchu(); - /* 00 */ virtual void vfunc_00(u32 param1, u32 param2, u32 param3) override; // func_ov58_02198fc0 + /* 00 */ virtual void vfunc_00(unk32 param1, unk32 param2, unk32 param3) override; // func_ov58_02198fc0 /* 04 */ virtual EquipItem* vfunc_04() override; // func_ov14_0213eb5c /* 08 */ virtual ~EquipBombchu() override; - /* 0c */ virtual u32 GetId() const override; + /* 0c */ virtual ItemFlag GetId() const override; - bool CheckUsable(u32 param1) const; - /* 14 */ virtual bool IsUsable(u32 param1, u32 param2) const override; + bool CheckUsable(unk32 param1) const; + /* 14 */ virtual bool IsUsable(unk32 param1, unk32 param2) const override; /* 18 */ virtual void vfunc_18() override; // func_ov58_0219903c /* 1c */ virtual void vfunc_1c() override; // func_ov58_02199060 /* 30 */ virtual void vfunc_30() override; // func_ov58_0219906c - /* 34 */ virtual void vfunc_34(u16 *param1) override; // func_ov58_0213ecb4 - /* 38 */ virtual void vfunc_38(u32 param1, u32 param2, u32 param3) override; // func_ov58_02199170 + /* 34 */ virtual void vfunc_34(unk16 *param1) override; // func_ov58_0213ecb4 + /* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov58_02199170 /* 50 */ }; diff --git a/include/Player/EquipBoomerang.hpp b/include/Player/EquipBoomerang.hpp index 6e2d8eb1..4fc005e4 100644 --- a/include/Player/EquipBoomerang.hpp +++ b/include/Player/EquipBoomerang.hpp @@ -19,14 +19,14 @@ private: public: /* 04 */ virtual EquipItem* vfunc_04() override; // func_ov14_213d010 /* 08 */ virtual ~EquipBoomerang() override; - /* 0c */ virtual u32 GetId() const override; + /* 0c */ virtual ItemFlag GetId() const override; /* 10 */ virtual void vfunc_10() override; // func_ov14_0213d078 - /* 14 */ virtual bool IsUsable(u32 param1, u32 param2) const override; + /* 14 */ virtual bool IsUsable(unk32 param1, unk32 param2) const override; /* 18 */ virtual void vfunc_18() override; // func_ov53_02199064 /* 1c */ virtual void vfunc_1c() override; // func_ov53_021990d0 /* 30 */ virtual void vfunc_30() override; // func_ov53_0219913c - /* 38 */ virtual void vfunc_38(u32 param1, u32 param2, u32 param3) override; // func_ov53_02199318 + /* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov53_02199318 /* 50 */ }; diff --git a/include/Player/EquipBow.hpp b/include/Player/EquipBow.hpp index 97e68a0c..9800eedc 100644 --- a/include/Player/EquipBow.hpp +++ b/include/Player/EquipBow.hpp @@ -15,15 +15,15 @@ private: public: EquipBow(); - /* 00 */ virtual void vfunc_00(u32 param1, u32 param2, u32 param3) override; // func_ov56_02198d00 + /* 00 */ virtual void vfunc_00(unk32 param1, unk32 param2, unk32 param3) override; // func_ov56_02198d00 /* 04 */ virtual EquipItem* vfunc_04() override; // func_ov14_0213ead4 /* 08 */ virtual ~EquipBow() override; - /* 0c */ virtual u32 GetId() const override; + /* 0c */ virtual ItemFlag GetId() const override; - /* 14 */ virtual bool IsUsable(u32 param1, u32 param2) const override; + /* 14 */ virtual bool IsUsable(unk32 param1, unk32 param2) const override; /* 18 */ virtual void vfunc_18() override; // func_ov56_02198d84 /* 30 */ virtual void vfunc_30() override; // func_ov56_02198de4 - /* 38 */ virtual void vfunc_38(u32 param1, u32 param2, u32 param3) override; // func_ov56_02198df8 + /* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov56_02198df8 /* 50 */ }; diff --git a/include/Player/EquipHammer.hpp b/include/Player/EquipHammer.hpp index 19ae4c06..10911bf6 100644 --- a/include/Player/EquipHammer.hpp +++ b/include/Player/EquipHammer.hpp @@ -6,15 +6,15 @@ class EquipHammer : public EquipItem { private: /* 00 (base) */ - /* 09 */ u8 mUnk_09[3]; - /* 0c */ u8 mUnk_0c[0xc]; - /* 18 */ u32 mUnk_18; - /* 1c */ u8 mUnk_1c; - /* 1d */ u8 mUnk_1d; - /* 1e */ u8 mUnk_1e[2]; - /* 20 */ u32 mUnk_20; + /* 09 */ unk8 mUnk_09[3]; + /* 0c */ unk8 mUnk_0c[0xc]; + /* 18 */ unk32 mUnk_18; + /* 1c */ unk8 mUnk_1c; + /* 1d */ unk8 mUnk_1d; + /* 1e */ unk8 mUnk_1e[2]; + /* 20 */ unk32 mUnk_20; /* 24 */ void *mUnk_24; - /* 28 */ u32 mUnk_28; + /* 28 */ unk32 mUnk_28; /* 2c */ public: @@ -22,17 +22,17 @@ public: /* 04 */ virtual EquipItem* vfunc_04() override; // func_ov14_0213ede4 /* 08 */ virtual ~EquipHammer() override; - /* 0c */ virtual u32 GetId() const override; + /* 0c */ virtual ItemFlag GetId() const override; /* 10 */ virtual void vfunc_10() override; // func_ov14_0213ee04 - /* 14 */ virtual bool IsUsable(u32 param1, u32 param2) const override; + /* 14 */ virtual bool IsUsable(unk32 param1, unk32 param2) const override; /* 18 */ virtual void vfunc_18() override; // func_ov59_02198e3c /* 1c */ virtual void vfunc_1c() override; // func_ov59_02198e58 - /* 2c */ virtual u32 vfunc_2c() override; // func_ov59_02198fcc + /* 2c */ virtual unk32 vfunc_2c() override; // func_ov59_02198fcc /* 30 */ virtual void vfunc_30() override; // func_ov59_02198e6c - /* 38 */ virtual void vfunc_38(u32 param1, u32 param2, u32 param3) override; // func_0v59_02198fc8 + /* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_0v59_02198fc8 /* 3c */ virtual void vfunc_3c(void *param1) const override; // func_ov14_0213ee10 - /* 4c */ virtual u32 vfunc_4c() const override; // func_ov14_0213eea8 + /* 4c */ virtual unk32 vfunc_4c() const override; // func_ov14_0213eea8 /* 50 */ }; diff --git a/include/Player/EquipItem.hpp b/include/Player/EquipItem.hpp index 7ee3d729..e8da3cf9 100644 --- a/include/Player/EquipItem.hpp +++ b/include/Player/EquipItem.hpp @@ -1,6 +1,7 @@ #pragma once #include "types.h" +#include "Item.hpp" class EquipItem { private: @@ -12,28 +13,28 @@ private: public: EquipItem(); - /* 00 */ virtual void vfunc_00(u32 param1, u32 param2, u32 param3); // func_ov00_020be8dc + /* 00 */ virtual void vfunc_00(unk32 param1, unk32 param2, unk32 param3); // func_ov00_020be8dc /* 04 */ virtual EquipItem* vfunc_04(); // func_ov04_0210ba74 /* 08 */ virtual ~EquipItem(); - /* 0c */ virtual u32 GetId() const = 0; + /* 0c */ virtual ItemFlag GetId() const = 0; /* 10 */ virtual void vfunc_10(); // func_ov04_0210ba88 u16 GetAmmo(); - /* 14 */ virtual bool IsUsable(u32 param1, u32 param2) const; + /* 14 */ virtual bool IsUsable(unk32 param1, unk32 param2) const; /* 18 */ virtual void vfunc_18() = 0; /* 1c */ virtual void vfunc_1c(); // func_ov00_020be8e0 /* 20 */ virtual void GiveAmmo(u32 amount); /* 24 */ virtual bool IsInUse() const; - /* 28 */ virtual bool UpdateInUse(u32 param1); + /* 28 */ virtual bool UpdateInUse(unk32 param1); /* 2c */ virtual u32 vfunc_2c(); // func_ov00_020be964 /* 30 */ virtual void vfunc_30() = 0; - /* 34 */ virtual void vfunc_34(u16 *param1); // func_ov00_020be96c - /* 38 */ virtual void vfunc_38(u32 param1, u32 param2, u32 param3) = 0; + /* 34 */ virtual void vfunc_34(unk16 *param1); // func_ov00_020be96c + /* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) = 0; /* 3c */ virtual void vfunc_3c(void *param1) const; // func_ov00_020beb90 - /* 40 */ virtual u32 vfunc_40() const; // func_ov00_020be970 - /* 44 */ virtual u32 vfunc_44(u32 param1) const; // func_ov00_020be978 - /* 48 */ virtual u32 vfunc_48(u32 param1) const; // func_ov00_020be980 - /* 4c */ virtual u32 vfunc_4c() const; // func_ov00_020be988 + /* 40 */ virtual unk32 vfunc_40() const; // func_ov00_020be970 + /* 44 */ virtual unk32 vfunc_44(unk32 param1) const; // func_ov00_020be978 + /* 48 */ virtual unk32 vfunc_48(unk32 param1) const; // func_ov00_020be980 + /* 4c */ virtual unk32 vfunc_4c() const; // func_ov00_020be988 /* 50 */ }; diff --git a/include/Player/EquipRope.hpp b/include/Player/EquipRope.hpp index 9d236a62..60c15d75 100644 --- a/include/Player/EquipRope.hpp +++ b/include/Player/EquipRope.hpp @@ -6,34 +6,34 @@ class EquipRope : public EquipItem { private: /* 00 (base) */ - /* 09 */ u8 mUnk_09; - /* 0a */ u16 mUnk_0a; - /* 0c */ u8 mUnk_0c[4]; - /* 10 */ u32 mUnk_10; - /* 14 */ u32 mUnk_14; - /* 18 */ u8 mUnk_18[0x54]; - /* 6c */ u16 mUnk_6c; - /* 6e */ u8 mUnk_6e[2]; - /* 70 */ u16 mUnk_70; - /* 72 */ u8 mUnk_72[0x12]; + /* 09 */ unk8 mUnk_09; + /* 0a */ unk16 mUnk_0a; + /* 0c */ unk8 mUnk_0c[4]; + /* 10 */ unk32 mUnk_10; + /* 14 */ unk32 mUnk_14; + /* 18 */ unk8 mUnk_18[0x54]; + /* 6c */ unk16 mUnk_6c; + /* 6e */ unk8 mUnk_6e[2]; + /* 70 */ unk16 mUnk_70; + /* 72 */ unk8 mUnk_72[0x12]; /* 84 */ void *mUnk_84; - /* 88 */ u8 mUnk_88[0x18]; - /* a0 */ u32 mUnk_a0; + /* 88 */ unk8 mUnk_88[0x18]; + /* a0 */ unk32 mUnk_a0; public: EquipRope(); /* 04 */ virtual EquipItem* vfunc_04() override; // func_ov14_0213d314 /* 08 */ virtual ~EquipRope() override; - /* 0c */ virtual u32 GetId() const override; + /* 0c */ virtual ItemFlag GetId() const override; /* 10 */ virtual void vfunc_10() override; // func_ov14_0213d3a0 u16 GetAmmo(); - /* 14 */ virtual bool IsUsable(u32 param1, u32 param2) const override; + /* 14 */ virtual bool IsUsable(unk32 param1, unk32 param2) const override; /* 18 */ virtual void vfunc_18() override; // func_ov57_021992f4 /* 1c */ virtual void vfunc_1c() override; // func_ov57_0219935c /* 30 */ virtual void vfunc_30() override; // func_ov57_02199744 - /* 38 */ virtual void vfunc_38(u32 param1, u32 param2, u32 param3) override; // func_ov57_021998f0 + /* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov57_021998f0 /* 50 */ }; diff --git a/include/Player/EquipScoop.hpp b/include/Player/EquipScoop.hpp new file mode 100644 index 00000000..4f7cf7ad --- /dev/null +++ b/include/Player/EquipScoop.hpp @@ -0,0 +1,23 @@ +#pragma once + +#include "types.h" +#include "Player/EquipItem.hpp" + +class EquipScoop : public EquipItem { +public: + /* 00 */ virtual void vfunc_00(unk32 param1, unk32 param2, unk32 param3) override; // func_ov54_02198d00 + /* 04 */ virtual EquipItem* vfunc_04() override; // func_ov14_0213cf9c + /* 08 */ virtual ~EquipScoop() override; + /* 0c */ virtual ItemFlag GetId() const override; + + /* 14 */ virtual bool IsUsable(unk32 param1, unk32 param2) const override; + /* 18 */ virtual void vfunc_18() override; // func_0v54_02198d2c + + /* 30 */ virtual void vfunc_30() override; // func_ov54_02198e04 + /* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov54_02198e4c + /* 40 */ virtual unk32 vfunc_40() const override; // func_ov54_02198d30 + /* 44 */ virtual unk32 vfunc_44(unk32 param1) const override; // func_ov54_02198d38 + /* 48 */ virtual unk32 vfunc_48(unk32 param1) const override; // func_ov54_02198d48 + /* 50 */ +}; + diff --git a/include/Player/EquipShovel.hpp b/include/Player/EquipShovel.hpp deleted file mode 100644 index 455da9a8..00000000 --- a/include/Player/EquipShovel.hpp +++ /dev/null @@ -1,23 +0,0 @@ -#pragma once - -#include "types.h" -#include "Player/EquipItem.hpp" - -class EquipShovel : public EquipItem { -public: - /* 00 */ virtual void vfunc_00(u32 param1, u32 param2, u32 param3) override; // func_ov54_02198d00 - /* 04 */ virtual EquipItem* vfunc_04() override; // func_ov14_0213cf9c - /* 08 */ virtual ~EquipShovel() override; - /* 0c */ virtual u32 GetId() const override; - - /* 14 */ virtual bool IsUsable(u32 param1, u32 param2) const override; - /* 18 */ virtual void vfunc_18() override; // func_0v54_02198d2c - - /* 30 */ virtual void vfunc_30() override; // func_ov54_02198e04 - /* 38 */ virtual void vfunc_38(u32 param1, u32 param2, u32 param3) override; // func_ov54_02198e4c - /* 40 */ virtual u32 vfunc_40() const override; // func_ov54_02198d30 - /* 44 */ virtual u32 vfunc_44(u32 param1) const override; // func_ov54_02198d38 - /* 48 */ virtual u32 vfunc_48(u32 param1) const override; // func_ov54_02198d48 - /* 50 */ -}; -