|
1 | 1 | #ifndef D_A_E_YR_H |
2 | 2 | #define D_A_E_YR_H |
| 3 | +#include "d/d_bg_s_acch.h" |
| 4 | +#include "d/d_cc_d.h" |
| 5 | +#include "d/d_cc_uty.h" |
| 6 | +#include "d/d_spline_path.h" |
3 | 7 | #include "f_op/f_op_actor_mng.h" |
4 | 8 |
|
5 | 9 | /** |
|
10 | 14 | * @details |
11 | 15 | * |
12 | 16 | */ |
13 | | -class e_yr_class : public fopEn_enemy_c { |
| 17 | +class e_yr_class { |
| 18 | +public: |
14 | 19 | /* 80827D64 */ e_yr_class(); |
15 | | -private: |
16 | | - /* 0x5ac */ u8 field_0x5ac[0xf20 - 0x5ac]; |
| 20 | + |
| 21 | + /* 0x0 */ fopEn_enemy_c mEnemy; |
| 22 | + /* 0x5AC */ request_of_phase_process_class mPhaseReq; |
| 23 | + /* 0x5B4 */ mDoExt_McaMorfSO* mpMorfSO; |
| 24 | + /* 0x5B8 */ s32 field_0x5b8; |
| 25 | + /* 0x5BC */ u32 mShadowKey; |
| 26 | + /* 0x5C0 */ Z2CreatureEnemy mSound; |
| 27 | + /* 0x664 */ u8 field_0x664; |
| 28 | + /* 0x665 */ u8 field_0x665; |
| 29 | + /* 0x666 */ u8 field_0x666; |
| 30 | + /* 0x667 */ u8 field_0x667; |
| 31 | + /* 0x668 */ u8 field_0x668; |
| 32 | + /* 0x669 */ u8 field_0x669; |
| 33 | + /* 0x66A */ u8 field_0x66a[0x66b - 0x66a]; |
| 34 | + /* 0x66B */ u8 field_0x66b; |
| 35 | + /* 0x66C */ u8 field_0x66c; |
| 36 | + /* 0x670 */ fopAc_ac_c* field_0x670; |
| 37 | + /* 0x674 */ s32 field_0x674; |
| 38 | + /* 0x678 */ u8 field_0x678[0x67c - 0x678]; |
| 39 | + /* 0x67C */ s8 field_0x67c; |
| 40 | + /* 0x67D */ s8 field_0x67d; |
| 41 | + /* 0x67E */ u8 field_0x67e; |
| 42 | + /* 0x680 */ cXyz field_0x680; |
| 43 | + /* 0x68C */ f32 field_0x68c; |
| 44 | + /* 0x690 */ f32 field_0x690; |
| 45 | + /* 0x694 */ f32 field_0x694; |
| 46 | + /* 0x698 */ f32 field_0x698; |
| 47 | + /* 0x69C */ f32 field_0x69c; |
| 48 | + /* 0x6A0 */ u8 field_0x6a0[0x6a4 - 0x6a0]; |
| 49 | + /* 0x6A4 */ s16 field_0x6a4[6]; |
| 50 | + /* 0x6B0 */ s16 field_0x6b0; |
| 51 | + /* 0x6B2 */ s16 field_0x6b2; |
| 52 | + /* 0x6B4 */ f32 field_0x6b4; |
| 53 | + /* 0x6B8 */ u8 field_0x6b8[0x6bc - 0x6b8]; |
| 54 | + /* 0x6BC */ f32 field_0x6bc; |
| 55 | + /* 0x6C0 */ f32 field_0x6c0; |
| 56 | + /* 0x6C4 */ s16 field_0x6c4; |
| 57 | + /* 0x6C6 */ u8 field_0x6c6[0x6c8 - 0x6c6]; |
| 58 | + /* 0x6C8 */ s16 mYawToPlayer; |
| 59 | + /* 0x6CA */ s16 mPitchToPlayer; |
| 60 | + /* 0x6CC */ f32 mPlayerLatDist; |
| 61 | + /* 0x6D0 */ s16 field_0x6d0; |
| 62 | + /* 0x6D2 */ s16 field_0x6d2; |
| 63 | + /* 0x6D4 */ s16 field_0x6d4; |
| 64 | + /* 0x6D8 */ f32 field_0x6d8; |
| 65 | + /* 0x6D4 */ s16 field_0x6dc; |
| 66 | + /* 0x6DE */ s16 field_0x6de; |
| 67 | + /* 0x6E0 */ s16 field_0x6e0; |
| 68 | + /* 0x6E2 */ u8 field_0x6e2[0x6e9 - 0x6e2]; |
| 69 | + /* 0x6E9 */ s8 field_0x6e9; |
| 70 | + /* 0x6EA */ s8 field_0x6ea; |
| 71 | + /* 0x6EB */ s8 field_0x6eb; |
| 72 | + /* 0x6EC */ dPath* field_0x6ec; |
| 73 | + /* 0x6F0 */ u8 field_0x6f0; |
| 74 | + /* 0x6F2 */ csXyz field_0x6f2; |
| 75 | + /* 0x6F8 */ csXyz field_0x6f8; |
| 76 | + /* 0x700 */ cXyz field_0x700; |
| 77 | + /* 0x70C */ dBgS_AcchCir mAcchCir; |
| 78 | + /* 0x74C */ dBgS_ObjAcch mAcch; |
| 79 | + /* 0x924 */ u8 field_0x924; |
| 80 | +#ifndef DEBUG |
| 81 | + /* 0x928 */ f32 field_0x928; |
| 82 | +#endif |
| 83 | + /* 0x92C */ dCcD_Stts mStts; |
| 84 | + /* 0x968 */ dCcD_Sph mSph1; |
| 85 | + /* 0xAA0 */ dCcD_Sph mSph2; |
| 86 | + /* 0xBD8 */ dCcD_Sph mSph3; |
| 87 | + /* 0xD10 */ dCcD_Sph mSph4; |
| 88 | + /* 0xE48 */ dCcU_AtInfo mAtInfo; |
| 89 | + /* 0xE6C */ cXyz field_0xe6c[2]; |
| 90 | + /* 0xE84 */ s16 field_0xe84; |
| 91 | + /* 0xE86 */ s16 field_0xe86; |
| 92 | + /* 0xE88 */ s16 field_0xe88; |
| 93 | + /* 0xE8A */ s16 field_0xe8a; |
| 94 | + /* 0xE8C */ s16 field_0xe8c; |
| 95 | + /* 0xE90 */ JAISoundID field_0xe90; |
| 96 | + /* 0xE94 */ u8 field_0xe94; |
| 97 | + /* 0xE96 */ s16 field_0xe96[9]; |
| 98 | + /* 0xEA8 */ s16 field_0xea8; |
| 99 | + /* 0xEAA */ s16 field_0xeaa; |
| 100 | + /* 0xEAC */ u8 field_0xeac[0xeb0 - 0xeac]; |
| 101 | + /* 0xEB0 */ f32 field_0xeb0; |
| 102 | + /* 0xEB4 */ s16 field_0xeb4; |
| 103 | + /* 0xEB6 */ s16 field_0xeb6; |
| 104 | + /* 0xEB8 */ s16 field_0xeb8; |
| 105 | + /* 0xEBA */ s16 field_0xeba; |
| 106 | + /* 0xEBC */ s16 field_0xebc; |
| 107 | + /* 0xEBE */ s16 field_0xebe; |
| 108 | + /* 0xEC0 */ f32 field_0xec0; |
| 109 | + /* 0xEC4 */ s16 field_0xec4; |
| 110 | + /* 0xEC6 */ s16 field_0xec6; |
| 111 | + /* 0xEC8 */ u8 field_0xec8; |
| 112 | + /* 0xEC9 */ u8 field_0xec9[0xef4 - 0xec9]; |
| 113 | + /* 0xEF4 */ s32 mEmitterIds[7]; |
| 114 | + /* 0xF08 */ u8 field_0xf10[0xf1c - 0xf10]; |
| 115 | + /* 0xF1C */ s8 field_0xf1c; |
17 | 116 | }; |
18 | 117 |
|
19 | 118 | STATIC_ASSERT(sizeof(e_yr_class) == 0xf20); |
20 | 119 |
|
21 | | -class e_yrHIO_c { |
22 | | - /* 808282CC */ ~e_yrHIO_c(); |
| 120 | +class e_yrHIO_c : public fOpAcm_HIO_entry_c { |
| 121 | +public: |
| 122 | + e_yrHIO_c() { |
| 123 | + mInvulnerable = 0; |
| 124 | + mStationary = 0; |
| 125 | + field_0x8 = 20.0f; |
| 126 | + field_0xc = 2500.0f; |
| 127 | + mModelScale = 1.0f; |
| 128 | + mAttackAMinTime = 2000; |
| 129 | + mAttackAMaxTime = 2500; |
| 130 | + mAttackBMinTime = 2000; |
| 131 | + mAttackBMaxTime = 2500; |
| 132 | + mAttackMoveSpeed = 0.35f; |
| 133 | + mAttackFrequency = 0.5f; |
| 134 | + mFlyPlaybackSpeed = 1.0f; |
| 135 | + mHoveringPlaybackSpeed = 1.0f; |
| 136 | + mAttackPlaybackSpeed = 1.0f; |
| 137 | + field_0x38 = 1.0f; |
| 138 | + mChancePlaybackSpeed = 1.0f; |
| 139 | + field_0x40 = 30; |
| 140 | + field_0x44 = 1.0f; |
| 141 | + field_0x48 = 1.0f; |
| 142 | + field_0x4c = 1.5f; |
| 143 | + mBrakeStartDist = 1100; |
| 144 | + field_0x54 = 3.5f; |
| 145 | + mChanceTime = 60; |
| 146 | + mLargeDamage = 60.0f; |
| 147 | + mSmallDamage = 40.0f; |
| 148 | + mHitOccurrenceFrame = 1; |
| 149 | + mDetectDistSky = 8000.0f; |
| 150 | + mDetectHeightSky = 3000.0f; |
| 151 | + mDetectAngleSky = 20000; |
| 152 | + mDetectDistGround = 1500.0f; |
| 153 | + mDetectHeightGround = 2000.0f; |
| 154 | + mDetectAngleGround = 20000; |
| 155 | + } |
| 156 | + |
| 157 | + /* 808282CC */ virtual ~e_yrHIO_c() {} |
| 158 | + |
| 159 | +#if DEBUG |
| 160 | + void genMessage(JORMContext*); |
| 161 | +#endif |
| 162 | + |
| 163 | + /* 0x04 */ u8 mInvulnerable; |
| 164 | + /* 0x05 */ u8 mStationary; |
| 165 | + /* 0x06 */ u8 mSuddenAttack; |
| 166 | + /* 0x08 */ f32 field_0x8; |
| 167 | + /* 0x0C */ f32 field_0xc; |
| 168 | + /* 0x10 */ f32 mTurningRadius; |
| 169 | + /* 0x14 */ f32 mModelScale; |
| 170 | + /* 0x18 */ s16 mAttackAMinTime; |
| 171 | + /* 0x1A */ s16 mAttackAMaxTime; |
| 172 | + /* 0x1C */ s16 mAttackBMinTime; |
| 173 | + /* 0x1E */ s16 mAttackBMaxTime; |
| 174 | + /* 0x20 */ f32 mAttackMoveSpeed; |
| 175 | + /* 0x24 */ f32 mAttackFrequency; |
| 176 | + /* 0x28 */ f32 mFlyPlaybackSpeed; |
| 177 | + /* 0x2C */ f32 mHoveringPlaybackSpeed; |
| 178 | + /* 0x30 */ f32 mAttackPlaybackSpeed; |
| 179 | + /* 0x34 */ s16 mChanceTime; |
| 180 | + /* 0x38 */ f32 field_0x38; |
| 181 | + /* 0x3C */ f32 mChancePlaybackSpeed; |
| 182 | + /* 0x40 */ s16 field_0x40; |
| 183 | + /* 0x44 */ f32 field_0x44; |
| 184 | + /* 0x48 */ f32 field_0x48; |
| 185 | + /* 0x4C */ f32 field_0x4c; |
| 186 | + /* 0x50 */ s16 mBrakeStartDist; |
| 187 | + /* 0x54 */ f32 field_0x54; |
| 188 | + /* 0x58 */ f32 mLargeDamage; |
| 189 | + /* 0x5C */ f32 mSmallDamage; |
| 190 | + /* 0x60 */ s16 mHitOccurrenceFrame; |
| 191 | + /* 0x64 */ f32 mDetectDistSky; |
| 192 | + /* 0x68 */ f32 mDetectDistGround; |
| 193 | + /* 0x6C */ s16 mDetectAngleSky; |
| 194 | + /* 0x6E */ s16 mDetectAngleGround; |
| 195 | + /* 0x70 */ f32 mDetectHeightSky; |
| 196 | + /* 0x74 */ f32 mDetectHeightGround; |
23 | 197 | }; |
24 | 198 |
|
25 | 199 |
|
|
0 commit comments