From baa870cbc090f56286ae3f2f44cd84ba7165e484 Mon Sep 17 00:00:00 2001 From: Aetias Date: Sun, 2 Feb 2025 12:13:20 +0100 Subject: Move ov057 documentation from Ghidra --- include/Actor/Player/ActorRope.hpp | 26 ++++++++++++++++++++++++-- include/Player/EquipRope.hpp | 34 +++++++++++++++++++++++++++++++++- include/Player/LinkStateItem.hpp | 6 ++++++ 3 files changed, 63 insertions(+), 3 deletions(-) (limited to 'include') diff --git a/include/Actor/Player/ActorRope.hpp b/include/Actor/Player/ActorRope.hpp index ce6051ec..1d70a5fd 100644 --- a/include/Actor/Player/ActorRope.hpp +++ b/include/Actor/Player/ActorRope.hpp @@ -6,6 +6,21 @@ #include "Actor/Actor.hpp" #include "Actor/ActorType.hpp" +#include "Unknown/UnkStruct_ov000_020beba8.hpp" + +class ActorRope_Unk_0219a3b0 : public UnkStruct_ov000_020beba8 { +public: + /* 0 (base) */ + /* c */ + + /* 00 */ virtual ~ActorRope_Unk_0219a3b0() override; + /* 08 */ virtual void vfunc_08(unk16 *param1) override; + /* 10 */ virtual void vfunc_10(s32 *param1) override; + /* 1c */ + + inline ActorRope_Unk_0219a3b0() : + UnkStruct_ov000_020beba8(6) {} +}; class ActorRope : public Actor { public: @@ -15,12 +30,14 @@ public: /* 158 */ unk8 mUnk_158[0xc]; /* 164 */ unk16 mUnk_164; /* 166 */ unk16 mUnk_166; - /* 168 */ unk8 mUnk_168[0x3]; + /* 168 */ s16 mUnk_168; + /* 16a */ unk8 mUnk_16a; /* 16b */ unk8 mUnk_16b; /* 16c */ unk8 mUnk_16c; /* 16d */ unk8 mUnk_16d; /* 16e */ unk16 mUnk_16e; - /* 170 */ unk8 mUnk_170[0x4]; + /* 170 */ u16 mUnk_170; + /* 172 */ unk8 mUnk_172[0x2]; /* 174 */ Vec3p mUnk_174; /* 180 */ Vec3p mUnk_180; /* 18c */ unk8 mUnk_18c[0x4]; @@ -46,4 +63,9 @@ public: bool func_ov014_02123cd0(Vec3p *param1, s32 param2); bool func_ov014_02123e1c(); bool func_ov014_02123e48(unk32 param1); + + ActorRope(); + q20 func_ov057_0219a5ac(); + void func_ov057_0219a6b8(); + void func_ov057_0219a850(); }; diff --git a/include/Player/EquipRope.hpp b/include/Player/EquipRope.hpp index 4d3117f6..ba157678 100644 --- a/include/Player/EquipRope.hpp +++ b/include/Player/EquipRope.hpp @@ -13,6 +13,27 @@ struct EquipRope_Unk_18 { /* 00 */ Vec3p vec; /* 0c */ unk8 mUnk_0c[0x10]; /* 1c */ + + bool func_ov057_02198e80(); + void func_ov057_02198fc0(u32 param1); + void func_ov057_02199028(s32 param1); + bool func_ov057_02199104(EquipRope_Unk_18 *other); +}; + +class EquipRope_Unk_02198dd0 { +public: + /* 0 (vtable) */ + /* 4 */ unk32 mUnk_4; + /* 8 */ + + /* 00 */ virtual ~EquipRope_Unk_02198dd0(); + /* 08 */ unk32 vfunc_08(); + /* 0c */ unk32 vfunc_0c(); + /* 10 */ unk32 vfunc_10(s32 *param1); + /* 14 */ unk32 vfunc_14(); + /* 18 */ + + EquipRope_Unk_02198dd0(); }; class Actor; @@ -80,5 +101,16 @@ public: bool func_ov014_0213e20c(s32 param1, Vec3p *param2); bool func_ov014_0213e328(); - static void StopUsing(LinkStateItem *param1); + void func_ov057_021990ec(); + void func_ov057_021990f8(); + bool func_ov057_0219922c(u32 param1); + void func_ov057_021992b4(s32 param1); + bool func_ov057_0219939c(s32 *param1, s32 param2); + bool func_ov057_02199454(s32 param1); + bool func_ov057_021994c0(unk32 *param1); + s32 func_ov057_021996b0(Vec3p *param1); + void func_ov057_02199ad8(); + void func_ov057_02199c78(); + void func_ov057_02199d54(); + void func_ov057_02199e24(); }; diff --git a/include/Player/LinkStateItem.hpp b/include/Player/LinkStateItem.hpp index be160ae0..f8c424b2 100644 --- a/include/Player/LinkStateItem.hpp +++ b/include/Player/LinkStateItem.hpp @@ -79,4 +79,10 @@ public: void func_ov056_021990c0(); void func_ov056_0219911c(); bool func_ov056_021992f8(); + + void func_ov057_02199e64(); + void func_ov057_02199edc(); + void func_ov057_0219a208(); + void StopUsingRope(); + bool func_ov057_0219a364(); }; -- cgit v1.2.3