|
12 | 12 | * |
13 | 13 | */ |
14 | 14 |
|
| 15 | +class daNpc_Jagar_Param_c { |
| 16 | + public: |
| 17 | + /* 80A1A2C4 */ virtual ~daNpc_Jagar_Param_c() {} |
| 18 | + |
| 19 | + struct Data { |
| 20 | + /* 0x00 */ f32 field_0x00; // 170.0f |
| 21 | + /* 0x04 */ f32 field_0x04; // -3.0f |
| 22 | + /* 0x08 */ f32 field_0x08; // 1.0f |
| 23 | + /* 0x0C */ f32 field_0x0c; // 400.0f |
| 24 | + /* 0x10 */ f32 field_0x10; // 255.0f |
| 25 | + /* 0x14 */ f32 field_0x14; // 160.0f |
| 26 | + /* 0x18 */ f32 field_0x18; // 35.0f |
| 27 | + /* 0x1C */ f32 field_0x1c; // 30.0f |
| 28 | + /* 0x20 */ f32 field_0x20; // 0.0f |
| 29 | + /* 0x24 */ f32 field_0x24; // 0.0f |
| 30 | + /* 0x28 */ f32 field_0x28; // 10.0f |
| 31 | + /* 0x2C */ f32 field_0x2c; // -10.0f |
| 32 | + /* 0x30 */ f32 field_0x30; // 30.0f |
| 33 | + /* 0x34 */ f32 field_0x34; // -10.0f |
| 34 | + /* 0x38 */ f32 field_0x38; // 45.0f |
| 35 | + /* 0x3C */ f32 field_0x3c; // -45.0f |
| 36 | + /* 0x40 */ f32 field_0x40; // 0.6f |
| 37 | + /* 0x44 */ f32 field_0x44; // 12.0f |
| 38 | + /* 0x48 */ s16 field_0x48; |
| 39 | + /* 0x4A */ s16 field_0x4a; |
| 40 | + /* 0x4C */ s16 field_0x4c; |
| 41 | + /* 0x4E */ s16 field_0x4e; |
| 42 | + /* 0x50 */ f32 field_0x50; // 110.0f |
| 43 | + /* 0x54 */ f32 field_0x54; // 500.0f |
| 44 | + /* 0x58 */ f32 field_0x58; // 300.0f |
| 45 | + /* 0x5C */ f32 field_0x5c; // -300.0f |
| 46 | + /* 0x60 */ s16 field_0x60; // 60 |
| 47 | + /* 0x62 */ s16 field_0x62; // 8 |
| 48 | + /* 0x64 */ f32 field_0x64; // 0.0f |
| 49 | + /* 0x68 */ f32 field_0x68; // 0.0f |
| 50 | + /* 0x6C */ f32 field_0x6c; // 4.0f |
| 51 | + /* 0x70 */ f32 field_0x70; // 0.0f |
| 52 | + /* 0x74 */ f32 field_0x74; // 0.0f |
| 53 | + /* 0x78 */ f32 field_0x78; // 0.0f |
| 54 | + /* 0x7C */ f32 field_0x7c; // 0.0f |
| 55 | + /* 0x80 */ f32 field_0x80; // 0.0f |
| 56 | + /* 0x84 */ f32 field_0x84; // 0.0f |
| 57 | + /* 0x88 */ f32 field_0x88; // 0.0f |
| 58 | + /* 0x8C */ f32 field_0x8c; // 1400.0f |
| 59 | + /* 0x90 */ f32 field_0x90; // 200.0f |
| 60 | + /* 0x94 */ f32 field_0x94; // -800.0f |
| 61 | + /* 0x98 */ f32 field_0x98; // 16.0f |
| 62 | + /* 0x9C */ f32 field_0x9c; // 1800.0f |
| 63 | + }; |
| 64 | + |
| 65 | + static const Data m; |
| 66 | + }; |
| 67 | + |
15 | 68 | class daNpc_Jagar_c : public daNpcT_c { |
16 | 69 | public: |
17 | 70 | typedef int (daNpc_Jagar_c::*cutFunc)(int); |
@@ -87,6 +140,32 @@ class daNpc_Jagar_c : public daNpcT_c { |
87 | 140 | return nodeNo; |
88 | 141 | } |
89 | 142 |
|
| 143 | + BOOL chkFindWolf() { |
| 144 | + int uVar3 = (int)daNpcT_getDistTableIdx(field_0xff0, field_0xff4); |
| 145 | + return daNpcT_c::chkFindWolf(mCurAngle.y, uVar3, field_0xfec, daNpc_Jagar_Param_c::m.field_0x54, |
| 146 | + daNpc_Jagar_Param_c::m.field_0x50, daNpc_Jagar_Param_c::m.field_0x58, |
| 147 | + daNpc_Jagar_Param_c::m.field_0x5c, 1); |
| 148 | + } |
| 149 | + |
| 150 | + int chkCondition(int i_val) { |
| 151 | + if (mStagger.checkStagger()) { |
| 152 | + return false; |
| 153 | + } else if (i_val != 0) { |
| 154 | + return true; |
| 155 | + } else { |
| 156 | + if (mMotionSeqMngr.getNo() == 7 || |
| 157 | + mMotionSeqMngr.getNo() == 6 || |
| 158 | + mMotionSeqMngr.getNo() == 8) { |
| 159 | + if (mMotionSeqMngr.getStepNo() > 0) { |
| 160 | + return true; |
| 161 | + } |
| 162 | + } else if (mMotionSeqMngr.getNo() == 5) { |
| 163 | + return true; |
| 164 | + } |
| 165 | + } |
| 166 | + return false; |
| 167 | + } |
| 168 | + |
90 | 169 | u8 getPathID() { return (fopAcM_GetParam(this) & 0xff00) >> 8; } |
91 | 170 |
|
92 | 171 | static char* mCutNameList[7]; |
@@ -115,57 +194,4 @@ class daNpc_Jagar_c : public daNpcT_c { |
115 | 194 |
|
116 | 195 | STATIC_ASSERT(sizeof(daNpc_Jagar_c) == 0x100c); |
117 | 196 |
|
118 | | -class daNpc_Jagar_Param_c { |
119 | | -public: |
120 | | - /* 80A1A2C4 */ virtual ~daNpc_Jagar_Param_c() {} |
121 | | - |
122 | | - struct Data { |
123 | | - /* 0x00 */ f32 field_0x00; // 170.0f |
124 | | - /* 0x04 */ f32 field_0x04; // -3.0f |
125 | | - /* 0x08 */ f32 field_0x08; // 1.0f |
126 | | - /* 0x0C */ f32 field_0x0c; // 400.0f |
127 | | - /* 0x10 */ f32 field_0x10; // 255.0f |
128 | | - /* 0x14 */ f32 field_0x14; // 160.0f |
129 | | - /* 0x18 */ f32 field_0x18; // 35.0f |
130 | | - /* 0x1C */ f32 field_0x1c; // 30.0f |
131 | | - /* 0x20 */ f32 field_0x20; // 0.0f |
132 | | - /* 0x24 */ f32 field_0x24; // 0.0f |
133 | | - /* 0x28 */ f32 field_0x28; // 10.0f |
134 | | - /* 0x2C */ f32 field_0x2c; // -10.0f |
135 | | - /* 0x30 */ f32 field_0x30; // 30.0f |
136 | | - /* 0x34 */ f32 field_0x34; // -10.0f |
137 | | - /* 0x38 */ f32 field_0x38; // 45.0f |
138 | | - /* 0x3C */ f32 field_0x3c; // -45.0f |
139 | | - /* 0x40 */ f32 field_0x40; // 0.6f |
140 | | - /* 0x44 */ f32 field_0x44; // 12.0f |
141 | | - /* 0x48 */ s16 field_0x48; |
142 | | - /* 0x4A */ s16 field_0x4a; |
143 | | - /* 0x4C */ s16 field_0x4c; |
144 | | - /* 0x4E */ s16 field_0x4e; |
145 | | - /* 0x50 */ f32 field_0x50; // 110.0f |
146 | | - /* 0x54 */ f32 field_0x54; // 500.0f |
147 | | - /* 0x58 */ f32 field_0x58; // 300.0f |
148 | | - /* 0x5C */ f32 field_0x5c; // -300.0f |
149 | | - /* 0x60 */ s16 field_0x60; // 60 |
150 | | - /* 0x62 */ s16 field_0x62; // 8 |
151 | | - /* 0x64 */ f32 field_0x64; // 0.0f |
152 | | - /* 0x68 */ f32 field_0x68; // 0.0f |
153 | | - /* 0x6C */ f32 field_0x6c; // 4.0f |
154 | | - /* 0x70 */ f32 field_0x70; // 0.0f |
155 | | - /* 0x74 */ f32 field_0x74; // 0.0f |
156 | | - /* 0x78 */ f32 field_0x78; // 0.0f |
157 | | - /* 0x7C */ f32 field_0x7c; // 0.0f |
158 | | - /* 0x80 */ f32 field_0x80; // 0.0f |
159 | | - /* 0x84 */ f32 field_0x84; // 0.0f |
160 | | - /* 0x88 */ f32 field_0x88; // 0.0f |
161 | | - /* 0x8C */ f32 field_0x8c; // 1400.0f |
162 | | - /* 0x90 */ f32 field_0x90; // 200.0f |
163 | | - /* 0x94 */ f32 field_0x94; // -800.0f |
164 | | - /* 0x98 */ f32 field_0x98; // 16.0f |
165 | | - /* 0x9C */ f32 field_0x9c; // 1800.0f |
166 | | - }; |
167 | | - |
168 | | - static const Data m; |
169 | | -}; |
170 | | - |
171 | 197 | #endif /* D_A_NPC_JAGAR_H */ |
0 commit comments