mirror of
https://github.com/zeldaret/ph
synced 2026-09-09 11:44:24 -04:00
Merge remote-tracking branch 'upstream/main' into hammer
This commit is contained in:
+12
-11
@@ -35,8 +35,8 @@ struct Actor_UnkStruct_020 {
|
||||
/* 08 */ u8 mUnk_08[2];
|
||||
/* 0a */ u8 mUnk_0a[2];
|
||||
/* 0c */ unk8 mUnk_0c;
|
||||
/* 0d */ unk8 mUnk_0d;
|
||||
/* 0e */ unk8 mUnk_0e;
|
||||
/* 0d */ u8 mUnk_0d;
|
||||
/* 0e */ u8 mUnk_0e;
|
||||
/* 0f */ unk8 mUnk_0f;
|
||||
/* 10 */ unk32 mUnk_10;
|
||||
/* 14 */
|
||||
@@ -64,6 +64,7 @@ struct Actor_UnkStruct_0a4 {
|
||||
/* 14 */
|
||||
|
||||
Actor_UnkStruct_0a4(q20 x, q20 y, q20 z, s32 unk_10);
|
||||
void func_ov000_0207a1c8(unk32 param1, Vec3p *param2);
|
||||
};
|
||||
|
||||
class KillPickupsFilter : FilterActorReturn, public FilterActorBase {
|
||||
@@ -83,7 +84,8 @@ enum PlayerCollide_ {
|
||||
PlayerCollide_Gongoron = 0x8,
|
||||
PlayerCollide_Hammer = 0x10,
|
||||
|
||||
PlayerCollide_PickupFlags = PlayerCollide_Hammer | PlayerCollide_Gongoron | PlayerCollide_Sword | PlayerCollide_Player,
|
||||
/* 0x1b */ PlayerCollide_PickupFlags =
|
||||
PlayerCollide_Hammer | PlayerCollide_Gongoron | PlayerCollide_Sword | PlayerCollide_Player,
|
||||
};
|
||||
|
||||
struct Knockback {
|
||||
@@ -108,8 +110,7 @@ public:
|
||||
/* 012 */ unk16 mUnk_012;
|
||||
/* 014 */ Vec3p mUnk_014;
|
||||
/* 020 */ Actor_UnkStruct_020 mUnk_020;
|
||||
/* 034 */ unk32 mUnk_034;
|
||||
/* 038 */ unk32 mUnk_038;
|
||||
/* 034 */ ActorRef mUnk_034;
|
||||
/* 03c */ unk32 mUnk_03c;
|
||||
/* 040 */ ActorRef mUnk_040;
|
||||
/* 048 */ Vec3p mPos;
|
||||
@@ -136,10 +137,10 @@ public:
|
||||
/* 108 */ unk8 mUnk_108;
|
||||
/* 109 */ unk8 mUnk_109;
|
||||
/* 10a */ unk8 mUnk_10a[0x6];
|
||||
/* 110 */ unk8 mUnk_110;
|
||||
/* 110 */ bool mUnk_110;
|
||||
/* 111 */ bool mUnk_111;
|
||||
/* 112 */ unk8 mUnk_112;
|
||||
/* 113 */ unk8 mUnk_113;
|
||||
/* 112 */ bool mUnk_112;
|
||||
/* 113 */ bool mUnk_113;
|
||||
/* 114 */ unk8 mUnk_114;
|
||||
/* 115 */ unk8 mUnk_115;
|
||||
/* 116 */ unk8 mUnk_116;
|
||||
@@ -172,8 +173,8 @@ public:
|
||||
/* 158 */
|
||||
|
||||
/* 00 */ virtual ~Actor();
|
||||
/* 08 */ virtual bool vfunc_08();
|
||||
/* 0c */ virtual void vfunc_0c();
|
||||
/* 08 */ virtual bool Init();
|
||||
/* 0c */ virtual bool vfunc_0c();
|
||||
/* 10 */ virtual void vfunc_10(u32 param1);
|
||||
/* 14 */ virtual void vfunc_14(u32 param1);
|
||||
/* 18 */ virtual void vfunc_18(u32 param1);
|
||||
@@ -227,7 +228,7 @@ public:
|
||||
bool func_ov00_020c195c();
|
||||
bool func_ov00_020c198c();
|
||||
void KillPickupItemActors();
|
||||
void func_Ov00_020c1bfc(s32 param1);
|
||||
bool func_ov00_020c1bfc(s32 param1);
|
||||
void func_ov00_020c1c20(s32 param1, unk32 param2);
|
||||
bool IsNearLink();
|
||||
void func_ov00_020c1cf8();
|
||||
|
||||
@@ -8,9 +8,7 @@ struct ActorRef {
|
||||
/* 4 */ s32 index;
|
||||
/* 8 */
|
||||
|
||||
inline ActorRef() {
|
||||
Reset();
|
||||
}
|
||||
inline ActorRef() {}
|
||||
inline ActorRef(s32 id, s32 index) :
|
||||
id(id),
|
||||
index(index) {}
|
||||
|
||||
@@ -33,7 +33,7 @@ public:
|
||||
/* 160 */
|
||||
|
||||
/* 00 */ virtual ~ActorRupee() override;
|
||||
/* 08 */ virtual bool vfunc_08() override;
|
||||
/* 08 */ virtual bool Init() override;
|
||||
/* 14 */ virtual void vfunc_14(u32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(u32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20(bool param1) override;
|
||||
|
||||
@@ -5,10 +5,23 @@
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
#include "Actor/Actor.hpp"
|
||||
#include "Actor/ActorRef.hpp"
|
||||
#include "Actor/ActorType.hpp"
|
||||
#include "System/SysNew.hpp"
|
||||
|
||||
class ActorSpawner {
|
||||
struct ActorSpawnOptions {
|
||||
/* 00 */ Actor_UnkStruct_020 mUnk_00;
|
||||
/* 14 */ s16 mAngle;
|
||||
/* 16 */ unk8 mUnk_16[0x2];
|
||||
/* 18 */ unk32 mUnk_18;
|
||||
/* 1c */ ActorRef mUnk_1c;
|
||||
/* 24 */ unk32 mUnk_24;
|
||||
/* 28 */ unk32 mUnk_28;
|
||||
/* 2c */
|
||||
};
|
||||
|
||||
class ActorSpawner : public SysObject {
|
||||
public:
|
||||
/* 0 (empty) */
|
||||
|
||||
@@ -18,8 +31,8 @@ public:
|
||||
~ActorSpawner();
|
||||
void func_ov000_020c4014();
|
||||
void func_ov000_020c4018();
|
||||
Actor *CreateActor(ActorTypeId type);
|
||||
s32 Spawn(ActorTypeId type, Vec3p *pos, void *param3, ActorRef *ref);
|
||||
Actor *CreateActor(ActorTypeId typeId);
|
||||
s32 Spawn(ActorTypeId type, Vec3p *pos, ActorSpawnOptions *param3, ActorRef *ref);
|
||||
};
|
||||
|
||||
extern ActorSpawner *gActorSpawner;
|
||||
|
||||
@@ -25,8 +25,13 @@ enum ActorTypeId_ {
|
||||
ActorTypeId_ShopItemShield = 'ITSL',
|
||||
ActorTypeId_ShopItemSoldOut = 'ITSO',
|
||||
|
||||
ActorTypeId_Heart = 'HART',
|
||||
ActorTypeId_Rupee = 'RUPY',
|
||||
ActorTypeId_RefillArrows = 'FLAL',
|
||||
ActorTypeId_RefillBombs = 'FLBM',
|
||||
ActorTypeId_RefillBombchus = 'FLBT',
|
||||
ActorTypeId_RefillTime = 'FLTM',
|
||||
ActorTypeId_Heart = 'HART',
|
||||
ActorTypeId_LSTM = 'LSTM',
|
||||
ActorTypeId_Rupee = 'RUPY',
|
||||
|
||||
ActorTypeId_Arrow = 'ARRW',
|
||||
ActorTypeId_Blast = 'BLST',
|
||||
@@ -41,6 +46,7 @@ enum ActorTypeId_ {
|
||||
ActorTypeId_SmallKey = 'NKEY',
|
||||
ActorTypeId_SwitchObject = 'SWOB',
|
||||
ActorTypeId_EventIcon = 'EVIC',
|
||||
ActorTypeId_ActionObject = 'ACOB',
|
||||
|
||||
ActorTypeId_Sandworm = 'MLDW',
|
||||
ActorTypeId_Tektite = 'TEKT',
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
#pragma once
|
||||
|
||||
#include "Actor/Actor.hpp"
|
||||
|
||||
class ActorActionObject : public Actor {
|
||||
public:
|
||||
static ActorType gType;
|
||||
|
||||
/* 000 (base) */
|
||||
/* 158 */
|
||||
|
||||
/* 00 */ virtual ~ActorActionObject() override;
|
||||
/* 08 */ virtual bool Init() override;
|
||||
/* 14 */ virtual void vfunc_14(u32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(u32 param1) override;
|
||||
/* b4 */
|
||||
|
||||
static ActorActionObject *Create();
|
||||
ActorActionObject();
|
||||
};
|
||||
@@ -17,7 +17,7 @@ public:
|
||||
/* 160 */ UnkStruct_02035064 mUnk_160;
|
||||
|
||||
/* 00 */ virtual ~ActorEventIcon() override;
|
||||
/* 08 */ virtual bool vfunc_08() override;
|
||||
/* 08 */ virtual bool Init() override;
|
||||
/* 14 */ virtual void vfunc_14(u32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(u32 param1) override;
|
||||
/* 1c */ virtual void vfunc_1c(u16 *param1) override;
|
||||
|
||||
@@ -21,8 +21,8 @@ public:
|
||||
/* 198 */
|
||||
|
||||
/* 00 */ virtual ~ActorSwitchObject() override;
|
||||
/* 08 */ virtual bool vfunc_08() override;
|
||||
/* 0c */ virtual void vfunc_0c() override;
|
||||
/* 08 */ virtual bool Init() override;
|
||||
/* 0c */ virtual bool vfunc_0c() override;
|
||||
/* 14 */ virtual void vfunc_14(u32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(u32 param1) override;
|
||||
/* b4 */
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
#pragma once
|
||||
|
||||
#include "Actor/Navi/ActorNaviBase.hpp"
|
||||
|
||||
class ActorForceNavi : public ActorNaviBase {
|
||||
public:
|
||||
static ActorType gType;
|
||||
|
||||
/* 000 (base) */
|
||||
/* 294 */
|
||||
|
||||
/* b4 */ virtual FairyId GetFairyId() override;
|
||||
|
||||
static ActorForceNavi *Create();
|
||||
};
|
||||
@@ -1,9 +1,27 @@
|
||||
#pragma once
|
||||
|
||||
#include "Actor/Navi/ActorNaviBase.hpp"
|
||||
#include "Unknown/UnkStruct_ov000_020beba8.hpp"
|
||||
|
||||
class UnkStruct_ov000_020b8110 : public UnkStruct_ov000_020beba8 {
|
||||
public:
|
||||
/* 0 (base) */
|
||||
/* c */
|
||||
|
||||
/* 00 */ virtual ~UnkStruct_ov000_020b8110() override;
|
||||
/* 08 */ virtual void vfunc_08(unk16 *param1) override;
|
||||
/* 14 */ virtual void vfunc_14(u16 *param1) override;
|
||||
/* 18 */ virtual void vfunc_18(s32 *param1) override;
|
||||
/* 1c */
|
||||
|
||||
UnkStruct_ov000_020b8110();
|
||||
};
|
||||
|
||||
class ActorNavi : public ActorNaviBase {
|
||||
public:
|
||||
static ActorType gType;
|
||||
|
||||
/* 000 (base) */
|
||||
/* 294 */ ModelRender mUnk_294;
|
||||
/* 2f0 */ void *mUnk_2f0;
|
||||
/* 2f4 */ unk8 mUnk_2f4[0x40];
|
||||
@@ -21,6 +39,26 @@ public:
|
||||
/* 3c0 */ u8 mUnk_3c0[0x8];
|
||||
/* 3c8 */
|
||||
|
||||
/* 00 */ virtual ~ActorNavi() override;
|
||||
/* 08 */ virtual bool Init() override;
|
||||
/* 20 */ virtual void vfunc_20(bool param1) override;
|
||||
/* 8c */ virtual bool vfunc_8c() override;
|
||||
/* b4 */ virtual FairyId GetFairyId() override;
|
||||
/* b8 */ virtual s32 vfunc_b8() override;
|
||||
/* c0 */ virtual bool vfunc_c0(Vec3p *param1) override;
|
||||
/* c4 */ virtual void vfunc_c4() override;
|
||||
/* c8 */ virtual void vfunc_c8() override;
|
||||
/* cc */ virtual bool vfunc_cc(unk32 *param1) override;
|
||||
/* d0 */ virtual void vfunc_d0() override;
|
||||
/* d4 */ virtual void vfunc_d4() override;
|
||||
/* d8 */ virtual void vfunc_d8() override;
|
||||
/* dc */ virtual void SetActive(bool active) override;
|
||||
/* e0 */ virtual void vfunc_e0() override;
|
||||
/* e8 */ virtual void vfunc_e8() override;
|
||||
/* ec */ virtual void vfunc_ec() override;
|
||||
|
||||
static ActorNavi *Create();
|
||||
void func_ov000_020b8200();
|
||||
void func_ov000_020b853c(void);
|
||||
|
||||
bool func_ov059_0219933c(u32 param1);
|
||||
@@ -30,4 +68,6 @@ public:
|
||||
bool func_ov059_0219af14();
|
||||
bool func_ov059_0219afc4();
|
||||
void func_ov059_0219b020();
|
||||
|
||||
ActorNavi();
|
||||
};
|
||||
|
||||
@@ -7,17 +7,27 @@
|
||||
#include "Player/EquipHammer.hpp"
|
||||
#include "Render/ModelRender.hpp"
|
||||
|
||||
typedef s32 FairyId;
|
||||
enum FairyId_ {
|
||||
FairyId_None = -1,
|
||||
FairyId_Courage = 0,
|
||||
FairyId_Power = 1,
|
||||
FairyId_Wisdom = 2,
|
||||
FairyId_COUNT = 3,
|
||||
};
|
||||
|
||||
class ActorNaviBase_Unk1 {};
|
||||
|
||||
class ActorNaviBase : public Actor {
|
||||
public:
|
||||
/* 000 (base) */
|
||||
/* 158 */ Vec3p mUnk_158;
|
||||
/* 158 */ Vec3p mOffsetPos;
|
||||
/* 164 */ unk32 mUnk_164;
|
||||
/* 168 */ ModelRender mUnk_168;
|
||||
/* 1c4 */ unk8 mUnk_1c4[0xc];
|
||||
/* 1d0 */ void *mUnk_1d0;
|
||||
/* 1d4 */ unk8 mUnk_1d4[0x40];
|
||||
/* 1d4 */ unk8 mUnk_1d4[0x20];
|
||||
/* 1f4 */ unk8 mUnk_1f4[0x20];
|
||||
/* 214 */ unk16 mUnk_214;
|
||||
/* 216 */ unk8 mUnk_216[0xc];
|
||||
/* 222 */ unk16 mUnk_222;
|
||||
@@ -37,7 +47,7 @@ public:
|
||||
/* 294 */
|
||||
|
||||
/* 00 */ virtual ~ActorNaviBase() override;
|
||||
/* 08 */ virtual bool vfunc_08() override;
|
||||
/* 08 */ virtual bool Init() override;
|
||||
/* 10 */ virtual void vfunc_10(u32 param1) override;
|
||||
/* 14 */ virtual void vfunc_14(u32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(u32 param1) override;
|
||||
@@ -51,9 +61,7 @@ public:
|
||||
/* 84 */ virtual void vfunc_84() override;
|
||||
/* 90 */ virtual bool vfunc_90() override;
|
||||
/* 94 */ virtual void vfunc_94() override;
|
||||
/* a0 */ virtual bool TrySetTransform(Transform *transform) override;
|
||||
/* b0 */ virtual void SetTransform(Transform *transform) override;
|
||||
/* b4 */ virtual void vfunc_b4() = 0;
|
||||
/* b4 */ virtual FairyId GetFairyId() = 0;
|
||||
/* b8 */ virtual s32 vfunc_b8();
|
||||
/* bc */ virtual bool vfunc_bc(unk32 param1, unk8 param2, s32 param3);
|
||||
/* c0 */ virtual bool vfunc_c0(Vec3p *param1);
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
#pragma once
|
||||
|
||||
#include "Actor/Navi/ActorNaviBase.hpp"
|
||||
|
||||
class ActorWisdomNavi : public ActorNaviBase {
|
||||
public:
|
||||
static ActorType gType;
|
||||
|
||||
/* 000 (base) */
|
||||
/* 294 */
|
||||
|
||||
/* b4 */ virtual FairyId GetFairyId() override;
|
||||
|
||||
static ActorWisdomNavi *Create();
|
||||
};
|
||||
@@ -36,7 +36,7 @@ public:
|
||||
/* 1b8 */
|
||||
|
||||
/* 00 */ virtual ~ActorArrow() override;
|
||||
/* 08 */ virtual bool vfunc_08() override;
|
||||
/* 08 */ virtual bool Init() override;
|
||||
/* 10 */ virtual void vfunc_10(u32 param1) override;
|
||||
/* 14 */ virtual void vfunc_14(u32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(u32 param1) override;
|
||||
|
||||
@@ -19,7 +19,7 @@ public:
|
||||
/* 164 */
|
||||
|
||||
/* 00 */ virtual ~ActorBlast() override;
|
||||
/* 08 */ virtual bool vfunc_08() override;
|
||||
/* 08 */ virtual bool Init() override;
|
||||
/* 14 */ virtual void vfunc_14(u32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(u32 param1) override;
|
||||
/* b4 */
|
||||
|
||||
@@ -54,7 +54,7 @@ public:
|
||||
/* 26c */
|
||||
|
||||
/* 00 */ virtual ~ActorBomb() override;
|
||||
/* 08 */ virtual bool vfunc_08() override;
|
||||
/* 08 */ virtual bool Init() override;
|
||||
/* 14 */ virtual void vfunc_14(u32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(u32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20(bool param1) override;
|
||||
|
||||
@@ -0,0 +1,113 @@
|
||||
#pragma once
|
||||
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
#include "Actor/Actor.hpp"
|
||||
#include "Actor/ActorType.hpp"
|
||||
|
||||
class ActorRefill : public Actor {
|
||||
public:
|
||||
/* 000 (base) */
|
||||
/* 158 */ unk32 mUnk_158;
|
||||
/* 15c */ unk32 mUnk_15c;
|
||||
/* 160 */ unk32 mUnk_160;
|
||||
/* 164 */ u8 mUnk_164;
|
||||
/* 165 */ unk8 mUnk_165[0x3];
|
||||
/* 168 */
|
||||
|
||||
public:
|
||||
ActorRefill(unk32 param1);
|
||||
|
||||
/* 00 */ virtual ~ActorRefill() override;
|
||||
/* 08 */ virtual bool Init() override;
|
||||
/* 14 */ virtual void vfunc_14(u32 param1) override;
|
||||
/* 20 */ virtual void vfunc_20(bool param1) override;
|
||||
/* b4 */ virtual ItemFlag GetAmmoItem() = 0;
|
||||
/* b8 */
|
||||
|
||||
bool func_ov014_02135364(unk32 param1);
|
||||
void func_ov014_02135474();
|
||||
};
|
||||
|
||||
class ActorRefillBombs : public ActorRefill {
|
||||
public:
|
||||
static ActorType gType;
|
||||
|
||||
/* 000 (base) */
|
||||
/* 168 */
|
||||
|
||||
public:
|
||||
ActorRefillBombs();
|
||||
static ActorRefillBombs *Create();
|
||||
|
||||
/* 00 */ virtual ~ActorRefillBombs() override;
|
||||
/* b4 */ virtual ItemFlag GetAmmoItem() override;
|
||||
/* b8 */
|
||||
};
|
||||
|
||||
class ActorRefillBombchus : public ActorRefill {
|
||||
public:
|
||||
static ActorType gType;
|
||||
|
||||
/* 000 (base) */
|
||||
/* 168 */
|
||||
|
||||
public:
|
||||
ActorRefillBombchus();
|
||||
static ActorRefillBombchus *Create();
|
||||
|
||||
/* 00 */ virtual ~ActorRefillBombchus() override;
|
||||
/* b4 */ virtual ItemFlag GetAmmoItem() override;
|
||||
/* b8 */
|
||||
};
|
||||
|
||||
class ActorRefillArrows : public ActorRefill {
|
||||
public:
|
||||
static ActorType gType;
|
||||
|
||||
/* 000 (base) */
|
||||
/* 168 */
|
||||
|
||||
public:
|
||||
ActorRefillArrows();
|
||||
static ActorRefillArrows *Create();
|
||||
|
||||
/* 00 */ virtual ~ActorRefillArrows() override;
|
||||
/* b4 */ virtual ItemFlag GetAmmoItem() override;
|
||||
/* b8 */
|
||||
};
|
||||
|
||||
class ActorRefillTime : public ActorRefill {
|
||||
public:
|
||||
static ActorType gType;
|
||||
|
||||
/* 000 (base) */
|
||||
/* 168 */
|
||||
|
||||
public:
|
||||
ActorRefillTime();
|
||||
static ActorRefillTime *Create();
|
||||
|
||||
/* 00 */ virtual ~ActorRefillTime() override;
|
||||
/* 08 */ virtual bool Init() override;
|
||||
/* b4 */ virtual ItemFlag GetAmmoItem() override;
|
||||
/* b8 */
|
||||
};
|
||||
|
||||
class ActorLSTM : public ActorRefill {
|
||||
public:
|
||||
static ActorType gType;
|
||||
|
||||
/* 000 (base) */
|
||||
/* 168 */
|
||||
|
||||
public:
|
||||
ActorLSTM();
|
||||
static ActorLSTM *Create();
|
||||
|
||||
/* 00 */ virtual ~ActorLSTM() override;
|
||||
/* 08 */ virtual bool Init() override;
|
||||
/* b4 */ virtual ItemFlag GetAmmoItem() override;
|
||||
/* b8 */
|
||||
};
|
||||
@@ -46,7 +46,7 @@ public:
|
||||
/* 1a0 */
|
||||
|
||||
/* 00 */ virtual ~ActorRope() override;
|
||||
/* 08 */ virtual bool vfunc_08() override;
|
||||
/* 08 */ virtual bool Init() override;
|
||||
/* 10 */ virtual void vfunc_10(u32 param1) override;
|
||||
/* 14 */ virtual void vfunc_14(u32 param1) override;
|
||||
/* 18 */ virtual void vfunc_18(u32 param1) override;
|
||||
|
||||
Reference in New Issue
Block a user