diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/d/actor/d_a_obj_nan.h | 51 | ||||
| -rw-r--r-- | include/d/d_cc_uty.h | 5 | ||||
| -rw-r--r-- | include/d/d_insect.h | 1 |
3 files changed, 47 insertions, 10 deletions
diff --git a/include/d/actor/d_a_obj_nan.h b/include/d/actor/d_a_obj_nan.h index 0095b95b28..aa7b2cb475 100644 --- a/include/d/actor/d_a_obj_nan.h +++ b/include/d/actor/d_a_obj_nan.h @@ -1,7 +1,12 @@ #ifndef D_A_OBJ_NAN_H #define D_A_OBJ_NAN_H +#include "SSystem/SComponent/c_phase.h" #include "d/d_insect.h" +#include "d/actor/d_a_player.h" +#include "d/d_cc_d.h" + +class daPy_boomerangMove_c; /** * @ingroup actors-objects @@ -13,10 +18,12 @@ */ class daObjNAN_c : public dInsect_c { public: - /* 80CA05D4 */ void setAction(void (daObjNAN_c::*)()); + typedef void (daObjNAN_c::*actionFunc)(); + + /* 80CA05D4 */ void setAction(actionFunc); /* 80CA0978 */ void nan_posMove(); /* 80CA0A2C */ void turn(); - /* 80CA0D9C */ void nan_WalkAnm(); + /* 80CA0D9C */ u8 nan_WalkAnm(); /* 80CA0E7C */ void wait(); /* 80CA1184 */ void walk(); /* 80CA1904 */ void bin_wait(); @@ -27,13 +34,39 @@ public: /* 80CA2368 */ void drop(); /* 80CA2658 */ void hit_check(); /* 80CA270C */ void action(); - /* 80CA276C */ void execute(); - /* 80CA2904 */ void _delete(); + /* 80CA276C */ int execute(); + /* 80CA2904 */ int _delete(); /* 80CA296C */ void setBaseMtx(); - /* 80CA2B68 */ void create(); + /* 80CA2B68 */ int create(); + + inline int CreateHeap(); + inline int draw(); private: - /* 0x590 */ u8 field_0x568[0x800 - 0x590]; + /* 0x590 */ request_of_phase_process_class mPhase; + /* 0x598 */ Z2Creature mCreatureSound; + /* 0x628 */ mDoExt_McaMorfSO* mMorf; + /* 0x62C */ mDoExt_brkAnm* mBrk; + /* 0x630 */ mDoExt_btkAnm* mBtk; + /* 0x634 */ dCcD_Stts mStts; + /* 0x670 */ dCcD_Sph mSph; + /* 0x7A8 */ daPy_boomerangMove_c mBoomerangMove; + /* 0x7B4 */ int field_0x7b4; + /* 0x7B8 */ actionFunc mAction; + /* 0x7C4 */ actionFunc mPrevAction; + /* 0x7D0 */ int field_0x7d0; + /* 0x7D4 */ csXyz field_0x7d4; + /* 0x7DA */ csXyz field_0x7da; + /* 0x7E0 */ s16 field_0x7e0; + /* 0x7E2 */ s16 field_0x7e2; + /* 0x7E4 */ s16 field_0x7e4; + /* 0x7E8 */ f32 field_0x7e8; + /* 0x7E6 */ u8 field_0x7e6[0x7f8 - 0x7ec]; + /* 0x7F8 */ u16 field_0x7f8; + /* 0x7FA */ u8 field_0x7fa; + /* 0x7FB */ u8 field_0x7fb; + /* 0x7FC */ u8 field_0x7fc; + /* 0x7FC */ u8 field_0x7fd; }; STATIC_ASSERT(sizeof(daObjNAN_c) == 0x800); @@ -41,7 +74,11 @@ STATIC_ASSERT(sizeof(daObjNAN_c) == 0x800); class daObj_NanHIO_c { public: /* 80CA05AC */ daObj_NanHIO_c(); - /* 80CA30D0 */ ~daObj_NanHIO_c(); + /* 80CA30D0 */ virtual ~daObj_NanHIO_c() {} + + /* 0x04 */ s8 field_0x4; + /* 0x08 */ f32 field_0x8; + /* 0x0C */ f32 field_0xc; }; diff --git a/include/d/d_cc_uty.h b/include/d/d_cc_uty.h index 7975eca942..9e080aa47c 100644 --- a/include/d/d_cc_uty.h +++ b/include/d/d_cc_uty.h @@ -1,6 +1,7 @@ #ifndef D_CC_D_CC_UTY_H #define D_CC_D_CC_UTY_H +#include "SSystem/SComponent/c_sxyz.h" #include "dolphin/types.h" class cCcD_Obj; @@ -20,9 +21,7 @@ struct dCcU_AtInfo { /* 0x00 */ cCcD_Obj* mpCollider; /* 0x04 */ fopAc_ac_c* mpActor; /* 0x08 */ Z2Creature* mpSound; - /* 0x0C */ u8 field_0xc[2]; - /* 0x0E */ s16 mHitDirection; - /* 0x10 */ u8 field_0x10[4]; + /* 0x0C */ csXyz mHitDirection; /* 0x14 */ u32 mHitBit; /* 0x18 */ u32 field_0x18; /* 0x1C */ u16 mAttackPower; diff --git a/include/d/d_insect.h b/include/d/d_insect.h index 8d2b109cdb..be52453e8e 100644 --- a/include/d/d_insect.h +++ b/include/d/d_insect.h @@ -25,6 +25,7 @@ public: bool ChkGetDemo() { return m_mode > 0; } void setItemNo(u8 i_itemNo) { m_itemNo = i_itemNo; } void setSaveBitNo(s16 i_saveBitNo) { m_saveBitNo = i_saveBitNo; } + bool CheckZ() { return (u32)field_0x57C > field_0x578; } public: /* 0x56C */ u8 field_0x56C; |
