summaryrefslogtreecommitdiff
path: root/include/d/actor/d_a_obj_hole.h
diff options
context:
space:
mode:
authorLagoLunatic <LagoLunatic@users.noreply.github.com>2023-11-25 23:53:05 -0500
committerLagoLunatic <LagoLunatic@users.noreply.github.com>2023-11-25 23:53:05 -0500
commit5039fe661cd3882d77b22dd72a2b3555aa658acd (patch)
tree6160e28e8421a08b0559f716d802cd6bc58fa30c /include/d/actor/d_a_obj_hole.h
parent30357c1712773d6538fc597cde60f2fe15e10c86 (diff)
Finished porting all actor classes to headers
Diffstat (limited to 'include/d/actor/d_a_obj_hole.h')
-rw-r--r--include/d/actor/d_a_obj_hole.h55
1 files changed, 43 insertions, 12 deletions
diff --git a/include/d/actor/d_a_obj_hole.h b/include/d/actor/d_a_obj_hole.h
index 8ddd9149..628c0820 100644
--- a/include/d/actor/d_a_obj_hole.h
+++ b/include/d/actor/d_a_obj_hole.h
@@ -3,10 +3,24 @@
#include "f_op/f_op_actor.h"
#include "d/d_bg_s_lin_chk.h"
+#include "d/d_bg_s_acch.h"
class daObj_Hole_c : public fopAc_ac_c {
public:
- void modeProcInit(int) {}
+ enum Proc_e {
+ PROC_INIT = 0,
+ PROC_EXEC = 1
+ };
+
+ enum Mode {
+ MODE_WAIT = 0,
+ MODE_EVENT = 1,
+ MODE_NULL,
+ };
+
+ static const char m_arc_name[];
+
+ void modeProcInit(int newMode) { modeProc(PROC_INIT, newMode); }
void setMtx();
void getPosAndAngle();
@@ -14,22 +28,39 @@ public:
void modeWait();
void modeEventInit();
void modeEvent();
- void modeProc(daObj_Hole_c::Proc_e mode, int i_nextState);
+ void modeProc(Proc_e proc, int newMode);
void debugDraw();
void createInit();
void getArg();
+ bool _execute();
+ bool _draw();
+ BOOL _createHeap();
+ s32 _create();
+ bool _delete();
+
public:
- /* 0x290 */ int mState;
- /* 0x294 */ u8 mbHasModel;
- /* 0x295 */ u8 mSclsNum;
- /* 0x296 */ s16 mScale;
- /* 0x298 */ u8 m298[0x2A0 - 0x298];
- /* 0x2A0 */ J3DModel* mpModel;
- /* 0x2A4 */ dBgS_LinChk mLinChk;
- /* 0x310 */ u8 m310[0x338 - 0x310];
- /* 0x338 */ int m338;
- /* 0x33C */ u8 m33C[0x800 - 0x33C];
+ /* 0x0290 */ s32 mMode;
+ /* 0x0294 */ u8 mHasModel;
+ /* 0x0295 */ u8 mExitIdx;
+ /* 0x0296 */ u16 mScaleLocal;
+ /* 0x0298 */ request_of_phase_process_class mPhs;
+ /* 0x02A0 */ J3DModel* mpMdl;
+ /* 0x02A4 */ dBgS_ObjLinChk mLinChk;
+ /* 0x0310 */ dBgS_ObjAcch mAcch;
+ /* 0x04D4 */ dBgS_AcchCir mAcchCir;
+};
+
+class daObj_Hole_HIO_c {
+public:
+ daObj_Hole_HIO_c();
+ virtual ~daObj_Hole_HIO_c() {}
+
+ /* 0x04 */ s8 m04;
+ /* 0x05 */ u8 m05;
+ /* 0x08 */ f32 m08;
+ /* 0x0C */ s16 m0C;
+ /* 0x10 */ f32 m10;
};
#endif /* D_A_OBJ_HOLE_H */