summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorHyenate <natebouchat@gmail.com>2025-06-28 17:34:18 -0400
committerGitHub <noreply@github.com>2025-06-29 00:34:18 +0300
commit751df9d8f885722c2f20fb19d5c06f74e792236e (patch)
treee5ac37999ec46a60649b898cc85a80fff388e552 /include
parentc88632cffd5d886b1a810b9c5452f695ad9a4d49 (diff)
d_a_obj_mhole Matching (#2503)
* d_a_obj_mhole Matching * Update daObjMHole_HIO_c field names * Update d_a_obj_mhole.cpp Made requested fixes to d_a_obj_mhole.
Diffstat (limited to 'include')
-rw-r--r--include/d/actor/d_a_obj_mhole.h51
1 files changed, 41 insertions, 10 deletions
diff --git a/include/d/actor/d_a_obj_mhole.h b/include/d/actor/d_a_obj_mhole.h
index db1bff3660..44e1aea6f0 100644
--- a/include/d/actor/d_a_obj_mhole.h
+++ b/include/d/actor/d_a_obj_mhole.h
@@ -1,6 +1,7 @@
#ifndef D_A_OBJ_MHOLE_H
#define D_A_OBJ_MHOLE_H
+#include "d/d_cc_d.h"
#include "f_op/f_op_actor_mng.h"
/**
@@ -13,27 +14,57 @@
*/
class daObjMHole_c : public fopAc_ac_c {
public:
+ enum EFF_ID_e {
+ EFF_LARGE_e,
+ EFF_SMALL_e
+ };
+
/* 80C92FD8 */ void initBaseMtx();
/* 80C93014 */ void setBaseMtx();
- /* 80C9307C */ void Create();
- /* 80C93198 */ void checkParent();
- /* 80C93204 */ void CreateHeap();
- /* 80C934E0 */ void create();
- /* 80C936A8 */ void execute();
+ /* 80C9307C */ int Create();
+ /* 80C93198 */ int checkParent();
+ /* 80C93204 */ int CreateHeap();
+ /* 80C934E0 */ int create();
+ /* 80C936A8 */ int execute();
/* 80C93928 */ void effectSet();
/* 80C93A88 */ void effectEnd();
- /* 80C93ADC */ void draw();
- /* 80C93CAC */ void _delete();
+ /* 80C93ADC */ int draw();
+ /* 80C93CAC */ int _delete();
void setOn() { mIsOn = TRUE; }
+ u8 getType() { return fopAcM_GetParamBit(this, 8, 4); }
+ u8 getKind() { return fopAcM_GetParamBit(this, 12, 4); }
+ u8 getSwbit() { return fopAcM_GetParamBit(this, 0, 8); }
private:
- /* 0x568 */ u8 field_0x568[0x700 - 0x568];
- /* 0x700 */ bool mIsOn;
- /* 0x701 */ u8 field_0x701[0x734 - 0x701];
+ /* 0x568 */ request_of_phase_process_class mPhase;
+ /* 0x570 */ J3DModel* mpModel;
+ /* 0x574 */ mDoExt_brkAnm* mpBrkAnm;
+ /* 0x574 */ mDoExt_btkAnm* mpBtk1Anm;
+ /* 0x57C */ mDoExt_btkAnm* mpBtk2Anm;
+ /* 0x580 */ dCcD_Stts mStts;
+ /* 0x5BC */ dCcD_Cps mCps;
+ /* 0x700 */ u8 mIsOn;
+ /* 0x701 */ u8 field_0x701; // Value set to mIsOn, but never used
+ /* 0x702 */ u8 mKind;
+ /* 0x704 */ JPABaseEmitter* mpEmitter[4];
+ /* 0x714 */ Z2SoundObjSimple mSound;
};
STATIC_ASSERT(sizeof(daObjMHole_c) == 0x734);
+class daObjMHole_HIO_c : public mDoHIO_entry_c {
+public:
+ /* 80C55D0C */ daObjMHole_HIO_c();
+ /* 80C56970 */ ~daObjMHole_HIO_c() {}
+
+ void genMessage(JORMContext*);
+
+ /* 0x08 */ cXyz scale;
+ /* 0x14 */ u8 scale_adjust_on;
+ /* 0x15 */ u8 collision_display;
+ /* 0x16 */ u8 angle;
+ /* 0x18 */ csXyz angl;
+};
#endif /* D_A_OBJ_MHOLE_H */