summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorelijah-thomas774 <elijahthomas774@gmail.com>2025-11-23 13:55:01 -0500
committerelijah-thomas774 <elijahthomas774@gmail.com>2025-11-23 15:11:22 -0500
commit306ae916d55c49ba3c1c1d0367a2af9e1acbc60d (patch)
tree586e51f6eebb924d6c89e926b09aafc5eef09972 /include
parentfc4700efd66bc1cea1dbe15e8b3ddd8fe5332e39 (diff)
init for d_t_barrel
Diffstat (limited to 'include')
-rw-r--r--include/d/a/obj/d_a_obj_stage_sink.h5
-rw-r--r--include/d/t/d_t_barrel.h31
-rw-r--r--include/d/t/d_t_barrel_pos.h14
3 files changed, 44 insertions, 6 deletions
diff --git a/include/d/a/obj/d_a_obj_stage_sink.h b/include/d/a/obj/d_a_obj_stage_sink.h
index c8da109e..7a0340b4 100644
--- a/include/d/a/obj/d_a_obj_stage_sink.h
+++ b/include/d/a/obj/d_a_obj_stage_sink.h
@@ -3,7 +3,6 @@
#include "d/a/obj/d_a_obj_base.h"
#include "s/s_State.hpp"
-#include "s/s_StateMgr.hpp"
class dAcOstageSink_c : public dAcObjBase_c {
public:
@@ -13,8 +12,12 @@ public:
STATE_FUNC_DECLARE(dAcOstageSink_c, Wait);
STATE_FUNC_DECLARE(dAcOstageSink_c, Move);
+ static dAcOstageSink_c *GetInstance();
+
private:
/* 0x??? */ STATE_MGR_DECLARE(dAcOstageSink_c);
+
+ static dAcOstageSink_c *sInstance;
};
#endif
diff --git a/include/d/t/d_t_barrel.h b/include/d/t/d_t_barrel.h
index a1255eb4..b122a196 100644
--- a/include/d/t/d_t_barrel.h
+++ b/include/d/t/d_t_barrel.h
@@ -1,20 +1,45 @@
#ifndef D_T_BARREL_H
#define D_T_BARREL_H
+#include "common.h"
#include "d/a/d_a_base.h"
+#include "d/t/d_tg.h"
+#include "m/m_vec.h"
#include "s/s_State.hpp"
-#include "s/s_StateMgr.hpp"
-class dTgBarrel_c : public dAcBase_c {
+class dTgBarrelPos_c;
+class dAcOBarrel_c;
+class dAcOstageSink_c;
+
+class dTgBarrel_c : public dTg_c {
public:
dTgBarrel_c() : mStateMgr(*this, sStateID::null) {}
virtual ~dTgBarrel_c() {}
+ virtual int doDelete() override;
+ virtual int draw() override;
+ virtual int actorCreate() override;
+ virtual int actorPostCreate() override;
+ virtual int actorExecute() override;
+
STATE_FUNC_DECLARE(dTgBarrel_c, Wait);
STATE_FUNC_DECLARE(dTgBarrel_c, Stop);
+ bool checkPlayerPos(const mVec3_c &playerPos);
+
private:
- /* 0x??? */ STATE_MGR_DECLARE(dTgBarrel_c);
+ /* 0x0FC */ STATE_MGR_DECLARE(dTgBarrel_c);
+ /* 0x138 */ dAcRef_c<dAcOstageSink_c> mStageRef;
+ /* 0x144 */ dAcRef_c<dTgBarrelPos_c> mTgBarrelPosArr[10];
+ /* 0x1BC */ dAcRef_c<dAcOBarrel_c> mBarrelArr[10];
+ /* 0x234 */ mVec3_c mSpawnPosition;
+ /* 0x240 */ u8 field_0x240; ///< Stop Sceneflag
+ /* 0x241 */ u8 field_0x241; ///< Barrel Spawn Interval in Seconds
+ /* 0x242 */ u8 field_0x242; ///< Barrel Spawn Timer
+ /* 0x243 */ u8 field_0x243;
+ /* 0x244 */ u8 field_0x244;
+ /* 0x245 */ u8 field_0x245;
+ /* 0x246 */ u8 field_0x246;
};
#endif
diff --git a/include/d/t/d_t_barrel_pos.h b/include/d/t/d_t_barrel_pos.h
index 2c0ac8f0..7685cde8 100644
--- a/include/d/t/d_t_barrel_pos.h
+++ b/include/d/t/d_t_barrel_pos.h
@@ -1,14 +1,24 @@
#ifndef D_T_BARREL_POS_H
#define D_T_BARREL_POS_H
-#include "d/a/d_a_base.h"
+#include "d/t/d_tg.h"
-class dTgBarrelPos_c : public dAcBase_c {
+class dTgBarrelPos_c : public dTg_c {
public:
dTgBarrelPos_c() {}
virtual ~dTgBarrelPos_c() {}
+ u8 getLinkIndex() const {
+ return mLinkIndex;
+ }
+ u8 getLinkId() const {
+ return mLinkId;
+ }
+
private:
+ /* 0x0FC */ u8 _0xFC[0x114 - 0xFC];
+ /* 0x114 */ u8 mLinkIndex;
+ /* 0x115 */ u8 mLinkId;
};
#endif