diff options
| author | Trueffel <106771418+Trueffeloot@users.noreply.github.com> | 2025-09-24 18:50:36 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-09-24 19:50:36 +0300 |
| commit | 46b1f0ee712cbc8738bf5907bc2e23841f9ff1ef (patch) | |
| tree | 012b81fa73f2801406355a096e9239579d63390a /include | |
| parent | 169c7ae4a2e892a78babe26b450a2846ea0d8e38 (diff) | |
d_a_e_hz (Tile Worm) OK and linked (#2691)
* all funcs matched
* TU linked and some docs
* apply enums
Diffstat (limited to 'include')
| -rw-r--r-- | include/d/actor/d_a_boomerang.h | 1 | ||||
| -rw-r--r-- | include/d/actor/d_a_e_hz.h | 113 |
2 files changed, 90 insertions, 24 deletions
diff --git a/include/d/actor/d_a_boomerang.h b/include/d/actor/d_a_boomerang.h index 9198ac4702..07af0236f4 100644 --- a/include/d/actor/d_a_boomerang.h +++ b/include/d/actor/d_a_boomerang.h @@ -114,6 +114,7 @@ public: u32 checkStateFlg0(daBoomerang_FLG0 i_flag) const { return m_stateFlg0 & i_flag; } void onStateFlg0(daBoomerang_FLG0 flag) { m_stateFlg0 |= flag; } void offStateFlg0(daBoomerang_FLG0 flag) { m_stateFlg0 &= ~flag; } + u32 getReturnFlg() { return checkStateFlg0(FLG0_1); } void onWindCatch() { onStateFlg0(WIND_CATCH); } bool checkForceDelete() const { return m_forceDelete; } void onForceDelete() { m_forceDelete = true; } diff --git a/include/d/actor/d_a_e_hz.h b/include/d/actor/d_a_e_hz.h index 865302fcd0..9cea59c1f6 100644 --- a/include/d/actor/d_a_e_hz.h +++ b/include/d/actor/d_a_e_hz.h @@ -1,30 +1,38 @@ #ifndef D_A_E_HZ_H #define D_A_E_HZ_H + +#include "d/actor/d_a_boomerang.h" +#include "d/actor/d_a_nbomb.h" +#include "d/actor/d_a_obj_carry.h" +#include "d/d_bg_s_acch.h" +#include "d/d_cc_d.h" +#include "d/d_cc_uty.h" #include "f_op/f_op_actor_mng.h" + /** * @ingroup actors-enemies * @class daE_HZ_c * @brief Tile Worm - * - * @details - * + * + * @details Enemy - Tile Worm + * */ class daE_HZ_c : public fopEn_enemy_c { public: /* 806EA690 */ void setBck(int, u8, f32, f32); - /* 806EA734 */ void checkBck(int); - /* 806EA790 */ void draw(); + /* 806EA734 */ bool checkBck(int); + /* 806EA790 */ int draw(); /* 806EAADC */ void setActionMode(int); - /* 806EAB68 */ void checkHideStart(); - /* 806EAEDC */ void checkAttackStart(); - /* 806EB05C */ void checkArrowCharge(); + /* 806EAB68 */ bool checkHideStart(); + /* 806EAEDC */ bool checkAttackStart(); + /* 806EB05C */ bool checkArrowCharge(); /* 806EB0A4 */ void setTgSetBit(int); /* 806EB0FC */ bool isWait(); /* 806EB13C */ void checkFall(); /* 806EB2E8 */ void setCloseSmokeEffect(); /* 806EB3EC */ void executeWait(); - /* 806EB7B0 */ void getHideSpeed(); + /* 806EB7B0 */ f32 getHideSpeed(); /* 806EB818 */ void executeHide(); /* 806EBD44 */ void executeAttack(); /* 806EC068 */ void initBackWalk(); @@ -33,7 +41,7 @@ public: /* 806ECB64 */ void executeWind(); /* 806ED5B0 */ void executeChance(); /* 806ED6C8 */ void initRollDamage(); - /* 806ED7A8 */ void doRollDamage(); + /* 806ED7A8 */ bool doRollDamage(); /* 806ED8A4 */ void executeDamage(); /* 806EDAA8 */ void executeDeath(); /* 806EDDCC */ void setWindChanceEnd(); @@ -43,27 +51,84 @@ public: /* 806EE3BC */ void executeWaterDeath(); /* 806EE820 */ void executeDeathWait(); /* 806EE978 */ void damage_check(); - /* 806EEE10 */ void checkWaterSurface(); + /* 806EEE10 */ bool checkWaterSurface(); /* 806EEEE4 */ void action(); /* 806EF144 */ void mtx_set(); /* 806EF2C8 */ void cc_set(); - /* 806EF46C */ void execute(); - /* 806EF6B4 */ void _delete(); - /* 806EF770 */ void ctrlJoint(J3DJoint*, J3DModel*); - /* 806EF880 */ void JointCallBack(J3DJoint*, int); - /* 806EF8CC */ void CreateHeap(); + /* 806EF46C */ int execute(); + /* 806EF6B4 */ int _delete(); + /* 806EF770 */ int ctrlJoint(J3DJoint*, J3DModel*); + /* 806EF880 */ static int JointCallBack(J3DJoint*, int); + /* 806EF8CC */ int CreateHeap(); /* 806EFB54 */ void setInitPos(); - /* 806EFC18 */ void create(); + /* 806EFC18 */ int create(); + private: - /* 0x5ac */ u8 field_0x5ac[0x1238 - 0x5ac]; + /* 0x5AC */ request_of_phase_process_class mPhaseReq; + /* 0x5B4 */ request_of_phase_process_class mPhaseReq2; + /* 0x5BC */ mDoExt_McaMorfSO* mpMorfSO; + /* 0x5C0 */ J3DModel* mpModel; + /* 0x5C4 */ J3DModel* mpModel2; + /* 0x5C8 */ Z2CreatureEnemy mSound; + /* 0x66C */ daBoomerang_c* mpBoomerangActor; + /* 0x670 */ daNbomb_c* mpBombActor; + /* 0x674 */ daObjCarry_c* mpCarryActor; + /* 0x678 */ cXyz field_0x678; + /* 0x684 */ cXyz mSmokeEffectPosition; + /* 0x690 */ csXyz field_0x690; + /* 0x696 */ csXyz field_0x696; + /* 0x69C */ csXyz field_0x69c; + /* 0x6A4 */ f32 mPlayerDist; + /* 0x6A8 */ f32 field_0x6a8; + /* 0x6AC */ f32 mGroundCross; + /* 0x6B0 */ s16 mPlayerAngleY; + /* 0x6B2 */ s16 field_0x6b2; + /* 0x6B4 */ s16 field_0x6b4; + /* 0x6B6 */ s16 field_0x6b6; + /* 0x6B8 */ u8 field_0x6B8[0x6BC - 0x6B8]; + /* 0x6BC */ char* mpName; + /* 0x6C0 */ s32 mAction; + /* 0x6C4 */ s32 mPrevAction; + /* 0x6C8 */ s32 mMode; // That's just a guess. Might need a better name for it's usage + /* 0x6CC */ s32 field_0x6cc; + /* 0x6D0 */ u32 mShadowKey; + /* 0x6D4 */ s16 mDamageDeathTimer; + /* 0x6D6 */ s16 mWaitTimer; + /* 0x6D8 */ s16 mPiyoriTimer; + /* 0x6DA */ s16 mAttackStartTimer; + /* 0x6DC */ s16 mRetentionBeforeStretchTimer; + /* 0x6DE */ s16 mAttackCooldownTimer; + /* 0x6E0 */ s16 mCameraOffTimer; + /* 0x6E2 */ s16 mCameraOnTimer; + /* 0x6E4 */ u8 field_0x6e4; + /* 0x6E5 */ u8 mSetModelAnmMtx; + /* 0x6E6 */ u8 field_0x6E6[0x6E7 - 0x6E6]; + /* 0x6E7 */ u8 mDisableShadow; // Shadow is active when this is false + /* 0x6E8 */ u8 field_0x6e8; + /* 0x6E9 */ u8 field_0x6e9; + /* 0x6EA */ u8 field_0x6ea; + /* 0x6EB */ u8 mParam; + /* 0x6EC */ u8 field_0x6EC[0x6ED - 0x6EC]; + /* 0x6ED */ u8 mReadyNewAction; + /* 0x6F0 */ f32 mColor; + /* 0x6F4 */ u8 mReadyChangeColor; + /* 0x6F8 */ dKy_tevstr_c mTevStr; + /* 0xA80 */ u8 field_0xA80[0xA84 - 0xA80]; + /* 0xA84 */ Mtx mMtx; + /* 0xAB4 */ dBgW* mpBgW; + /* 0xAB8 */ dBgS_AcchCir mAcchCir; + /* 0xAF8 */ dBgS_ObjAcch mObjAcch; + /* 0xCD0 */ dCcD_Stts mStts; + /* 0xD0C */ dCcD_Sph mSpheres[4]; + /* 0x11EC */ dCcU_AtInfo mAtInfo; + /* 0x1210 */ u32 mSmokeKey; + /* 0x1214 */ u32 mSmokeKey2; + /* 0x1218 */ u32 mJumpEffects[2]; + /* 0x1220 */ u32 mWaterEffects[4]; + /* 0x1230 */ u32 mEffect; + /* 0x1234 */ u8 mHIOInit; }; STATIC_ASSERT(sizeof(daE_HZ_c) == 0x1238); -class daE_HZ_HIO_c { - /* 806EA60C */ daE_HZ_HIO_c(); - /* 806F0368 */ ~daE_HZ_HIO_c(); -}; - - #endif /* D_A_E_HZ_H */ |
