diff options
Diffstat (limited to 'include/Actor')
| -rw-r--r-- | include/Actor/Actor.hpp | 3 | ||||
| -rw-r--r-- | include/Actor/ActorShopItem.hpp | 26 | ||||
| -rw-r--r-- | include/Actor/Character/ActorCharacter.hpp | 9 | ||||
| -rw-r--r-- | include/Actor/Character/ActorItemSeller.hpp | 51 |
4 files changed, 58 insertions, 31 deletions
diff --git a/include/Actor/Actor.hpp b/include/Actor/Actor.hpp index 565d0eb7..c313e5aa 100644 --- a/include/Actor/Actor.hpp +++ b/include/Actor/Actor.hpp @@ -12,6 +12,7 @@ #include "Physics/Transform.hpp" #include "Player/EquipBoomerang.hpp" #include "System/SysNew.hpp" +#include "Unknown/UnkStruct_020397f8.hpp" #include "Unknown/UnkStruct_ov000_020beba8.hpp" struct Actor_UnkStruct_012 { @@ -200,7 +201,7 @@ public: /* 5c */ virtual bool Drop(Vec3p *vel); /* 60 */ virtual bool vfunc_60(); /* 64 */ virtual void vfunc_64(); - /* 68 */ virtual void vfunc_68(); + /* 68 */ virtual void vfunc_68(unk32 param1, UnkStruct_020397f8 *param2); /* 6c */ virtual bool vfunc_6c(); /* 70 */ virtual bool vfunc_70(); /* 74 */ virtual void vfunc_74(ActorRef *ref); diff --git a/include/Actor/ActorShopItem.hpp b/include/Actor/ActorShopItem.hpp index 5d2e8d55..022f3ba9 100644 --- a/include/Actor/ActorShopItem.hpp +++ b/include/Actor/ActorShopItem.hpp @@ -9,6 +9,8 @@ #include "Render/ModelRender.hpp" #include "System/SysNew.hpp" +#define NUM_SHOP_ITEMS 5 + typedef u32 ShopItem; enum ShopItem_ { ShopItem_Unk = -1, @@ -448,18 +450,34 @@ public: }; struct UnkStruct_ov031_02183e80 { - /* 000 */ PAD(0x000, 0x01c); + /* 000 */ unk32 mUnk_000; + /* 004 */ PAD(0x004, 0x01c); /* 01c */ u32 mUnk_01c[2]; /* 024 */ u32 mUnk_024[2]; /* 02c */ u32 mUnk_02c[2]; - /* 034 */ PAD(0x34, 0x38); + /* 034 */ PAD(0x034, 0x038); /* 038 */ u32 mUnk_038[1]; // at least 1, unclear how many - /* 03c */ PAD(0x03c, 0x178); + /* 03c */ PAD(0x03c, 0x070); + /* 070 */ ActorRef mShopItemRefs[NUM_SHOP_ITEMS]; + /* 098 */ ActorRef mShopItemRefBK; + /* 0a0 */ ActorRef mShopItemRefCC; + /* 0a8 */ ActorRef mShopItemRefBY; + /* 0b0 */ PAD(0x0b0, 0x178); /* 178 */ Vec3p mUnk_178; - /* 184 */ PAD(0x184, 0x19a); + /* 184 */ PAD(0x184, 0x194); + /* 194 */ unk32 mUnk_194; + /* 198 */ bool mUnk_198; + /* 199 */ PAD(0x199, 0x19a); /* 19a */ u8 mUnk_19a; /* 19b */ + static UnkStruct_ov031_02183e80 *GetInstance(); + bool func_ov031_0217bd80(); + unk32 func_ov031_0217bda0(); + unk32 func_ov031_0217bdac(); + ActorShopItem *func_ov031_0217cdd8(unk32 param1); + bool func_ov031_0217ce18(); + unk32 func_ov031_0217ce6c(); bool func_ov031_0217cec0(); }; diff --git a/include/Actor/Character/ActorCharacter.hpp b/include/Actor/Character/ActorCharacter.hpp index 8c9968a2..c39e893e 100644 --- a/include/Actor/Character/ActorCharacter.hpp +++ b/include/Actor/Character/ActorCharacter.hpp @@ -36,7 +36,7 @@ public: /* 08 */ virtual bool Init() override; /* 14 */ virtual void vfunc_14(u32 param1) override; /* 18 */ virtual void vfunc_18(u32 param1) override; - /* 68 */ virtual void vfunc_68() override; + /* 68 */ virtual void vfunc_68(unk32 param1, UnkStruct_020397f8 *param2) override; /* 80 */ virtual void vfunc_80() override; /* 84 */ virtual void vfunc_84() override; /* b4 */ virtual void vfunc_b4(); @@ -82,13 +82,13 @@ public: /* 78 */ Vec3p mUnk_78; /* 84 */ unk32 mUnk_84; /* 88 */ unk32 mUnk_88; - /* 8c */ unk8 mUnk_8c; + /* 8c */ bool mUnk_8c; /* 8d */ unk8 mUnk_8d; /* 8e */ unk8 mUnk_8e; - /* 8f */ unk8 mUnk_8f; + /* 8f */ bool mUnk_8f; /* 90 */ - /* 00 */ virtual ~ActorCharacterModel() override {} + /* 00 */ ARM virtual ~ActorCharacterModel() override {} /* 3c */ virtual void vfunc_3c(ModelRenderCommandsData *renderData) override; /* 40 */ @@ -187,6 +187,7 @@ public: mUnk_244(0x11f) {} void func_ov014_02145cac(); + void func_ov014_02145e48(unk32 param1); bool func_ov014_02145f0c(unk32 param1); inline bool UnkFunc1(unk32 param1) { diff --git a/include/Actor/Character/ActorItemSeller.hpp b/include/Actor/Character/ActorItemSeller.hpp index b2e2db97..26ce1ad6 100644 --- a/include/Actor/Character/ActorItemSeller.hpp +++ b/include/Actor/Character/ActorItemSeller.hpp @@ -10,33 +10,40 @@ class ActorItemSellerBase : public ActorCharacter { public: /* 000 (base) */ /* 470 */ unk32 mUnk_470; - /* 474 */ + /* 474 */ unk32 mUnk_474; + /* 478 */ unk32 mUnk_478; + /* 47c */ unk32 mUnk_47c; + /* 480 */ bool mUnk_480; + /* 481 */ PAD(0x481, 0x484); + /* 484 */ /* 000 */ virtual ~ActorItemSellerBase() override; /* 008 */ virtual bool Init() override; /* 020 */ virtual void vfunc_20(bool param1) override; /* 03c */ virtual bool CollidesWithLink() override; /* 040 */ virtual bool IsHitboxTouched(bool param1) override; - /* 068 */ virtual void vfunc_68() override; + /* 068 */ virtual void vfunc_68(unk32 param1, UnkStruct_020397f8 *param2) override; /* 08c */ virtual bool vfunc_8c() override; /* 0c0 */ virtual bool vfunc_c0() override; /* 0c4 */ virtual void vfunc_c4() override; /* 0d4 */ virtual unk32 vfunc_d4() override; - /* 0f4 */ virtual void vfunc_f4() = 0; - /* 0f8 */ virtual void vfunc_f8() = 0; - /* 0fc */ virtual void vfunc_fc() = 0; - /* 100 */ virtual void vfunc_100() = 0; - /* 104 */ virtual void vfunc_104() = 0; - /* 108 */ virtual void vfunc_108() = 0; - /* 10c */ virtual void vfunc_10c() = 0; - /* 110 */ virtual void vfunc_110() = 0; - /* 114 */ virtual void vfunc_114() = 0; - /* 118 */ virtual void vfunc_118() = 0; - /* 11c */ virtual void vfunc_11c(); + /* 0f4 */ virtual void vfunc_f4() = 0; + /* 0f8 */ virtual void vfunc_f8() = 0; + /* 0fc */ virtual void vfunc_fc() = 0; + /* 100 */ virtual void vfunc_100() = 0; + /* 104 */ virtual void vfunc_104() = 0; + /* 108 */ virtual void vfunc_108() = 0; + /* 10c */ virtual void vfunc_10c() = 0; + /* 110 */ virtual void vfunc_110() = 0; + /* 114 */ virtual unk32 vfunc_114(unk32 param1) = 0; + /* 118 */ virtual void vfunc_118() = 0; + /* 11c */ virtual bool vfunc_11c(); /* 120 */ ActorItemSellerBase(); + static ActorItemSellerBase *GetCurrentSeller(); + void func_ov031_0217d588(); void func_ov031_0217d5c0(); void func_ov031_0217d5c4(); @@ -44,7 +51,7 @@ public: void func_ov031_0217d610(); void func_ov031_0217d62c(); void func_ov031_0217d638(); - void func_ov031_0217d6ac(); + bool func_ov031_0217d6ac(); void func_ov031_0217d6d0(); void func_ov031_0217d760(); void func_ov031_0217d784(); @@ -62,7 +69,7 @@ public: class ActorItemSeller : public ActorItemSellerBase { /* 000 (base) */ - /* 474 */ + /* 484 */ /* 000 */ virtual ~ActorItemSeller() override; /* 008 */ virtual bool Init() override; @@ -75,7 +82,7 @@ class ActorItemSeller : public ActorItemSellerBase { /* 108 */ virtual void vfunc_108() override; /* 10c */ virtual void vfunc_10c() override; /* 110 */ virtual void vfunc_110() override; - /* 114 */ virtual void vfunc_114() override; + /* 114 */ virtual unk32 vfunc_114(unk32 param1) override; /* 118 */ virtual void vfunc_118() override; /* 120 */ }; @@ -100,7 +107,7 @@ public: static ActorType gType; /* 000 (base) */ - /* 474 */ + /* 484 */ /* 000 */ virtual ~ActorBeedle() override; /* 008 */ virtual bool Init() override; @@ -108,9 +115,9 @@ public: /* 070 */ virtual bool vfunc_70() override; /* 0c4 */ virtual void vfunc_c4() override; /* 0d4 */ virtual unk32 vfunc_d4() override; - /* 0d8 */ virtual unk32 vfunc_d8() override; - /* 0dc */ virtual unk32 vfunc_dc() override; - /* 0e0 */ virtual unk32 vfunc_e0() override; + /* 0d8 */ virtual unk32 vfunc_d8(unk32 param1) override; + /* 0dc */ virtual unk32 vfunc_dc(unk32 param1) override; + /* 0e0 */ virtual unk32 vfunc_e0(unk32 param1) override; /* 0f4 */ virtual void vfunc_f4() override; /* 0f8 */ virtual void vfunc_f8() override; /* 0fc */ virtual void vfunc_fc() override; @@ -119,9 +126,9 @@ public: /* 108 */ virtual void vfunc_108() override; /* 10c */ virtual void vfunc_10c() override; /* 110 */ virtual void vfunc_110() override; - /* 114 */ virtual void vfunc_114() override; + /* 114 */ virtual unk32 vfunc_114(unk32 param1) override; /* 118 */ virtual void vfunc_118() override; - /* 11c */ virtual void vfunc_11c() override; + /* 11c */ virtual bool vfunc_11c() override; static ActorBeedle *Create(); |
