|
1 | 1 | #ifndef D_A_E_TK2_H |
2 | 2 | #define D_A_E_TK2_H |
3 | | -#include "f_op/f_op_actor_mng.h" |
| 3 | + |
| 4 | +#include "d/d_bg_s_acch.h" |
| 5 | +#include "d/d_cc_d.h" |
| 6 | +#include "d/d_cc_uty.h" |
| 7 | +#include "f_op/f_op_actor.h" |
4 | 8 |
|
5 | 9 | /** |
6 | 10 | * @ingroup actors-enemies |
7 | 11 | * @class e_tk2_class |
8 | 12 | * @brief Fire Toadpoli |
9 | | - * |
10 | | - * @details |
11 | | - * |
| 13 | + * |
| 14 | + * @details Fire Toadpoli in the Goron Mines Entrance. |
| 15 | + * Armored, two-legged frogs that spit Fireballs at Link. |
| 16 | + * They cannot swim, but will dive under the lava if Link |
| 17 | + * gets too close. They share most of the code with the |
| 18 | + * Water Toadpoli e_tk. |
12 | 19 | */ |
| 20 | + |
13 | 21 | class e_tk2_class : public fopEn_enemy_c { |
14 | | -private: |
15 | | - /* 0x5ac */ u8 field_0x5ac[0xa50 - 0x5ac]; |
| 22 | +public: |
| 23 | + /* 0x5AC */ request_of_phase_process_class mPhaseReq; |
| 24 | + /* 0x5B4 */ u8 mArg0; |
| 25 | + /* 0x5B5 */ u8 mArg1; |
| 26 | + /* 0x5B6 */ u8 mArg2; |
| 27 | + /* 0x5B7 */ u8 mArg3; /* Unused */ |
| 28 | + /* 0x5B8 */ mDoExt_McaMorfSO* mpMorf; |
| 29 | + /* 0x5BC */ int mAnim; |
| 30 | + /* 0x5C0 */ Z2CreatureEnemy mSound; |
| 31 | + /* 0x664 */ f32 mAnimSpeed; |
| 32 | + /* 0x668 */ s16 mLifetime; |
| 33 | + /* 0x66A */ s16 mAction; |
| 34 | + /* 0x66C */ s16 mMode; |
| 35 | + /* 0x670 */ cXyz mPos; |
| 36 | + /* 0x67C */ s16 mSomeAngle; |
| 37 | + /* 0x67E */ u8 field18_0x67e[2]; |
| 38 | + /* 0x680 */ s16 mPlayerAngleY; |
| 39 | + /* 0x684 */ f32 mPlayerDistanceLimit; |
| 40 | + /* 0x688 */ u8 field24_0x688[2]; |
| 41 | + /* 0x68A */ s16 mActionTimer[3]; |
| 42 | + /* 0x690 */ s16 mExecuteState; |
| 43 | + /* 0x692 */ s16 mInvincibilityTimer; |
| 44 | + /* 0x694 */ s8 mAttentionOFF; |
| 45 | + /* 0x695 */ s8 mTKBallSpawned; |
| 46 | + /* 0x698 */ fpc_ProcID mBallID; |
| 47 | + /* 0x69C */ dBgS_AcchCir mAcchCir; |
| 48 | + /* 0x6DC */ dBgS_ObjAcch mAcch; |
| 49 | + /* 0x8B4 */ dCcD_Stts mStts; |
| 50 | + /* 0x8F0 */ dCcD_Sph mSph; |
| 51 | + /* 0xA28 */ dCcU_AtInfo mAtInfo; |
| 52 | + /* 0xA4C */ bool mInitHIO; |
16 | 53 | }; |
17 | 54 |
|
18 | | -STATIC_ASSERT(sizeof(e_tk2_class) == 0xa50); |
| 55 | +STATIC_ASSERT(sizeof(e_tk2_class) == 0xA50); |
19 | 56 |
|
20 | 57 | class daE_TK2_HIO_c { |
| 58 | +public: |
21 | 59 | /* 807BA56C */ daE_TK2_HIO_c(); |
22 | | - /* 807BBD00 */ ~daE_TK2_HIO_c(); |
| 60 | + /* 807BBD00 */ virtual ~daE_TK2_HIO_c() {}; |
| 61 | + |
| 62 | + /* 0x04 */ s8 field_0x04; |
| 63 | + /* 0x08 */ f32 mRadiusScale; |
| 64 | + /* 0x0C */ f32 mPlayerRange1; |
| 65 | + /* 0x10 */ f32 mPlayerRange2; |
| 66 | + /* 0x14 */ f32 mSpeedModifier1; /* Unused */ |
| 67 | + /* 0x18 */ f32 mSpeedModifier2; /* Unused */ |
23 | 68 | }; |
24 | 69 |
|
| 70 | +STATIC_ASSERT(sizeof(daE_TK2_HIO_c) == 0x1C); |
25 | 71 |
|
26 | 72 | #endif /* D_A_E_TK2_H */ |
0 commit comments