Add sword, shield and potion equip item classes

This commit is contained in:
Aetias
2024-01-01 15:43:06 +01:00
parent 51dedbad07
commit baefb70a8e
11 changed files with 162 additions and 12 deletions
+1 -2
View File
@@ -9,8 +9,7 @@ private:
/* 09 */ unk8 mUnk_09[3];
/* 0c */ unk32 mUnk_0c;
/* 10 */ unk8 mUnk_10[0x14];
/* 24 */ unk32 mUnk_24;
/* 28 */
/* 24 */
public:
EquipBomb();
+2 -1
View File
@@ -21,7 +21,8 @@ private:
/* 46 */ u8 mUnk_46;
/* 47 */ char mUnk_47;
/* 48 */ bool mUnk_48;
/* 49 */
/* 49 */ unk8 mUnk_49[3];
/* 4c */
public:
EquipBombchu();
+2 -1
View File
@@ -14,7 +14,8 @@ private:
/* 24 */ u32 mUnk_24;
/* 28 */ u32 mUnk_28;
/* 2c */ u16 mUnk_2c;
/* 2e */
/* 2e */ unk8 mUnk_2e[2];
/* 30 */
public:
/* 04 */ virtual EquipItem* vfunc_04() override; // func_ov14_213d010
+7 -6
View File
@@ -5,12 +5,13 @@
class EquipBow : public EquipItem {
private:
/* 0 (base) */
/* 9 */ u8 mUnk_9;
/* a */ u8 mUnk_a;
/* b */ u8 mUnk_b;
/* c */ u8 mUnk_c;
/* d */
/* 00 (base) */
/* 09 */ unk8 mUnk_09;
/* 0a */ unk8 mUnk_0a;
/* 0b */ unk8 mUnk_0b;
/* 0c */ unk8 mUnk_0c;
/* 0d */ unk8 mUnk_0d[3];
/* 10 */
public:
EquipBow();
+1 -1
View File
@@ -32,7 +32,7 @@ public:
/* 2c */ virtual unk32 vfunc_2c() override; // func_ov59_02198fcc
/* 30 */ virtual void vfunc_30() override; // func_ov59_02198e6c
/* 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
/* 3c */ virtual bool vfunc_3c(void *param1, unk32 param2, unk32 param3) const override; // func_ov14_0213ee10
/* 4c */ virtual unk32 vfunc_4c() const override; // func_ov14_0213eea8
/* 50 */
};
+1 -1
View File
@@ -31,7 +31,7 @@ public:
/* 30 */ virtual void vfunc_30() = 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
/* 3c */ virtual bool vfunc_3c(void *param1, unk32 param2, unk32 param3) const; // func_ov00_020beb90
/* 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
+47
View File
@@ -0,0 +1,47 @@
#pragma once
#include "types.h"
#include "Player/EquipItem.hpp"
class EquipPotion : public EquipItem {
private:
/* 00 (base) */
/* 09 */ unk8 mUnk_09[3];
/* 0c */ unk32 mUnk_0c;
/* 10 */
public:
EquipPotion();
/* 00 */ virtual void vfunc_00(unk32 param1, unk32 param2, unk32 param3) override; // func_ov55_021991a8
/* 04 */ virtual EquipItem* vfunc_04() override; // func_ov14_02151564
/* 08 */ virtual ~EquipPotion() override;
/* 14 */ virtual bool IsUsable(unk32 param1, unk32 param2) const override;
/* 18 */ virtual void vfunc_18() override; // func_ov55_021991ac
/* 1c */ virtual void vfunc_1c() override; // func_ov55_021991b0
/* 30 */ virtual void vfunc_30() override; // func_ov55_02199274
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_0v55_02199278
/* 50 */
};
class EquipPotionA : public EquipPotion {
public:
EquipPotionA();
/* 04 */ virtual EquipItem* vfunc_04() override; // func_ov14_021515a8
/* 08 */ virtual ~EquipPotionA() override;
/* 0c */ virtual ItemFlag GetId() const override;
/* 50 */
};
class EquipPotionB : public EquipPotion {
public:
EquipPotionB();
/* 04 */ virtual EquipItem* vfunc_04() override; // func_ov14_021515e8
/* 08 */ virtual ~EquipPotionB() override;
/* 0c */ virtual ItemFlag GetId() const override;
/* 50 */
};
+1
View File
@@ -19,6 +19,7 @@ private:
/* 84 */ void *mUnk_84;
/* 88 */ unk8 mUnk_88[0x18];
/* a0 */ unk32 mUnk_a0;
/* a4 */
public:
EquipRope();
+5
View File
@@ -4,6 +4,11 @@
#include "Player/EquipItem.hpp"
class EquipScoop : public EquipItem {
private:
/* 0 (base) */
/* 9 */ unk8 mUnk_9[3];
/* c */
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
+36
View File
@@ -0,0 +1,36 @@
#pragma once
#include "types.h"
#include "Player/EquipItem.hpp"
class EquipShield {
private:
/* 00 (base) */
/* 09 */ unk8 mUnk_09[7];
/* 10 */ void *mUnk_10;
/* 14 */ void *mUnk_14;
/* 18 */ unk8 mUnk_18[4];
/* 1c */ void *mUnk_1c;
/* 20 */ void *mUnk_20;
/* 24 */ void *mUnk_24;
/* 28 */ void *mUnk_28;
/* 2c */
public:
EquipShield();
/* 00 */ virtual void vfunc_00(unk32 param1, unk32 param2, unk32 param3) override; // func_ov00_020c06d4
/* 04 */ virtual EquipItem* vfunc_04() override; // func_ov04_0210bc28
/* 08 */ virtual ~EquipShield() override; // func_ov04_0210bc94
/* 0c */ virtual ItemFlag GetId() const override;
/* 10 */ virtual void vfunc_10() override; // func_ov00_020c076c
/* 14 */ virtual bool IsUsable(unk32 param1, unk32 param2) const override;
/* 18 */ virtual void vfunc_18() override; // func_ov00_020c0770
/* 1c */ virtual void vfunc_1c(); // func_ov00_020c07f8
/* 30 */ virtual void vfunc_30() override; // func_ov00_020c0804
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov00_020c086c
/* 3c */ virtual bool vfunc_3c(void *param1, unk32 param2, unk32 param3) const; // func_ov00_020c0a88
/* 50 */
};
+59
View File
@@ -0,0 +1,59 @@
#pragma once
#include "types.h"
#include "Player/EquipItem.hpp"
class EquipSword : public EquipItem {
private:
/* 00 (base) */
/* 09 */ unk8 mUnk_09[3]; // padding?
/* 0c */ void *mUnk_0c;
/* 10 */ void *mUnk_10;
/* 14 */ void *mUnk_14;
/* 18 */ void *mUnk_18;
/* 1c */ void *mUnk_1c;
/* 20 */ void *mUnk_20;
/* 24 */ void *mUnk_24;
/* 28 */ void *mUnk_28;
/* 2c */ unk32 mUnk_2c;
/* 30 */ unk32 mUnk_30;
/* 34 */ unk32 mUnk_34;
/* 38 */ unk8 mUnk_38[8];
/* 40 */ void *mUnk_40;
/* 44 */ unk32 mUnk_44;
/* 48 */ unk32 mUnk_48;
/* 4c */ unk32 mUnk_4c;
/* 50 */ unk32 mUnk_50;
/* 54 */ unk16 mUnk_54;
/* 56 */ unk16 mUnk_56;
/* 58 */ unk16 mUnk_58;
/* 5a */ unk16 mUnk_5a;
/* 5c */ unk16 mUnk_5c;
/* 5e */ unk8 mUnk_5e[2];
/* 60 */ unk32 mUnk_60;
/* 64 */ unk32 mUnk_64;
/* 68 */ void *mUnk_68;
/* 6c */ unk8 mUnk_6c[2];
/* 6e */ unk8 mUnk_6e;
/* 6f */ unk8 mUnk_6f;
/* 70 */
public:
EquipSword();
/* 00 */ virtual void vfunc_00(unk32 param1, unk32 param2, unk32 param3) override; // func_ov00_020beffc
/* 04 */ virtual EquipItem* vfunc_04() override; // func_ov04_0210b918
/* 08 */ virtual ~EquipSword() override;
/* 0c */ virtual ItemFlag GetId() const override;
/* 10 */ virtual void vfunc_10() override; // func_ov00_020bf18c
/* 18 */ virtual void vfunc_18() override; // func_ov00_020bf270
/* 1c */ virtual void vfunc_1c() override; // func_ov00_020bf2d8
/* 28 */ virtual bool UpdateInUse(unk32 param1) override;
/* 2c */ virtual u32 vfunc_2c() override; // func_ov00_020c0674
/* 30 */ virtual void vfunc_30() override; // func_ov00_020bf538
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov00_020bff94
/* 3c */ virtual bool vfunc_3c(void *param1, unk32 param2, unk32 param3) const override; // func_ov00_020c01dc
/* 50 */
};