diff options
| author | Caroline Madsen <69010899+randomsalience@users.noreply.github.com> | 2024-06-02 18:24:43 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-06-02 16:24:43 -0600 |
| commit | 59175a46fdaa673640a29203850ff4558379dab9 (patch) | |
| tree | 29011b764baa4e6fd3d955cc5f6c9fbb412c5e8c /include | |
| parent | fcf137a90218064c0d4218abadf934538ed43671 (diff) | |
d_a_obj_dan OK (#2163)
Diffstat (limited to 'include')
| -rw-r--r-- | include/d/bg/d_bg_s_acch.h | 1 | ||||
| -rw-r--r-- | include/d/d_insect.h | 2 | ||||
| -rw-r--r-- | include/rel/d/a/obj/d_a_obj_dan/d_a_obj_dan.h | 65 |
3 files changed, 58 insertions, 10 deletions
diff --git a/include/d/bg/d_bg_s_acch.h b/include/d/bg/d_bg_s_acch.h index c1df22e415..02b0555962 100644 --- a/include/d/bg/d_bg_s_acch.h +++ b/include/d/bg/d_bg_s_acch.h @@ -142,6 +142,7 @@ public: void ClrGroundFind() { m_flags &= ~GROUND_FIND; } u32 MaskRoofHit() { return m_flags & ROOF_HIT; } bool ChkRoofHit() { return MaskRoofHit(); } + void OffClrSpeedY() { m_flags |= CLR_SPEED_Y; } bool ChkClrSpeedY() { return !(m_flags & CLR_SPEED_Y); } void SetGroundFind() { m_flags |= GROUND_FIND; } void SetGroundHit() { m_flags |= GROUND_HIT; } diff --git a/include/d/d_insect.h b/include/d/d_insect.h index 4c42d342f0..57256b6e96 100644 --- a/include/d/d_insect.h +++ b/include/d/d_insect.h @@ -23,6 +23,8 @@ public: /* 80110648 */ virtual void Insect_Release() { field_0x56C = 1; } bool ChkGetDemo() { return m_mode > 0; } + void setItemNo(u8 i_itemNo) { m_itemNo = i_itemNo; } + void setSaveBitNo(s16 i_saveBitNo) { m_saveBitNo = i_saveBitNo; } protected: /* 0x56C */ u8 field_0x56C; diff --git a/include/rel/d/a/obj/d_a_obj_dan/d_a_obj_dan.h b/include/rel/d/a/obj/d_a_obj_dan/d_a_obj_dan.h index e9f35f2abe..1b62159569 100644 --- a/include/rel/d/a/obj/d_a_obj_dan/d_a_obj_dan.h +++ b/include/rel/d/a/obj/d_a_obj_dan/d_a_obj_dan.h @@ -1,7 +1,11 @@ #ifndef D_A_OBJ_DAN_H #define D_A_OBJ_DAN_H -#include "f_op/f_op_actor_mng.h" +#include "SSystem/SComponent/c_phase.h" +#include "Z2AudioLib/Z2Creature.h" +#include "d/bg/d_bg_s_acch.h" +#include "d/cc/d_cc_d.h" +#include "d/a/d_a_player.h" #include "d/d_insect.h" /** @@ -12,11 +16,11 @@ * @details * */ -class daObjDAN_c : public fopAc_ac_c { +class daObjDAN_c : public dInsect_c { public: /* 80BDA5B4 */ void InitCcSph(); /* 80BDA620 */ void SetCcSph(); - /* 80BDA698 */ void CreateHeap(); + /* 80BDA698 */ int CreateHeap(); /* 80BDAA3C */ void SpeedSet(); /* 80BDAA9C */ void LinkChk(); /* 80BDAB14 */ void MoveAction(); @@ -28,22 +32,63 @@ public: /* 80BDB264 */ void ParticleSet(); /* 80BDB388 */ void ObjHit(); /* 80BDB4E0 */ void BoomChk(); - /* 80BDB62C */ void Execute(); - /* 80BDB928 */ void Delete(); + /* 80BDB62C */ int Execute(); + /* 80BDB928 */ int Delete(); /* 80BDB990 */ void setBaseMtx(); - /* 80BDBB0C */ void CreateChk(); - /* 80BDBCB8 */ void create(); + /* inline */ inline int Draw(); + /* 80BDBB0C */ bool CreateChk(); + /* 80BDBCB8 */ cPhs__Step create(); private: - /* 0x568 */ u8 field_0x568[0xa6c - 0x568]; + /* 0x590 */ dCcD_Stts mCcStts; + /* 0x5CC */ dCcD_Sph mCcSph; + /* 0x704 */ daPy_boomerangMove_c mBoomerangMove; + /* 0x710 */ dBgS_GndChk mGndChk; + /* 0x764 */ f32 mGroundH; + /* 0x768 */ u8 mAction; + /* 0x769 */ u8 mMode; + /* 0x76A */ s16 mTimer[3]; + /* 0x770 */ f32 mTargetSpeed; + /* 0x774 */ u8 field_0x774[4]; + /* 0x778 */ s16 mTargetAngleY; + /* 0x77A */ u8 field_0x77a[0x10]; + /* 0x78A */ s16 field_0x78a; + /* 0x78C */ u8 field_0x78c[4]; + /* 0x790 */ mDoExt_brkAnm* mpBrkAnm; + /* 0x794 */ mDoExt_btkAnm* mpBtkAnm; + /* 0x798 */ f32 mScreenZ; + /* 0x79C */ u32 mBufferZ; + /* 0x7A0 */ f32 field_0x7a0; + /* 0x7A4 */ f32 mParticleScale; + /* 0x7A8 */ u8 mLocation; + /* 0x7A9 */ bool mBoomerangHit; + /* 0x7AC */ int mBounceCount; + /* 0x7B0 */ Z2Creature mCreatureSound; + /* 0x840 */ u8 field_0x840[4]; + /* 0x844 */ mDoExt_McaMorfSO* mpMorf; + /* 0x848 */ dBgS_AcchCir mAcchCir; + /* 0x888 */ dBgS_ObjAcch mAcch; + /* 0xA60 */ request_of_phase_process_class mPhase; + /* 0xA68 */ bool mHIOInit; + + enum Action { + /* 1 */ ACT_MOVE = 1, + /* 2 */ ACT_DAMAGE, + }; }; -STATIC_ASSERT(sizeof(daObjDAN_c) == 0xa6c); +STATIC_ASSERT(sizeof(daObjDAN_c) == 0xa6c); class daObj_DanHIO_c { public: /* 80BDA58C */ daObj_DanHIO_c(); - /* 80BDC2F0 */ ~daObj_DanHIO_c(); + /* 80BDC2F0 */ virtual ~daObj_DanHIO_c() {} + + /* 0x4 */ s8 field_0x4; + /* 0x8 */ f32 mScaleFemale; + /* 0xC */ f32 mScaleMale; }; +STATIC_ASSERT(sizeof(daObj_DanHIO_c) == 0x10); + #endif /* D_A_OBJ_DAN_H */ |
