Files
ph/include/Player/EquipRope.hpp
2025-02-02 12:13:20 +01:00

117 lines
3.6 KiB
C++

#pragma once
#include "global.h"
#include "nds/math.h"
#include "types.h"
#include "Actor/ActorRef.hpp"
#include "Actor/Player/ActorRope.hpp"
#include "Physics/Cylinder.hpp"
#include "Player/EquipItem.hpp"
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;
class LinkStateItem;
class EquipRope : public EquipItem {
public:
/* 00 (base) */
/* 09 */ unk8 mUnk_09;
/* 0a */ unk16 mUnk_0a;
/* 0c */ unk8 mUnk_0c[4];
/* 10 */ ActorRef mRopeRef;
/* 18 */ EquipRope_Unk_18 mUnk_18[2];
/* 50 */ unk8 mUnk_50[0x1a];
/* 6a */ bool mUnk_6a;
/* 6b */ unk8 mUnk_6b;
/* 6c */ unk16 mUnk_6c;
/* 6e */ unk8 mUnk_6e[2];
/* 70 */ unk16 mUnk_70;
/* 72 */ unk8 mUnk_72[0x12];
/* 84 */ void *mUnk_84;
/* 88 */ unk8 mUnk_88[0x18];
/* a0 */ unk32 mUnk_a0;
/* a4 */
/* 04 */ virtual ~EquipRope() override;
/* 0c */ virtual ItemFlag GetId() const override;
/* 10 */ virtual void vfunc_10() override;
/* 14 */ virtual bool IsUsable(unk32 param1) const override;
/* 18 */ virtual void vfunc_18() override;
/* 1c */ virtual void vfunc_1c() override;
/* 30 */ virtual void vfunc_30() override;
/* 38 */ virtual void vfunc_38(unk32 param1) override;
/* 50 */
u16 GetAmmo();
EquipRope();
bool func_ov014_0213d3d4(Vec3p *vec);
void func_ov014_0213d404(unk32 *param1);
ActorRope *GetRopeActor();
s32 func_ov14_0213d440(s32 actorId);
s32 func_ov14_0213d480(s32 actorId);
bool func_ov014_0213d4c8();
bool func_ov014_0213d4ec(unk32 *param1, s32 param2);
s32 func_ov014_0213d594(s32 param1);
bool func_ov014_0213d5d0(unk32 *param1, s32 param2);
s32 func_ov014_0213d63c(s32 param1);
bool func_ov014_0213d684();
bool func_ov014_0213d6e0();
bool func_ov014_0213d71c(s32 param1, ActorRef *param2);
bool func_ov014_0213d788(s32 param1);
bool func_ov14_0213d81c(s32 index, Vec3p *vec);
void func_ov14_0213d91c(s32 index);
bool func_ov014_0213d9ac();
bool func_ov14_0213dadc(s32 index, Cylinder *cylinder);
void func_ov014_0213db34();
void func_ov014_0213db60();
void func_ov014_0213dba4(Vec3p *param1);
s32 func_ov014_0213dda0();
s32 func_ov14_0213ddd4(Actor *actor);
bool func_ov14_0213defc(Actor *actor);
bool func_ov014_0213dfbc(Cylinder *cylinder, s32 param2, Vec3p *vec);
void func_ov014_0213e144(Vec3p *param1, Vec3p *param2, s32 param3);
bool func_ov014_0213e20c(s32 param1, Vec3p *param2);
bool func_ov014_0213e328();
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();
};