Loading [MathJax]/extensions/tex2jax.js
Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
d_a_npc.h
Go to the documentation of this file.
1#ifndef D_A_D_A_NPC_H
2#define D_A_D_A_NPC_H
3
8#include "d/d_path.h"
9#include "d/d_msg_flow.h"
10#include "d/d_particle_copoly.h"
11#include "global.h"
12
13struct daNpc_GetParam1 { // name unknown
14 /* 0x0 */ int fileIdx;
15 /* 0x4 */ int arcIdx;
16};
17
18struct daNpc_GetParam2 { // name unknown
19 /* 0x0 */ int fileIdx;
20 /* 0x4 */ int attr;
21 /* 0x8 */ int arcIdx;
22};
23
25private:
27
28public:
29 /* 801456D4 */ void initialize();
30 /* 801456E0 */ void entry(fopAc_ac_c*);
31 /* 801456FC */ void remove();
32 /* 80145708 */ fopAc_ac_c* getActorP();
33
35
36 /* 8014D108 */ virtual ~daNpcT_ActorMngr_c() {}
37};
38
40private:
41 /* 0x0F4 */ mutable f32 field_0xF4;
42 /* 0x0F8 */ mutable f32 field_0xF8;
43 /* 0x0FC */ f32 mNowOffsetX;
44 /* 0x100 */ f32 mNowOffsetY;
45 /* 0x104 */ u8 mEyeMoveFlg;
46 /* 0x105 */ u8 mMorfFrm;
47
48public:
50 /* 80145764 */ void initialize();
51 /* 8014D24C */ virtual ~daNpcT_MatAnm_c() {}
52 /* 80145788 */ virtual void calc(J3DMaterial*) const;
53
54 void setNowOffsetX(f32 i_value) { mNowOffsetX = i_value; }
55 void setNowOffsetY(f32 i_value) { mNowOffsetY = i_value; }
56 void onEyeMoveFlg() { mEyeMoveFlg = 1; }
57 void offEyeMoveFlg() { mEyeMoveFlg = 0; }
58 void setMorfFrm(u8 i_value) { mMorfFrm = i_value; }
59};
60
62public:
64 public:
65 /* 0x0 */ s16 mAnmIdx;
66 /* 0x2 */ s8 mMorf;
67 /* 0x3 */ s8 mLoopCount;
68 }; // Size: 0x4?
69
70 /* 80145898 */ void initialize();
71 /* 801458C0 */ int play(u16, int*, f32*);
72 /* 80145A24 */ s32 checkEndSequence();
73
74 daNpcT_MotionSeqMngr_c(sequenceStepData_c const* param_1,int param_2) :
75 mpSeqData(param_1), mStepNum(param_2) {
76 initialize();
77 }
78
79 bool checkEntryNewMotion() { return mStepNo == 0 && mPrevStepNo == -1; }
80 int getNo() { return mNo; }
81 int getOffset() { return mOffset; }
82 int getStepNo() { return mStepNo; }
83 void setNo(int i_index, f32 i_morf, BOOL i_reset, int i_offset) {
84 if (i_index >= 0) {
85 int newNo = i_index + i_offset;
86 if (i_reset || newNo != mNo) {
87 int offset = mOffset;
88 initialize();
89 mOffset = offset;
90 mNo = newNo;
91 mInitialMorf = i_morf;
92 }
93 }
94 }
95
96private:
97 /* 0x00 */ sequenceStepData_c const* mpSeqData;
98 /* 0x04 */ int mStepNum;
99 /* 0x08 */ int mNo;
100 /* 0x0C */ int mOffset;
101 /* 0x10 */ int mStepNo;
102 /* 0x14 */ int mPrevStepNo;
103 /* 0x18 */ f32 mInitialMorf;
104 /* 0x1C */ bool mEndSequence;
105
106public:
107 /* 8014D0C0 */ virtual ~daNpcT_MotionSeqMngr_c() {}
108};
109
111private:
113 /* 0x008 */ cXyz mPos;
114 /* 0x014 */ cXyz mAttnPos;
115 /* 0x020 */ cXyz* mAttnPosP;
116 /* 0x024 */ cXyz field_0x24;
117 /* 0x030 */ cXyz mJntPos[3];
118 /* 0x054 */ cXyz field_0x54[3];
119 /* 0x078 */ cXyz mMinRad[3];
120 /* 0x09C */ cXyz mMaxRad[3];
121 /* 0x0C0 */ cXyz mRad[3];
122 /* 0x0E4 */ cXyz field_0xe4[3];
123 /* 0x108 */ cXyz mEyePos;
124 /* 0x114 */ cXyz mHeadPos;
125 /* 0x120 */ cXyz field_0x120;
126 /* 0x12C */ csXyz mEyeAngle;
127 /* 0x132 */ csXyz field_0x132;
128 /* 0x138 */ int mMode;
129 /* 0x13C */ int field_0x13c;
130 /* 0x140 */ int mBaseTimer;
131 /* 0x144 */ int mTimer;
132 /* 0x148 */ f32 field_0x148;
133 /* 0x14C */ f32 field_0x14c;
134 /* 0x150 */ csXyz field_0x150;
135 /* 0x156 */ u8 field_0x156;
136 /* 0x157 */ u8 mDirectFlag;
137 /* 0x158 */ u8 field_0x158;
138
139public:
140 /* 80146C98 */ void initialize();
141 /* 80146CD8 */ void setParam(fopAc_ac_c*, J3DModel*, cXyz*, int, int, int, f32, f32, f32, f32,
142 f32, f32, f32, f32, f32, f32, cXyz*);
143 /* 80147858 */ void calc(f32);
144 /* 80147C38 */ void calcJntRad(f32, f32, f32);
145
146 void setEyeAngleX(cXyz param_1, f32 param_2, s16 param_3) {
147 cXyz cStack_50;
148 s16 sVar3 = 0;
149 if (mAttnPosP != NULL) {
150 cStack_50 = *mAttnPosP - param_1;
151 sVar3 = -cM_atan2s(cStack_50.y, cStack_50.absXZ());
152 sVar3 += param_3;
153 }
154 sVar3 += field_0x150.x;
155 mEyeAngle.x = field_0x132.x * (1.0f - 1.0f / param_2) +
156 sVar3 * (1.0f / param_2);
157 }
158
159 void setEyeAngleY(cXyz param_1, s16 param_2, BOOL param_3, f32 param_4, s16 param_5) {
160 cXyz cStack_50;
161 s16 sVar3 = 0;
162 if (mAttnPosP != NULL) {
163 cStack_50 = *mAttnPosP - param_1;
164 sVar3 = cM_atan2s(cStack_50.x, cStack_50.z);
165 sVar3 -= param_2;
166 s16 diff = field_0x150.y - param_2;
167 sVar3 -= diff;
168 sVar3 += param_5;
169 }
170 if (param_3) {
171 sVar3 = -sVar3;
172 }
173 mEyeAngle.y = field_0x132.y * (1.0f - 1.0f / param_4) +
174 sVar3 * (1.0f / param_4);
175 }
176
179
180 f32 getJntRadX(int param_0) {
181 f32 ret = field_0xe4[2].x;
182 if (param_0 == 0) {
183 ret += field_0xe4[0].x * (1.0f - field_0x148);
184 } else if (param_0 == 1) {
185 ret += field_0xe4[0].x * field_0x148;
186 }
187 return ret;
188 }
189
190 f32 getJntRadY(int param_0) {
191 f32 ret = field_0xe4[2].y;
192 if (param_0 == 0) {
193 ret += field_0xe4[0].y * (1.0f - field_0x148);
194 } else if (param_0 == 1) {
195 ret += field_0xe4[0].y * field_0x148;
196 }
197 return ret;
198 }
199
200 s16 getJntRadX2S(int param_0) {
201 return cM_rad2s(getJntRadX(param_0));
202 }
203
204 s16 getJntRadY2S(int param_0) {
205 return cM_rad2s(getJntRadY(param_0));
206 }
207
208 void clrRad() {
209 for (int i = 0; i < 3; i++) {
210 mRad[i].setall(0.0f);
211 }
212 }
213
214 int getTime() {
216 }
217
219 initialize();
220 }
221 /* 8014D150 */ virtual ~daNpcT_JntAnm_c() {}
222
224 int getMode() { return mMode; }
225
226 int setMode(int mode, BOOL param_2) {
227 if (mode >= 0 && (param_2 || mode != mMode)) {
229 mAttnPosP = NULL;
230 field_0x14c = 0.0f;
231 mDirectFlag = 0;
232 mMode = mode;
233 return 1;
234 }
235 return 0;
236 }
237
238 void setDirect(u8 isDirect) {
239 if (isDirect != 0) {
240 mEyeAngle.x = 0;
241 mEyeAngle.y = 0;
242 }
243 mDirectFlag = isDirect;
244 }
245
246 enum LookMode {
247 /* 0 */ LOOK_NONE,
248 /* 1 */ LOOK_PLAYER,
249 /* 2 */ LOOK_ACTOR,
250 /* 3 */ LOOK_POS,
251 /* 4 */ LOOK_CAMERA,
252 /* 5 */ LOOK_MODE_5,
253 /* 6 */ LOOK_MODE_6,
254 /* 7 */ LOOK_MODE_7,
255 /* 8 */ LOOK_MODE_8,
256 };
257
258 void lookNone(u8 isDirect) {
259 setMode(LOOK_NONE, FALSE);
260 setDirect(isDirect);
261 }
262
263 void lookPlayer(u8 isDirect) {
264 setMode(LOOK_PLAYER, FALSE);
265 setDirect(isDirect);
266 }
267
268 void lookCamera(u8 isDirect) {
269 setMode(LOOK_CAMERA, FALSE);
270 setDirect(isDirect);
271 }
272
273 void lookActor(fopAc_ac_c* param_1, f32 param_2, u8 isDirect) {
274 if (setMode(LOOK_ACTOR, mActrMngr.getActorP() != param_1) && fopAcM_IsActor(param_1)) {
275 mActrMngr.entry(param_1);
276 field_0x14c = param_2;
277 }
278 setDirect(isDirect);
279 }
280
281 void lookPos(cXyz* i_pos, u8 i_direct) {
282 BOOL tmp = mAttnPosP != i_pos;
283 if (setMode(LOOK_POS, tmp)) {
284 mAttnPosP = i_pos;
285 }
286 setDirect(i_direct);
287 }
288};
289
291public:
292 /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16);
293 /* 80147E3C */ void calc(BOOL);
294
295 void initialize() {
296 for (int i = 0; i < 2; i++) {
297 field_0x0[i].setall(0);
298 field_0xc[i] = 0.0f;
299 }
300 mStagger = 0;
301 field_0x16 = 0;
302 mRebirth = 0;
303 }
304
305 int checkStagger() { return mStagger != 0; }
306
307 s16 getAngleX(int idx) { return field_0x0[idx].x; }
308 s16 getAngleZ(int idx) { return field_0x0[idx].z; }
309 int checkRebirth() { return mRebirth; }
310
311private:
312 /* 0x00 */ csXyz field_0x0[2];
313 /* 0x0C */ f32 field_0xc[2];
314 /* 0x14 */ s16 mStagger;
315 /* 0x16 */ s16 field_0x16;
316 /* 0x18 */ bool mRebirth;
317};
318
320 /* 0x0 */ const char* eventName;
321 /* 0x4 */ int num;
322};
323
325 /* 0x00 */ int mBckFileIdx;
326 /* 0x04 */ int mBckAttr;
327 /* 0x08 */ int mBckArcIdx;
328 /* 0x0C */ int mBtpFileIdx;
329 /* 0x10 */ int mBtpAttr;
330 /* 0x14 */ int mBtpArcIdx;
331 /* 0x18 */ BOOL field_0x18;
332};
333
335 /* 0x0 */ int field_0x0;
336 /* 0x4 */ int field_0x4;
337};
338
340 /* 0x00 */ int mBckFileIdx;
341 /* 0x04 */ int mBckAttr;
342 /* 0x08 */ int mBckArcIdx;
343 /* 0x0C */ int mBtkFileIdx;
344 /* 0x10 */ int mBtkAttr;
345 /* 0x14 */ int mBtkArcIdx;
346 /* 0x18 */ s16 field_0x18;
347 /* 0x1A */ s16 field_0x1a;
348};
349
351public:
352 /* 0x00 */ f32 field_0x00;
353 /* 0x04 */ f32 field_0x04;
354 /* 0x08 */ f32 field_0x08;
355 /* 0x0C */ f32 field_0x0c;
356 /* 0x10 */ f32 field_0x10;
357
358 /* 8014CBAC */ virtual ~daNpcT_Hermite_c() {}
359
360 // constants might be wrong, regalloc
361 void Set(f32 param_1) {
362 field_0x00 = param_1;
363 f32 sqr = param_1 * param_1;
364 f32 cubed = param_1 * sqr;
365 field_0x04 = 1.0f + (2.0f * cubed - 3.0f * sqr);
366 field_0x08 = -2.0f * cubed + 3.0f * sqr;
367 field_0x0c = param_1 + (cubed - 2.0f * sqr);
368 field_0x10 = cubed - sqr;
369 }
370};
371
373public:
374 /* 0x00 */ dPath* mpRoomPath;
375 /* 0x04 */ cXyz mPosition;
376 /* 0x10 */ f32 field_0x10;
377 /* 0x14 */ f32 field_0x14;
378 /* 0x18 */ f32 field_0x18;
379 /* 0x1C */ u16 mIdx;
380 /* 0x1E */ u16 field_0x1E;
381 /* 0x20 */ u8 mDirection;
382 /* 0x21 */ u8 mIsClosed;
383
384 /* 80145B7C */ void hermite(cXyz&, cXyz&, cXyz&, cXyz&, daNpcT_Hermite_c&, cXyz&);
385 /* 80145C40 */ void initialize();
386 /* 80145C74 */ int setPathInfo(u8, s8, u8);
387 /* 80145D2C */ int setNextPathInfo(s8, u8);
388 /* 80145DA0 */ void reverse();
389 /* 80145DD0 */ int setNextIdx(int);
390 /* 80145E38 */ int getDstPos(cXyz, cXyz*, int);
391 /* 80145FB4 */ int getDstPosH(cXyz, cXyz*, int, int);
392 /* 80146188 */ int chkPassed1(cXyz, int);
393 /* 801464D8 */ int chkPassed2(cXyz, cXyz*, int, int);
395 initialize();
396 }
397 virtual ~daNpcT_Path_c() {}
398
399 inline Vec getPntPos(int i_idx) { return mpRoomPath->m_points[i_idx].m_position; }
400
401 int chkClose() {
402 int roomPath = dPath_ChkClose(mpRoomPath);
403 return roomPath;
404 }
405
406 bool chkReverse() { return mDirection == 1; }
407
409 dPath* path = mpRoomPath;
410 return path->m_num;
411 }
412
413 u16& getIdx() { return mIdx; }
414};
415
416class mDoExt_McaMorfSO;
417
418class daNpcT_c : public fopAc_ac_c {
419public:
422 /* 0x570 */ daNpcT_evtData_c const* mpEvtData;
423 /* 0x574 */ char** mpArcNames;
424 /* 0x578 */ mDoExt_McaMorfSO* mpMorf[2];
425 /* 0x580 */ Z2Creature mSound;
431 /* 0x68C */ dBgS_ObjAcch mAcch;
432 /* 0x864 */ dCcD_Stts mCcStts;
435 /* 0x930 */ cBgS_GndChk mGndChk;
436 /* 0x96C */ daNpcT_MatAnm_c* mpMatAnm[2];
437 /* 0x974 */ dMsgFlow_c mFlow;
440 /* 0xA7C */ u32 mFlowNodeNo;
441 /* 0xA80 */ f32 field_0xa80;
442 /* 0xA84 */ f32 mMorfFrames;
443 /* 0xA88 */ bool mCreating;
444 /* 0xA89 */ bool mTwilight;
446 /* 0xAE0 */ dBgS_LinChk mLinChk;
453 /* 0xD24 */ cXyz mFootLPos;
454 /* 0xD30 */ cXyz mFootRPos;
455 /* 0xD3C */ cXyz mFootLOffset;
456 /* 0xD48 */ cXyz mFootROffset;
459 /* 0xD6C */ cXyz field_0xd6c;
460 /* 0xD78 */ csXyz mCurAngle;
461 /* 0xD7E */ csXyz field_0xd7e;
462 /* 0xD84 */ csXyz field_0xd84;
463 /* 0xD8A */ csXyz field_0xd8a;
464 /* 0xD90 */ fpc_ProcID mItemId;
465 /* 0xD94 */ u32 mShadowKey;
466 /* 0xD98 */ u32 mAnmFlags;
467 /* 0xD9C */ u32 mMsgId;
468 /* 0xDA0 */ u32 mHitodamaPrtclKey[2];
469 /* 0xDA8 */ u32 mPolSound;
470 /* 0xDAC */ int mStaffId;
471 /* 0xDB0 */ int mCutType;
472 /* 0xDB4 */ int field_0xdb4;
473 /* 0xDB8 */ int mDamageTimerStart;
474 /* 0xDBC */ int mDamageTimer;
475 /* 0xDC0 */ int mBtpPauseTimer;
476 /* 0xDC4 */ int mEventTimer;
477 /* 0xDC8 */ s16 mPlayerAngle;
478 /* 0xDCA */ s16 mGroundAngle;
479 /* 0xDCC */ u8 field_0xdcc[2];
480 /* 0xDCE */ s16 mFootLPolyAngle;
481 /* 0xDD0 */ u8 field_0xdd0[2];
482 /* 0xDD2 */ s16 mFootRPolyAngle;
483 /* 0xDD4 */ s16 mStartAngle;
484 /* 0xDD6 */ s16 mTargetAngle;
485 /* 0xDD8 */ s16 mStepMode;
486 /* 0xDDA */ s16 mTurnAmount;
487 /* 0xDDC */ f32 mTurnCount;
488 /* 0xDE0 */ f32 field_0xde0;
489 /* 0xDE4 */ f32 field_0xde4;
490 /* 0xDE8 */ f32 field_0xde8;
491 /* 0xDEC */ f32 mCylH;
492 /* 0xDF0 */ f32 mWallR;
493 /* 0xDF4 */ f32 mGroundH;
494 /* 0xDF8 */ f32 mAttnFovY;
495 /* 0xDFC */ f32 field_0xdfc;
496 /* 0xE00 */ cXyz field_0xe00;
497 /* 0xE0C */ cXyz field_0xe0c;
498 /* 0xE18 */ s16 field_0xe18;
499 /* 0xE1A */ s16 field_0xe1a;
500 /* 0xE1C */ s16 mEvtId;
501 /* 0xE1E */ u16 mMorfLoops;
502 /* 0xE20 */ u16 mBckLoops;
503 /* 0xE22 */ u16 mMode;
504 /* 0xE24 */ s8 mReverb;
505 /* 0xE25 */ bool mHide;
506 /* 0xE26 */ bool field_0xe26;
507 /* 0xE27 */ u8 mFootLOnGround;
508 /* 0xE28 */ u8 mFootROnGround;
509 /* 0xE29 */ u8 field_0xe29;
510 /* 0xE2A */ u8 field_0xe2a;
511 /* 0xE2B */ bool mNoDraw;
512 /* 0xE2C */ u8 field_0xe2c;
513 /* 0xE2D */ bool field_0xe2d;
514 /* 0xE2E */ u8 mPreItemNo;
515 /* 0xE30 */ u16 mEvtNo;
516 /* 0xE32 */ bool mSpeakEvent;
517 /* 0xE33 */ bool field_0xe33;
518 /* 0xE34 */ u8 field_0xe34;
519 /* 0xE35 */ u8 field_0xe35;
520 /* 0xE36 */ u8 field_0xe36;
521 /* 0xE37 */ u8 field_0xe37;
522 /* 0xE38 */ u8 field_0xe38;
523 /* 0xE3C vtable */
524
525public:
526 daNpcT_c(daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
527 daNpcT_motionAnmData_c const* i_motionAnmData,
528 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
529 int i_faceMotionStepNum,
530 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
531 int i_motionStepNum, daNpcT_evtData_c const* i_evtData, char** i_arcNames) :
532 mpFaceMotionAnmData(i_faceMotionAnmData),
533 mpMotionAnmData(i_motionAnmData),
534 mpEvtData(i_evtData),
535 mpArcNames(i_arcNames),
536 mFaceMotionSeqMngr(i_faceMotionSequenceData, i_faceMotionStepNum),
537 mMotionSeqMngr(i_motionSequenceData, i_motionStepNum) {
538 initialize();
539 }
540 /* 80147FA4 */ static void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*);
541 /* 80147FD4 */ static void* srchActor(void*, void*);
542 /* 80148058 */ J3DAnmTransform* getTrnsfrmAnmP(char const*, int);
543 /* 80148094 */ J3DAnmTransformKey* getTrnsfrmKeyAnmP(char const*, int);
544 /* 801480D0 */ J3DAnmTexPattern* getTexPtrnAnmP(char const*, int);
545 /* 8014810C */ J3DAnmTextureSRTKey* getTexSRTKeyAnmP(char const*, int);
546 /* 80148148 */ J3DAnmTevRegKey* getTevRegKeyAnmP(char const*, int);
547 /* 80148184 */ J3DAnmColor* getColorAnmP(char const*, int);
548 /* 801481C0 */ int setBckAnm(J3DAnmTransform*, f32, int, int, int, bool);
549 /* 80148204 */ int setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int);
550 /* 801482F8 */ int setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int);
551 /* 80148338 */ int setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int);
552 /* 80148378 */ int setBrkAnm(J3DAnmTevRegKey*, J3DModelData*, f32, int);
553 /* 801483B8 */ int setBpkAnm(J3DAnmColor*, J3DModelData*, f32, int);
554 /* 801483F8 */ int loadRes(s8 const*, char const**);
555 /* 801484AC */ void deleteRes(s8 const*, char const**);
556 /* 8014852C */ int execute();
557 /* 8014886C */ int draw(BOOL, BOOL, f32, _GXColorS10*, f32, BOOL, BOOL, BOOL);
558 /* 80148C70 */ void setEnvTevColor();
559 /* 80148CCC */ void setRoomNo();
560 /* 80148D10 */ int checkEndAnm(f32);
561 /* 80148DD0 */ int checkEndAnm(J3DFrameCtrl*, f32);
562 /* 80148E4C */ void playAllAnm();
563 /* 80149190 */ void setMtx();
564 /* 8014924C */ void ctrlFaceMotion();
565 /* 80149300 */ void ctrlMotion();
566 /* 801493B8 */ int ctrlMsgAnm(int*, int*, fopAc_ac_c*, int);
567 /* 8014A224 */ void evtChange();
568 /* 8014A388 */ bool setFaceMotionAnm(int, bool);
569 /* 8014A908 */ void setPos(cXyz);
570 /* 8014AA18 */ void setAngle(s16);
571 /* 8014A99C */ void setAngle(csXyz);
572 /* 8014AA40 */ fopAc_ac_c* hitChk(dCcD_GObjInf*, u32);
573 /* 8014AAD0 */ void setDamage(int, int, int);
574 /* 8014ABD0 */ BOOL chkActorInSight(fopAc_ac_c*, f32, s16);
575 /* 8014ACF0 */ BOOL chkPointInArea(cXyz, cXyz, f32, f32, f32, s16);
576 /* 8014ADA0 */ BOOL chkPointInArea(cXyz, cXyz, cXyz, s16);
577 /* 8014AE1C */ BOOL chkFindActor(fopAc_ac_c*, BOOL, s16);
578 /* 8014B024 */ BOOL chkWolfAction();
579 /* 8014B0C8 */ BOOL chkFindWolf(s16, int, int, f32, f32, f32, f32, BOOL);
580 /* 8014B338 */ BOOL srchPlayerActor();
581 /* 8014B3EC */ cXyz getAttnPos(fopAc_ac_c*);
582 /* 8014B4A4 */ BOOL turn(s16, int, int);
583 /* 8014B648 */ BOOL step(s16, int, int, int, int);
584 /* 8014B808 */ void calcSpeedAndAngle(cXyz, BOOL, s16, s16);
585 /* 8014BB00 */ int getActorDistance(fopAc_ac_c*, int, int);
586 /* 8014BBF0 */ BOOL initTalk(int, fopAc_ac_c**);
587 /* 8014BC78 */ BOOL talkProc(int*, BOOL, fopAc_ac_c**, BOOL);
588 /* 8014BE2C */ fopAc_ac_c* getNearestActorP(s16);
589 /* 8014BEE4 */ fopAc_ac_c* getEvtAreaTagP(int, int);
590 /* 8014BFB0 */ fopAc_ac_c* getShopItemTagP();
591 /* 8014C030 */ void setHitodamaPrtcl();
592
593 /* 8014CD20 */ virtual ~daNpcT_c() {}
594 /* 801490D4 */ virtual BOOL ctrlBtk();
595 /* 8014CC14 */ virtual void ctrlSubFaceMotion(int) {}
596 /* 8014CC40 */ virtual BOOL checkChangeJoint(int) { return FALSE; }
597 /* 8014CC38 */ virtual BOOL checkRemoveJoint(int) { return FALSE; }
598 /* 8014CC5C */ virtual s32 getBackboneJointNo() { return -1; }
599 /* 8014CC54 */ virtual s32 getNeckJointNo() { return -1; }
600 /* 8014CC4C */ virtual s32 getHeadJointNo() { return -1; }
601 /* 8014CC90 */ virtual s32 getFootLJointNo() { return -1; }
602 /* 8014CC88 */ virtual s32 getFootRJointNo() { return -1; }
603 /* 8014D0A8 */ virtual s32 getEyeballLMaterialNo() { return 0; }
604 /* 8014D0B0 */ virtual s32 getEyeballRMaterialNo() { return 0; }
605 /* 8014D0B8 */ virtual s32 getEyeballMaterialNo() { return 0; }
606 /* 8014951C */ virtual int ctrlJoint(J3DJoint*, J3DModel*);
607 /* 8014CC48 */ virtual void afterJntAnm(int) {}
608 /* 8014CC24 */ virtual void setParam() {}
609 /* 8014CC80 */ virtual BOOL checkChangeEvt() { return FALSE; }
610 /* 8014CC78 */ virtual BOOL evtTalk() { return TRUE; }
611 /* 8014CC70 */ virtual BOOL evtEndProc() { return TRUE; }
612 /* 8014CC68 */ virtual BOOL evtCutProc() { return FALSE; }
613 /* 8014CC64 */ virtual void setAfterTalkMotion() {}
614 /* 8014997C */ virtual BOOL evtProc();
615 /* 8014CC20 */ virtual void action() {}
616 /* 8014CC1C */ virtual void beforeMove() {}
617 /* 8014CC18 */ virtual void afterMoved() {}
618 /* 8014CC10 */ virtual void setAttnPos() {}
619 /* 80149BB4 */ virtual void setFootPos();
620 /* 8014CC0C */ virtual void setCollision() {}
621 /* 80149D7C */ virtual void setFootPrtcl(cXyz*, f32, f32);
622 /* 8014A05C */ virtual bool checkCullDraw();
623 /* 8014A064 */ virtual void twilight();
624 /* 8014CC98 */ virtual BOOL chkXYItems() { return FALSE; }
625 /* 8014A0B0 */ virtual void evtOrder();
626 /* 8014CBF4 */ virtual void decTmr() {
627 if (mDamageTimer != 0) {
628 mDamageTimer--;
629 }
630 }
631 /* 8014A324 */ virtual void clrParam();
632 /* 8014CC30 */ virtual int drawDbgInfo() { return 0; }
633 /* 8014CC28 */ virtual void drawOtherMdl() {}
634 /* 8014CC2C */ virtual void drawGhost() {}
635 /* 8014CCA0 */ virtual bool afterSetFaceMotionAnm(int, int, f32, int) { return true; }
636 /* 8014CCE0 */ virtual bool afterSetMotionAnm(int, int, f32, int) { return true; }
637 /* 8014CCB0 */ virtual daNpcT_faceMotionAnmData_c getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_1) { return param_1; }
638 /* 8014CCF0 */ virtual daNpcT_motionAnmData_c getMotionAnm(daNpcT_motionAnmData_c param_1) { return param_1; }
639 /* 8014CCEC */ virtual void changeAnm(int*, int*) {}
640 /* 8014CCAC */ virtual void changeBck(int*, int*) {}
641 /* 8014CCA8 */ virtual void changeBtp(int*, int*) {}
642 /* 8014CCE8 */ virtual void changeBtk(int*, int*) {}
643 /* 8014A628 */ virtual bool setMotionAnm(int, f32, BOOL);
644
646 s16 checkStep() { return mStepMode == 1; }
647 void setCommander(fopAc_ac_c* param_0) { field_0xba0.entry(param_0); }
648 void setCutType(int i_cutType) { mCutType = i_cutType; }
649 void onHide() { mHide = true; }
650 void offHide() { mHide = false; }
651 void hide() { onHide(); }
652 void show() { offHide(); }
653
668
669 static dCcD_SrcGObjInf const mCcDObjData;
670 static dCcD_SrcCyl mCcDCyl;
671 static dCcD_SrcSph mCcDSph;
675
676 enum Mode {
677 /* 0 */ MODE_ENTER,
678 /* 1 */ MODE_INIT,
679 /* 2 */ MODE_RUN,
680 /* 3 */ MODE_EXIT,
681 /* 4 */ MODE_4,
682 /* -1 */ MODE_INVALID = -1,
683 };
684
702};
703
704STATIC_ASSERT(sizeof(daNpcT_c) == 0xE40);
705
707BOOL daNpcT_chkPointInArea(cXyz param_0, cXyz param_1, cXyz param_2, s16 param_3, BOOL param_4);
708u8 daNpcT_getDistTableIdx(int param_0, int param_1);
710void daNpcT_offTmpBit(u32 i_idx);
711void daNpcT_onTmpBit(u32 i_idx);
713void daNpcT_onEvtBit(u32 i_idx);
714BOOL daNpcT_getPlayerInfoFromPlayerList(int param_0, int i_roomNo, cXyz* o_spawnPos,
715 csXyz* o_angle);
716
718 /* 8014D884 */ void calc(J3DMaterial*) const;
719 /* 80150444 */ ~daBaseNpc_matAnm_c();
720};
721
723private:
724 /* 0x00 */ u8 field_0x00[4];
725 /* 0x04 */ u32 mActorId;
726
727public:
728 /* 8014D804 */ daBaseNpc_acMngr_c();
729 /* 8014D81C */ void entry(fopAc_ac_c*);
730 /* 8014D838 */ fopAc_ac_c* getActor();
731 /* 80150524 */ ~daBaseNpc_acMngr_c();
732};
733
735private:
736 /* 0x000 */ f32 field_0x0;
737 /* 0x004 */ dPath* mpRoomPath;
738 /* 0x008 */ f32 field_0x8;
739 /* 0x010 */ u8 field_0xc[2562];
740 /* 0xA0E */ u16 field_0xa0e;
741 /* 0xA10 */ u16 mIdx;
742 /* 0xA12 */ s8 mDirection;
743 /* 0xA13 */ u8 field_0xa13[17];
744
745public:
746 /* 8014D998 */ daBaseNpc_path_c();
747 /* 8014D9A8 */ BOOL isPath();
748 /* 8014D9BC */ int setPathInfo(u8, s8, s8);
749 /* 8014DA48 */ void reverseDir();
750 /* 8014DA64 */ s32 chkPnt(cXyz);
751 /* 8014DAC4 */ void setNextPnt();
752 /* 8014DB04 */ u16 getIdx();
753 /* 8014DB0C */ void setIdx(u16);
754 /* 8014DB14 */ Vec getPntPos(u16);
755 /* 801503FC */ ~daBaseNpc_path_c();
756};
757
759private:
760 /* 0x00 */ int field_0x00;
761 /* 0x04 */ csXyz mMaxJntLmt[2];
762 /* 0x10 */ u8 field_0x0A[12];
763 /* 0x1C */ csXyz mMinJntLmt[2];
764 /* 0x28 */ u8 field_0x28[12];
765 /* 0x34 */ cXyz mJntPos[3];
766 /* 0x4C */ u8 field_0x4C[24];
767 /* 0x64 */ csXyz mUnk[2];
768 /* 0x70 */ csXyz mRotation[2];
769 /* 0x7C */ csXyz mUnk2[2];
770 /* 0x88 */ u8 field_0x88[4];
771 /* 0x8C */ cXyz* mpAttnPos;
772
773public:
774 /* 8014DB40 */ void limitter(s16, s16*, s16, s16);
775 /* 8014DBB4 */ void calc(fopAc_ac_c*, f32 (*)[4], s16);
776 /* 8014E634 */ void setMaxJntLmt(csXyz, int);
777 /* 8014E658 */ void setMinJntLmt(csXyz, int);
778 /* 8014E67C */ void setJntPos(cXyz, int);
779 /* 8014E6A0 */ int setAttnPos(cXyz*);
780 /* 8014E6AC */ csXyz getRot(int);
781 /* 801502EC */ ~daBaseNpc_lookat_c();
782};
783
784class daBaseNpc_c : public fopAc_ac_c {
785public:
786 /* 8014E6C8 */ daBaseNpc_c();
787 /* 8014EE44 */ J3DAnmTransform* getTrnsfrmKeyAnmP(char*, int);
788 /* 8014EE80 */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int);
789 /* 8014EEE4 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool);
790 /* 8014EF28 */ J3DAnmTransform* getTexPtrnAnmP(char*, int);
791 /* 8014EF64 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int);
792 /* 8014EFF4 */ void orderEvent(int, char*);
793 /* 8014F0A0 */ void setEnvTevColor();
794 /* 8014F0FC */ void setRoomNo();
795 /* 8014F148 */ int checkEndAnm(f32);
796 /* 8014F1C8 */ int checkEndAnm(J3DFrameCtrl*);
797
798 /* 8014E89C */ virtual ~daBaseNpc_c();
799 /* 8014EAD0 */ virtual void execute();
800 /* 8014EC50 */ virtual void draw(f32);
801 /* 8014EE3C */ virtual bool getResName();
802 /* 8014EFA4 */ virtual void attnSttsOn(int, int);
803 /* 8014EFF0 */ virtual void setParam();
804 /* 8014F09C */ virtual void mainProc();
805 /* 8014F140 */ virtual bool btkCtrl();
806 /* 8014F228 */ virtual void allAnmPlay();
807 /* 8014F38C */ virtual void adjustShapeAngle();
808 /* 8014F390 */ virtual void setMtx(int);
809 /* 8014F4A0 */ virtual void setCollisions();
810 /* 8014F4A4 */ virtual void setAttnPos();
811 /* 8014F4A8 */ virtual void drawOtherMdls();
812 /* 8014F4AC */ virtual bool dbgDraw();
813
814 static u8 const mCcDObj[48];
815 static dCcD_SrcCyl mCcDCyl;
816 static dCcD_SrcSph mCcDSph;
817
818private:
820 /* 0x744 */ u8 field_0x744[16];
821 /* 0x754 */ mDoExt_McaMorfSO* mpMorf[2];
825 /* 0x820 */ u8 tmp2[28];
826 /* 0x83c */ u16* field_0x83c;
827 /* 0x840 */ u16 field_0x840;
828 /* 0x842 */ u8 field_0x842[6];
829 /* 0x848 */ s32 mUnk;
830 /* 0x84C */ dMsgFlow_c mMsg;
831 /* 0x898 */ u8 field_0x898[2];
832 /* 0x89A */ s16 mEvtIdx;
833 /* 0x89C */ u8 field_0x89C[34];
834 /* 0x8BE */ u8 mRoomId;
835 /* 0x8C0 */ u8 field_0x8C0[90];
836 /* 0x91A */ csXyz field_0x91a;
837 /* 0x920 */ csXyz field_0xd7e;
838 /* 0x926 */ csXyz field_0xd84;
839 /* 0x92C */ csXyz field_0xd8a;
840 /* 0x932 */ csXyz field_0x932;
841 /* 0x938 */ u8 field_0x938[4];
842 /* 0x93C */ csXyz field_0x93c;
843 /* 0x940 */ u8 field_0x940[18];
844 /* 0x954 */ cXyz field_0x954;
845 /* 0x960 */ u8 field_0x960[36];
846 /* 0x984 */ csXyz field_0x984;
847 /* 0x98A */ u8 field_0x98A[18];
848 /* 0x99C */ csXyz field_0x99c;
849 /* 0x9A2 */ u8 field_0x9a2[70];
850 /* 0x9E8 */ const cBgS_PolyInfo mBgSPolyInfo;
851 /* 0x9F9 */ u8 field_0x9f9[27];
852};
853
855private:
856 /* 0xA14 */ u32 field_0xa14;
857
858public:
859 /* 8014F4B4 */ daBaseNpc_moveBgActor_c();
860 /* 8014F518 */ void MoveBGCreateHeap();
861 /* 8014F60C */ void
862 MoveBGCreate(char const*, int,
863 void (*)(dBgW*, void*, cBgS_PolyInfo const&, bool, cXyz*, csXyz*, csXyz*), u32);
864 /* 8014F6FC */ void MoveBGDelete();
865 /* 8014F770 */ void MoveBGExecute();
866 /* 801503BC */ bool CreateHeap();
867 /* 801503C4 */ bool Create();
868 /* 801503CC */ bool Delete();
869 /* 801503D4 */ bool Execute(f32 (**)[3][4]);
870 /* 801503DC */ bool Draw();
871 /* 801503E4 */ bool IsDelete();
872 /* 801503EC */ bool ToFore();
873 /* 801503F4 */ bool ToBack();
874 /* 80155FB0 */ ~daBaseNpc_moveBgActor_c();
875
876 static u8 m_name[4];
877 static u8 m_dzb_id[4];
878 static u8 m_set_func[4];
879};
880
882private:
884
885public:
887
888 /* 801506B0 */ void initialize();
889 /* 801506D8 */ void entry(unsigned int);
890 /* 801506BC */ void entry(fopAc_ac_c*);
891 /* 801506E0 */ void remove();
892 /* 801506EC */ fopAc_ac_c* getActorP();
893
894 /* 80155E40 */ virtual ~daNpcF_ActorMngr_c() {}
895};
896
897class daNpcF_c : public fopAc_ac_c {
898protected:
904 /* 0x5D0 */ dBgS_ObjAcch mAcch;
905 /* 0x7A8 */ dCcD_Stts mCcStts;
909 /* 0x854 */ cXyz mLookatPos[3];
910 /* 0x878 */ cXyz mLookPos;
911 /* 0x884 */ cXyz field_0x884;
912 /* 0x890 */ cXyz field_0x890;
913 /* 0x89C */ cXyz field_0x89c;
914 /* 0x8A8 */ cXyz field_0x8a8;
915 /* 0x8B4 */ cXyz field_0x8b4;
916 /* 0x8C0 */ cXyz field_0x8c0;
917 /* 0x8CC */ cXyz field_0x8cc;
918 /* 0x8D8 */ cXyz field_0x8d8;
919 /* 0x8E4 */ cXyz mHeadPos;
920 /* 0x8F0 */ csXyz mCurAngle;
921 /* 0x8F6 */ csXyz mOldAngle;
922 /* 0x8FC */ csXyz mEyeAngle;
923 /* 0x902 */ csXyz mHeadAngle;
924 /* 0x908 */ csXyz field_0x908[3];
925 /* 0x91A */ csXyz mLookatAngle[3];
926 /* 0x92C */ int mStaffID;
927 /* 0x930 */ int mCutType;
928 /* 0x934 */ int mAttnIdx;
929 /* 0x938 */ int mAttnChangeTimer;
930 /* 0x93C */ int mAttnActorTimer[5];
931 /* 0x950 */ int mMsgTimer;
932 /* 0x954 */ int mDamageTimer;
933 /* 0x958 */ int mTotalDamageTimer;
934 /* 0x95C */ int field_0x95c;
935 /* 0x960 */ int mEventTimer;
936 /* 0x964 */ int mBtpTimer;
937 /* 0x968 */ int mTurnAmount;
938 /* 0x96C */ int mTurnMode;
939 /* 0x970 */ f32 mTurnStepNum;
941 /* 0x978 */ f32 mExpressionMorf;
943 /* 0x980 */ f32 mGroundH;
944 /* 0x984 */ f32 field_0x984[3];
945 /* 0x990 */ s16 field_0x990;
946 /* 0x992 */ s16 field_0x992;
947 /* 0x994 */ s16 mTurnStartAngle;
949 /* 0x998 */ u16 field_0x998;
950 /* 0x99C */ u32 mAnmFlags;
951 /* 0x9A0 */ u32 mShadowKey;
952 /* 0x9A4 */ u32 field_0x9a4;
953 /* 0x9A8 */ u32 mHitodamaParticleKey[2];
954 /* 0x9B0 */ u32 mPolySound;
955 /* 0x9B4 */ int mFlowNodeNo;
956 /* 0x9B8 */ cXyz field_0x9b8;
957 /* 0x9C4 */ cXyz field_0x9c4;
958 /* 0x9D0 */ s16 field_0x9d0;
959 /* 0x9D2 */ s16 field_0x9d2;
960 /* 0x9D4 */ s16 mEventIdx;
963 /* 0x9DA */ s16 mMotionPhase;
965 /* 0x9DE */ s16 mExpression;
966 /* 0x9E0 */ s16 mMotion;
967 /* 0x9E2 */ u16 mMotionLoops;
969 /* 0x9E6 */ u16 mOrderEvtNo;
970 /* 0x9E8 */ s8 mReverb;
971 /* 0x9E9 */ bool mOrderSpeakEvt;
972 /* 0x9EA */ bool field_0x9ea;
973 /* 0x9EB */ bool field_0x9eb;
974 /* 0x9EC */ bool field_0x9ec;
975 /* 0x9ED */ bool mOrderNewEvt;
976 /* 0x9EE */ bool field_0x9ee;
977 /* 0x9EF */ u8 field_0x9ef;
978 /* 0x9F0 */ bool mIsDamaged;
979 /* 0x9F1 */ u8 field_0x9f1;
980 /* 0x9F2 */ bool mHide;
981 /* 0x9f3 */ u8 field_0x9f3;
982 /* 0x9F4 */ bool mTwilight;
983 /* 0x9F5 */ u8 field_0x9f5;
984 /* 0x9F6 */ u8 field_0x9f6;
985 /* 0x9F8 */ dMsgFlow_c mFlow;
986 /* 0xA44 */ cBgS_GndChk mGndChk;
989
990public:
996
1020
1022 /* 0 */ LOOK_NONE,
1023 /* 1 */ LOOK_RESET,
1026 /* 4 */ LOOK_ACTOR,
1027 /* 5 */ LOOK_ATTN,
1028 };
1029
1030 /* 80152014 */ BOOL execute();
1031 /* 801522AC */ int draw(BOOL, BOOL, f32, _GXColorS10*, BOOL);
1032 /* 80152614 */ static void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*,
1033 dCcD_GObjInf*);
1034 /* 80152654 */ static void* srchAttnActor1(void*, void*);
1035 /* 801526E8 */ static void* srchActor(void*, void*);
1036
1037 /* 801528C8 */ void initialize();
1038 /* 80152B2C */ J3DAnmTransformKey* getTrnsfrmKeyAnmP(char*, int);
1039 /* 80152B68 */ J3DAnmTexPattern* getTexPtrnAnmP(char*, int);
1040 /* 80152BA4 */ J3DAnmTextureSRTKey* getTexSRTKeyAnmP(char*, int);
1041 /* 80152BE0 */ J3DAnmTevRegKey* getTevRegKeyAnmP(char*, int);
1042 /* 80152C1C */ BOOL setMcaMorfAnm(J3DAnmTransformKey* i_anm, f32 i_rate, f32 i_morf, int i_attr,
1043 int i_start, int i_end);
1044 /* 80152C80 */ BOOL setBckAnm(J3DAnmTransform* i_bck, f32 i_rate, int i_attr, int i_start,
1045 int i_end, bool i_modify);
1046 /* 80152CC4 */ BOOL setBtpAnm(J3DAnmTexPattern* i_btp, J3DModelData* i_modelData, f32 i_rate,
1047 int i_attr);
1048 /* 80152D04 */ BOOL setBtkAnm(J3DAnmTextureSRTKey* i_btk, J3DModelData* i_modelData, f32 i_rate,
1049 int i_attr);
1050 /* 80152D44 */ BOOL setBrkAnm(J3DAnmTevRegKey* i_brk, J3DModelData* i_modelData, f32 i_rate,
1051 int i_attr);
1052 /* 80152D84 */ void setEnvTevColor();
1053 /* 80152DE0 */ void setRoomNo();
1054 /* 80152E24 */ BOOL chkEndAnm(f32);
1055 /* 80152EC4 */ BOOL chkEndAnm(J3DFrameCtrl*, f32);
1056 /* 80152F40 */ BOOL playAllAnm();
1057 /* 80153150 */ void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData***);
1058 /* 80153264 */ void playMotionAnm(daNpcF_c::daNpcF_anmPlayData***);
1059 /* 8015337C */ void setLookatMtx(int, int*, f32);
1060 /* 80153578 */ BOOL hitChk2(dCcD_Cyl*, BOOL, BOOL);
1061 /* 80153658 */ void setDamage(int, int, int);
1062 /* 80153718 */ int ctrlMsgAnm(int&, int&, fopAc_ac_c*, BOOL);
1063 /* 8015387C */ void orderEvent(int, char*, u16, u16, u8, u16);
1064 /* 80153954 */ void changeEvent(char*, char*, u16, u16);
1065 /* 801539F0 */ BOOL chkActorInSight(fopAc_ac_c*, f32);
1066 /* 80153A78 */ BOOL chkActorInArea(fopAc_ac_c*, cXyz, cXyz, s16);
1067 /* 80153BDC */ BOOL chkActorInAttnArea(fopAc_ac_c*, fopAc_ac_c*, int);
1068 /* 80153D1C */ BOOL initTalk(int, fopAc_ac_c**);
1069 /* 80153D84 */ BOOL talkProc(int*, BOOL, fopAc_ac_c**);
1070 /* 80153EF4 */ BOOL turn(s16, f32, int);
1071 /* 801540A4 */ BOOL step(s16, int, int, int);
1072 /* 80154250 */ void setAngle(s16);
1073 /* 80154278 */ u8 getDistTableIdx(int, int);
1074 /* 801542A0 */ fopAc_ac_c* getEvtAreaTagP(int, int);
1076 int, BOOL);
1077 /* 80154730 */ BOOL chkActorInSight2(fopAc_ac_c*, f32, s16);
1078 /* 80154834 */ BOOL chkPointInArea(cXyz, cXyz, f32, f32, f32, s16);
1079 /* 801548F4 */ BOOL chkPointInArea(cXyz, cXyz, cXyz, s16);
1080 /* 8015496C */ cXyz getAttentionPos(fopAc_ac_c*);
1081 /* 801549E0 */ BOOL chkFindPlayer2(BOOL, s16);
1082 /* 80154BD8 */ void setHitodamaPrtcl();
1083
1084 /* 80155BF4 */ virtual ~daNpcF_c() {}
1085 /* 80155BC8 */ virtual void setParam();
1086 /* 80155BC0 */ virtual BOOL main();
1087 /* 80155BD8 */ virtual BOOL ctrlBtk();
1088 /* 80155BBC */ virtual void adjustShapeAngle();
1089 /* 8015276C */ virtual void setMtx();
1090 /* 801527FC */ virtual void setMtx2();
1091 /* 80155BB8 */ virtual void setAttnPos();
1092 /* 80155BB4 */ virtual void setCollisions() {}
1093 /* 80155BE0 */ virtual bool setExpressionAnm(int i_idx, bool i_modify);
1094 /* 80155EC8 */ virtual bool setExpressionBtp(int i_idx);
1095 /* 80155BF0 */ virtual void setExpression(int i_expression, f32 i_morf);
1096 /* 80155BE8 */ virtual bool setMotionAnm(int i_idx, f32 i_morf);
1097 /* 80155BEC */ virtual void setMotion(int i_motion, f32 i_morf, int i_restart);
1098 /* 80155BD0 */ virtual BOOL drawDbgInfo();
1099 /* 80155BCC */ virtual void drawOtherMdls();
1100
1101 BOOL chkActorInSpeakArea(fopAc_ac_c* i_actorCheck, fopAc_ac_c* i_actorArea) {
1102 return chkActorInAttnArea(i_actorCheck, i_actorArea, attention_info.distances[fopAc_attn_SPEAK_e]);
1103 }
1107 BOOL chkActorInTalkArea(fopAc_ac_c* i_actorCheck, fopAc_ac_c* i_actorArea) {
1108 return chkActorInAttnArea(i_actorCheck, i_actorArea, attention_info.distances[fopAc_attn_TALK_e]);
1109 }
1114 void setIntDemander(fopAc_ac_c* i_actor) { field_0x824.entry(i_actor); }
1115 void setIntFlowNodeNo(int i_flowNodeNo) { mFlowNodeNo = i_flowNodeNo; }
1116 void setCutType(int i_cutType) { mCutType = i_cutType; }
1117 void onInterrupt(u8 param_0) { field_0x9ef = param_0; }
1118
1119 static u8 const mCcDObjInfo[48];
1120 static dCcD_SrcCyl mCcDCyl;
1121 static dCcD_SrcSph mCcDSph;
1125};
1126
1127STATIC_ASSERT(sizeof(daNpcF_c) == 0xB48);
1128
1130void daNpcF_onEvtBit(u32 i_idx);
1132void daNpcF_offTmpBit(u32 i_idx);
1133u8 daNpcF_getDistTableIdx(int param_0, int param_1);
1135int daNpcF_getPlayerInfoFromPlayerList(int param_0, int i_roomNo, cXyz& param_2, csXyz& param_3);
1137BOOL daNpcF_pntVsLineSegmentLengthSquare2D(f32 i_pntX, f32 i_pntZ, f32 i_startX, f32 i_startZ,
1138 f32 i_endX, f32 i_endZ, f32* o_projX, f32* o_projZ,
1139 f32* o_dist2);
1140BOOL daNpcF_chkPassed(cXyz i_pos, dPnt* i_points, u16 i_idx, u16 i_num, BOOL i_isClosed,
1141 BOOL i_isReversed);
1142
1144private:
1145 /* 0x0F4 */ mutable f32 field_0xF4;
1146 /* 0x0F8 */ mutable f32 field_0xF8;
1147 /* 0x0FC */ f32 mNowOffsetX;
1148 /* 0x100 */ f32 mNowOffsetY;
1149 /* 0x104 */ u8 mEyeMoveFlag;
1150 /* 0x105 */ u8 field_0x105;
1151
1152public:
1154 /* 80150738 */ void initialize();
1155 /* 8015075C */ void calc(J3DMaterial*) const;
1156 /* 80155ED0 */ ~daNpcF_MatAnm_c();
1157 void setNowOffsetX(float i_nowOffsetX) { mNowOffsetX = i_nowOffsetX; }
1158 void setNowOffsetY(float i_nowOffsetY) { mNowOffsetY = i_nowOffsetY; }
1161};
1162
1164private:
1165 /* 0x00 */ u16 mNurbs;
1166 /* 0x02 */ u16 field_0x02;
1167 /* 0x04 */ bool mIsReversed;
1168 /* 0x05 */ bool mIsClosed;
1169 /* 0x08 */ dPnt mPoints[96];
1170
1171public:
1172 /* 80150870 */ void initialize(dPath*, int);
1173
1175 initialize(NULL, 0);
1176 }
1177
1179}; // Size: 0x60C
1180
1182protected:
1183 /* 0x00 */ u16 mIdx;
1184 /* 0x02 */ u8 mIsReversed;
1185 /* 0x03 */ bool mIsClosed;
1186 /* 0x04 */ dPath* mpRoomPath;
1187 /* 0x08 */ f32 mRange;
1188 /* 0x0C */ f32 mPosDst;
1189 /* 0x10 */ f32 field_0x10;
1190 /* 0x14 */ cXyz mPosition;
1192
1193public:
1194 /* 80150900 */ void initialize();
1195 /* 8015095C */ int setPathInfo(u8, s8, u8);
1196 /* 80150A24 */ BOOL chkPassed(cXyz);
1197 /* 80150A7C */ BOOL chkPassedDst(cXyz);
1198 /* 80150BBC */ void reverse();
1199 /* 80150BE0 */ BOOL setNextIdx();
1200 /* 80150C18 */ int getNextIdx();
1201 /* 80150C60 */ int getBeforeIdx();
1202 /* 80150CA8 */ BOOL getBeforePos(cXyz&);
1203 /* 80150D44 */ BOOL getNextPos(cXyz&);
1204 /* 80150DE0 */ BOOL getDstPos(cXyz, cXyz&);
1205 /* 80150EB4 */ void setNextIdxDst(cXyz);
1206
1208 initialize();
1209 }
1210
1211 virtual ~daNpcF_Path_c() {}
1212
1213 int getIdx() { return mIdx; };
1214 void setIdx(int i_idx) { mIdx = i_idx; }
1216 u8 getArg0(int i_idx) { return mpRoomPath->m_points[i_idx].mArg0; }
1217 Vec getPntPos(int i_idx) { return mpRoomPath->m_points[i_idx].m_position; }
1219 BOOL chkReverse() { return mIsReversed == true; }
1220 void onReverse() { mIsReversed = true; }
1222 void setRange(f32 i_range) { mRange = i_range; }
1223}; // Size: 0x630
1224
1226private:
1227 /* 0x00 */ cXyz mJointPos[4];
1228 /* 0x30 */ cXyz* mAttnPos;
1229 /* 0x34 */ csXyz mAngularMoveDis[4];
1230 /* 0x4C */ csXyz mMinAngle[4];
1231 /* 0x64 */ csXyz mMaxAngle[4];
1232 /* 0x7C */ csXyz mRotAngle[4];
1233 /* 0x94 */ bool field_0x94[4];
1234 /* 0x98 vtable */
1235
1236public:
1237 /* 80151038 */ void initialize();
1238 /* 801510B8 */ void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16,
1239 cXyz*);
1240 /* 80151350 */ void calc(fopAc_ac_c*, Mtx, csXyz**, BOOL, int, BOOL);
1241 /* 801515D4 */ void adjustMoveDisAngle(s16&, s16, s16, s16);
1242 /* 80151648 */ void initCalc(fopAc_ac_c*, Mtx, cXyz*, csXyz*, f32*, cXyz&, BOOL);
1243 /* 80151A54 */ void update(cXyz*, csXyz*, f32*);
1244 /* 80151B68 */ void calcMoveDisAngle(int, cXyz*, csXyz*, cXyz, int, BOOL);
1245 /* 80151F54 */ void setRotAngle();
1246 /* 80151FE0 */ void clrRotAngle();
1248 virtual ~daNpcF_Lookat_c() {}
1249 cXyz* getAttnPos() { return mAttnPos; }
1250 void setAttnPos(cXyz* i_attnPos) { mAttnPos = i_attnPos; }
1251};
1252
1254private:
1255public:
1256 /* 80155B54 */ ~daNpcF_MoveBgActor_c();
1257 /* 80155E88 */ virtual bool CreateHeap();
1258 /* 80155E90 */ virtual bool Create();
1259 /* 80155EA0 */ virtual bool Execute(f32 (**)[3][4]);
1260 /* 80155EA8 */ virtual bool Draw();
1261 /* 80155E98 */ virtual bool Delete();
1262 /* 80155EB0 */ virtual bool IsDelete();
1263 /* 80155EB8 */ virtual bool ToFore();
1264 /* 80155EC0 */ virtual bool ToBack();
1265};
1266
1267#endif /* D_A_D_A_NPC_H */
u32 mode
Definition GXTev.c:56
T cLib_getRndValue(T min, T range)
Definition c_lib.h:75
s16 cM_rad2s(f32 rad)
Definition c_math.cpp:11
s16 cM_atan2s(f32 y, f32 x)
Definition c_math.cpp:118
f32 cM_rndF(f32 max)
Definition c_math.cpp:205
Definition J3DAnimation.h:711
Definition J3DAnimation.h:658
Definition c_bg_s_gnd_chk.h:8
Definition d_bg_s_gnd_chk.h:7
Definition d_bg_s_lin_chk.h:9
Definition d_bg_w.h:254
Definition d_msg_flow.h:35
Definition d_particle_copoly.h:38
Definition d_a_npc.h:722
daBaseNpc_acMngr_c()
Definition d_a_npc.cpp:2773
~daBaseNpc_acMngr_c()
Definition d_a_npc.cpp:3300
u8 field_0x00[4]
Definition d_a_npc.h:724
void entry(fopAc_ac_c *)
Definition d_a_npc.cpp:2778
fopAc_ac_c * getActor()
Definition d_a_npc.cpp:2783
u32 mActorId
Definition d_a_npc.h:725
Definition d_a_npc.h:784
csXyz field_0x99c
Definition d_a_npc.h:848
void orderEvent(int, char *)
Definition d_a_npc.cpp:3020
virtual bool getResName()
Definition d_a_npc.cpp:2959
u8 field_0x744[16]
Definition d_a_npc.h:820
virtual void setParam()
Definition d_a_npc.cpp:3015
virtual void attnSttsOn(int, int)
Definition d_a_npc.cpp:2996
mDoExt_McaMorfSO * mpMorf[2]
Definition d_a_npc.h:821
u8 field_0x960[36]
Definition d_a_npc.h:845
Z2Creature mCreature
Definition d_a_npc.h:822
csXyz field_0x91a
Definition d_a_npc.h:836
virtual void mainProc()
Definition d_a_npc.cpp:3032
csXyz field_0xd8a
Definition d_a_npc.h:839
mDoExt_btpAnm mBtpAnm
Definition d_a_npc.h:824
virtual ~daBaseNpc_c()
Definition d_a_npc.cpp:2944
static u8 const mCcDObj[48]
Definition d_a_npc.h:5302
csXyz field_0xd7e
Definition d_a_npc.h:837
virtual void setAttnPos()
Definition d_a_npc.cpp:3148
csXyz field_0x984
Definition d_a_npc.h:846
void setMcaMorfAnm(J3DAnmTransformKey *, f32, f32, int, int, int)
Definition d_a_npc.cpp:2970
virtual void draw(f32)
Definition d_a_npc.cpp:2954
void setBtpAnm(J3DAnmTexPattern *, J3DModelData *, f32, int)
Definition d_a_npc.cpp:2990
virtual bool dbgDraw()
Definition d_a_npc.cpp:3158
void setEnvTevColor()
Definition d_a_npc.cpp:3037
u8 field_0x9f9[27]
Definition d_a_npc.h:851
dMsgFlow_c mMsg
Definition d_a_npc.h:830
u8 field_0x89C[34]
Definition d_a_npc.h:833
csXyz field_0x932
Definition d_a_npc.h:840
virtual void allAnmPlay()
Definition d_a_npc.cpp:3092
mDoExt_bckAnm mBckAnm
Definition d_a_npc.h:823
int checkEndAnm(f32)
Definition d_a_npc.cpp:3055
const cBgS_PolyInfo mBgSPolyInfo
Definition d_a_npc.h:850
u16 * field_0x83c
Definition d_a_npc.h:826
J3DAnmTransform * getTrnsfrmKeyAnmP(char *, int)
Definition d_a_npc.cpp:2964
u8 mRoomId
Definition d_a_npc.h:834
virtual void setMtx(int)
Definition d_a_npc.cpp:3103
void setRoomNo()
Definition d_a_npc.cpp:3043
virtual void drawOtherMdls()
Definition d_a_npc.cpp:3153
u8 field_0x898[2]
Definition d_a_npc.h:831
s32 mUnk
Definition d_a_npc.h:829
virtual bool btkCtrl()
Definition d_a_npc.cpp:3050
u8 field_0x938[4]
Definition d_a_npc.h:841
u8 tmp2[28]
Definition d_a_npc.h:825
u8 field_0x842[6]
Definition d_a_npc.h:828
void setBckAnm(J3DAnmTransform *, f32, int, int, int, bool)
Definition d_a_npc.cpp:2977
s16 mEvtIdx
Definition d_a_npc.h:832
u8 field_0x940[18]
Definition d_a_npc.h:843
static dCcD_SrcCyl mCcDCyl
Definition d_a_npc.h:922
u8 field_0x9a2[70]
Definition d_a_npc.h:849
daBaseNpc_c()
Definition d_a_npc.cpp:2939
virtual void execute()
Definition d_a_npc.cpp:2949
static dCcD_SrcSph mCcDSph
Definition d_a_npc.h:937
u8 field_0x98A[18]
Definition d_a_npc.h:847
virtual void setCollisions()
Definition d_a_npc.cpp:3143
u16 field_0x840
Definition d_a_npc.h:827
csXyz field_0xd84
Definition d_a_npc.h:838
J3DAnmTransform * getTexPtrnAnmP(char *, int)
Definition d_a_npc.cpp:2984
dBgS_Acch field_0x56c
Definition d_a_npc.h:819
csXyz field_0x93c
Definition d_a_npc.h:842
u8 field_0x8C0[90]
Definition d_a_npc.h:835
virtual void adjustShapeAngle()
Definition d_a_npc.cpp:3098
cXyz field_0x954
Definition d_a_npc.h:844
Definition d_a_npc.h:758
cXyz mJntPos[3]
Definition d_a_npc.h:765
csXyz mMinJntLmt[2]
Definition d_a_npc.h:763
csXyz mUnk2[2]
Definition d_a_npc.h:769
u8 field_0x28[12]
Definition d_a_npc.h:764
u8 field_0x0A[12]
Definition d_a_npc.h:762
u8 field_0x88[4]
Definition d_a_npc.h:770
csXyz mMaxJntLmt[2]
Definition d_a_npc.h:761
cXyz * mpAttnPos
Definition d_a_npc.h:771
csXyz mRotation[2]
Definition d_a_npc.h:768
u8 field_0x4C[24]
Definition d_a_npc.h:766
~daBaseNpc_lookat_c()
Definition d_a_npc.cpp:3239
int setAttnPos(cXyz *)
Definition d_a_npc.cpp:2928
csXyz getRot(int)
Definition d_a_npc.cpp:2934
void setMinJntLmt(csXyz, int)
Definition d_a_npc.cpp:2914
void calc(fopAc_ac_c *, f32(*)[4], s16)
Definition d_a_npc.cpp:2900
int field_0x00
Definition d_a_npc.h:760
void setMaxJntLmt(csXyz, int)
Definition d_a_npc.cpp:2906
void limitter(s16, s16 *, s16, s16)
Definition d_a_npc.cpp:2865
csXyz mUnk[2]
Definition d_a_npc.h:767
void setJntPos(cXyz, int)
Definition d_a_npc.cpp:2921
Definition d_a_npc.h:854
void MoveBGCreate(char const *, int, void(*)(dBgW *, void *, cBgS_PolyInfo const &, bool, cXyz *, csXyz *, csXyz *), u32)
Definition d_a_npc.cpp:3194
bool ToBack()
Definition d_a_npc.cpp:3285
u32 field_0xa14
Definition d_a_npc.h:856
~daBaseNpc_moveBgActor_c()
Definition d_a_npc.cpp:5294
static u8 m_set_func[4]
Definition d_a_npc.h:878
void MoveBGCreateHeap()
Definition d_a_npc.cpp:3187
bool IsDelete()
Definition d_a_npc.cpp:3273
bool Delete()
Definition d_a_npc.cpp:3256
bool CreateHeap()
Definition d_a_npc.cpp:3244
bool Create()
Definition d_a_npc.cpp:3250
daBaseNpc_moveBgActor_c()
Definition d_a_npc.cpp:3165
bool Execute(f32(**)[3][4])
Definition d_a_npc.cpp:3262
static u8 m_name[4]
Definition d_a_npc.h:876
void MoveBGDelete()
Definition d_a_npc.cpp:3202
bool Draw()
Definition d_a_npc.cpp:3268
void MoveBGExecute()
Definition d_a_npc.cpp:3208
static u8 m_dzb_id[4]
Definition d_a_npc.h:877
bool ToFore()
Definition d_a_npc.cpp:3279
Definition d_a_npc.h:734
~daBaseNpc_path_c()
Definition d_a_npc.cpp:3290
u8 field_0xc[2562]
Definition d_a_npc.h:739
void reverseDir()
Definition d_a_npc.cpp:2832
f32 field_0x8
Definition d_a_npc.h:738
int setPathInfo(u8, s8, s8)
Definition d_a_npc.cpp:2811
daBaseNpc_path_c()
Definition d_a_npc.cpp:2798
Vec getPntPos(u16)
Definition d_a_npc.cpp:2860
u8 field_0xa13[17]
Definition d_a_npc.h:743
f32 field_0x0
Definition d_a_npc.h:736
u16 getIdx()
Definition d_a_npc.cpp:2850
u16 mIdx
Definition d_a_npc.h:741
dPath * mpRoomPath
Definition d_a_npc.h:737
s32 chkPnt(cXyz)
Definition d_a_npc.cpp:2839
void setNextPnt()
Definition d_a_npc.cpp:2845
void setIdx(u16)
Definition d_a_npc.cpp:2855
u16 field_0xa0e
Definition d_a_npc.h:740
BOOL isPath()
Definition d_a_npc.cpp:2803
s8 mDirection
Definition d_a_npc.h:742
Definition d_a_npc.h:881
void entry(unsigned int)
Definition d_a_npc.cpp:3371
void initialize()
Definition d_a_npc.cpp:3360
fpc_ProcID mActorID
Definition d_a_npc.h:883
virtual ~daNpcF_ActorMngr_c()
Definition d_a_npc.h:894
fopAc_ac_c * getActorP()
Definition d_a_npc.cpp:3381
void remove()
Definition d_a_npc.cpp:3376
daNpcF_ActorMngr_c()
Definition d_a_npc.h:886
Definition d_a_npc.h:1225
cXyz * mAttnPos
Definition d_a_npc.h:1228
void calcMoveDisAngle(int, cXyz *, csXyz *, cXyz, int, BOOL)
Definition d_a_npc.cpp:3756
csXyz mMaxAngle[4]
Definition d_a_npc.h:1231
void clrRotAngle()
Definition d_a_npc.cpp:3809
bool field_0x94[4]
Definition d_a_npc.h:1233
daNpcF_Lookat_c()
Definition d_a_npc.h:1247
virtual ~daNpcF_Lookat_c()
Definition d_a_npc.h:1248
void adjustMoveDisAngle(s16 &, s16, s16, s16)
Definition d_a_npc.cpp:3679
void setRotAngle()
Definition d_a_npc.cpp:3793
cXyz mJointPos[4]
Definition d_a_npc.h:1227
csXyz mRotAngle[4]
Definition d_a_npc.h:1232
void setParam(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, s16, cXyz *)
Definition d_a_npc.cpp:3590
cXyz * getAttnPos()
Definition d_a_npc.h:1249
void setAttnPos(cXyz *i_attnPos)
Definition d_a_npc.h:1250
void calc(fopAc_ac_c *, Mtx, csXyz **, BOOL, int, BOOL)
Definition d_a_npc.cpp:3627
csXyz mAngularMoveDis[4]
Definition d_a_npc.h:1229
csXyz mMinAngle[4]
Definition d_a_npc.h:1230
void initCalc(fopAc_ac_c *, Mtx, cXyz *, csXyz *, f32 *, cXyz &, BOOL)
Definition d_a_npc.cpp:3701
void initialize()
Definition d_a_npc.cpp:3576
void update(cXyz *, csXyz *, f32 *)
Definition d_a_npc.cpp:3735
Definition d_a_npc.h:1143
f32 mNowOffsetY
Definition d_a_npc.h:1148
daNpcF_MatAnm_c()
Definition d_a_npc.h:1153
void initialize()
Definition d_a_npc.cpp:3393
void calc(J3DMaterial *) const
Definition d_a_npc.cpp:3403
void offEyeMoveFlag()
Definition d_a_npc.h:1160
f32 mNowOffsetX
Definition d_a_npc.h:1147
u8 field_0x105
Definition d_a_npc.h:1150
u8 mEyeMoveFlag
Definition d_a_npc.h:1149
void setNowOffsetX(float i_nowOffsetX)
Definition d_a_npc.h:1157
void onEyeMoveFlag()
Definition d_a_npc.h:1159
f32 field_0xF4
Definition d_a_npc.h:1145
~daNpcF_MatAnm_c()
Definition d_a_npc.cpp:5288
void setNowOffsetY(float i_nowOffsetY)
Definition d_a_npc.h:1158
f32 field_0xF8
Definition d_a_npc.h:1146
Definition d_a_npc.h:1253
virtual bool Delete()
Definition d_a_npc.cpp:5252
virtual bool IsDelete()
Definition d_a_npc.cpp:5268
virtual bool CreateHeap()
Definition d_a_npc.cpp:5242
~daNpcF_MoveBgActor_c()
Definition d_a_npc.cpp:5182
virtual bool Execute(f32(**)[3][4])
Definition d_a_npc.cpp:5257
virtual bool ToFore()
Definition d_a_npc.cpp:5273
virtual bool ToBack()
Definition d_a_npc.cpp:5278
virtual bool Draw()
Definition d_a_npc.cpp:5262
virtual bool Create()
Definition d_a_npc.cpp:5247
Definition d_a_npc.h:1181
void setRange(f32 i_range)
Definition d_a_npc.h:1222
void initialize()
Definition d_a_npc.cpp:3454
BOOL getBeforePos(cXyz &)
Definition d_a_npc.cpp:3528
BOOL setNextIdx()
Definition d_a_npc.cpp:3507
int getIdx()
Definition d_a_npc.h:1213
u8 mIsReversed
Definition d_a_npc.h:1184
f32 mPosDst
Definition d_a_npc.h:1188
void onReverse()
Definition d_a_npc.h:1220
int getBeforeIdx()
Definition d_a_npc.cpp:3520
int setPathInfo(u8, s8, u8)
Definition d_a_npc.cpp:3468
BOOL getDstPos(cXyz, cXyz &)
Definition d_a_npc.cpp:3549
int getNextIdx()
Definition d_a_npc.cpp:3512
void setIdx(int i_idx)
Definition d_a_npc.h:1214
bool mIsClosed
Definition d_a_npc.h:1185
BOOL chkClose()
Definition d_a_npc.h:1218
virtual ~daNpcF_Path_c()
Definition d_a_npc.h:1211
u8 getArg0(int i_idx)
Definition d_a_npc.h:1216
int getArg0()
Definition d_a_npc.h:1215
BOOL chkPassedDst(cXyz)
Definition d_a_npc.cpp:3493
cXyz mPosition
Definition d_a_npc.h:1190
f32 field_0x10
Definition d_a_npc.h:1189
BOOL chkPassed(cXyz)
Definition d_a_npc.cpp:3486
daNpcF_SPCurve_c mSPCurve
Definition d_a_npc.h:1191
BOOL chkReverse()
Definition d_a_npc.h:1219
BOOL getNextPos(cXyz &)
Definition d_a_npc.cpp:3539
daNpcF_Path_c()
Definition d_a_npc.h:1207
Vec getPntPos(int i_idx)
Definition d_a_npc.h:1217
dPath * mpRoomPath
Definition d_a_npc.h:1186
void reverse()
Definition d_a_npc.cpp:3498
dPath * getPathInfo()
Definition d_a_npc.h:1221
u16 mIdx
Definition d_a_npc.h:1183
f32 mRange
Definition d_a_npc.h:1187
void setNextIdxDst(cXyz)
Definition d_a_npc.cpp:3567
Definition d_a_npc.h:1163
virtual ~daNpcF_SPCurve_c()
Definition d_a_npc.h:1178
bool mIsReversed
Definition d_a_npc.h:1167
void initialize(dPath *, int)
Definition d_a_npc.cpp:3435
u16 field_0x02
Definition d_a_npc.h:1166
dPnt mPoints[96]
Definition d_a_npc.h:1169
daNpcF_SPCurve_c()
Definition d_a_npc.h:1174
bool mIsClosed
Definition d_a_npc.h:1168
u16 mNurbs
Definition d_a_npc.h:1165
Definition d_a_npc.h:897
bool mOrderNewEvt
Definition d_a_npc.h:975
u32 mAnmFlags
Definition d_a_npc.h:950
void playExpressionAnm(daNpcF_c::daNpcF_anmPlayData ***)
Definition d_a_npc.cpp:4300
bool mOrderSpeakEvt
Definition d_a_npc.h:971
void setDamage(int, int, int)
Definition d_a_npc.cpp:4435
int ctrlMsgAnm(int &, int &, fopAc_ac_c *, BOOL)
Definition d_a_npc.cpp:4454
cXyz field_0x8c0
Definition d_a_npc.h:916
virtual ~daNpcF_c()
Definition d_a_npc.h:1084
s16 field_0x992
Definition d_a_npc.h:946
BOOL hitChk2(dCcD_Cyl *, BOOL, BOOL)
Definition d_a_npc.cpp:4408
csXyz mCurAngle
Definition d_a_npc.h:920
u8 getDistTableIdx(int, int)
Definition d_a_npc.cpp:4721
s16 field_0x990
Definition d_a_npc.h:945
J3DAnmTexPattern * getTexPtrnAnmP(char *, int)
Definition d_a_npc.cpp:4121
bool mTwilight
Definition d_a_npc.h:982
cXyz mHeadPos
Definition d_a_npc.h:919
bool field_0x9ec
Definition d_a_npc.h:974
bool field_0x9eb
Definition d_a_npc.h:973
u16 mMotionLoops
Definition d_a_npc.h:967
int mTotalDamageTimer
Definition d_a_npc.h:933
J3DAnmTevRegKey * getTevRegKeyAnmP(char *, int)
Definition d_a_npc.cpp:4132
f32 mTurnStepNum
Definition d_a_npc.h:939
s16 mMotionPhase
Definition d_a_npc.h:963
int mCutType
Definition d_a_npc.h:927
int mStaffID
Definition d_a_npc.h:926
static dCcD_SrcCyl mCcDCyl
Definition d_a_npc.h:950
u8 field_0x9f6
Definition d_a_npc.h:984
void setRoomNo()
Definition d_a_npc.cpp:4179
f32 mExpressionMorfOverride
Definition d_a_npc.h:940
void setIntFlowNodeNo(int i_flowNodeNo)
Definition d_a_npc.h:1115
int mAttnIdx
Definition d_a_npc.h:928
s16 mTurnStartAngle
Definition d_a_npc.h:947
mDoExt_btkAnm mBtkAnm
Definition d_a_npc.h:902
BOOL step(s16, int, int, int)
Definition d_a_npc.cpp:4674
BOOL talkProc(int *, BOOL, fopAc_ac_c **)
Definition d_a_npc.cpp:4604
virtual void setMotion(int i_motion, f32 i_morf, int i_restart)
Definition d_a_npc.cpp:5232
BOOL setBckAnm(J3DAnmTransform *i_bck, f32 i_rate, int i_attr, int i_start, int i_end, bool i_modify)
Definition d_a_npc.cpp:4146
f32 mExpressionMorf
Definition d_a_npc.h:941
BOOL chkActorInTalkArea(fopAc_ac_c *i_actorCheck, fopAc_ac_c *i_actorArea)
Definition d_a_npc.h:1107
bool mIsDamaged
Definition d_a_npc.h:978
bool field_0x9ee
Definition d_a_npc.h:976
u8 field_0x9ef
Definition d_a_npc.h:977
mDoExt_McaMorfSO * mpMorf
Definition d_a_npc.h:899
BOOL chkPlayerInTalkArea(fopAc_ac_c *i_actor)
Definition d_a_npc.h:1110
static dCcD_SrcSph mCcDSph
Definition d_a_npc.h:965
dBgS_AcchCir mAcchCir
Definition d_a_npc.h:906
AnmFlags
Definition d_a_npc.h:997
@ ANM_FLAG_400
Definition d_a_npc.h:1008
@ ANM_PAUSE_MORF
Definition d_a_npc.h:998
@ ANM_EXPRESSION_FLAGS
Definition d_a_npc.h:1015
@ ANM_PLAY_BTP
Definition d_a_npc.h:1007
@ ANM_FLAG_800
Definition d_a_npc.h:1009
@ ANM_PAUSE_BPK
Definition d_a_npc.h:1011
@ ANM_PLAY_BCK
Definition d_a_npc.h:1006
@ ANM_PAUSE_ALL
Definition d_a_npc.h:1017
@ ANM_PLAY_BTK
Definition d_a_npc.h:1002
@ ANM_PAUSE_BRK
Definition d_a_npc.h:1000
@ ANM_PAUSE_BTK
Definition d_a_npc.h:999
@ ANM_PAUSE_EXPRESSION
Definition d_a_npc.h:1010
@ ANM_PAUSE_BCK
Definition d_a_npc.h:1004
@ ANM_PLAY_BRK
Definition d_a_npc.h:1003
@ ANM_PAUSE_BTP
Definition d_a_npc.h:1005
@ ANM_PLAY_MORF
Definition d_a_npc.h:1001
@ ANM_PLAY_BPK
Definition d_a_npc.h:1012
@ ANM_MOTION_FLAGS
Definition d_a_npc.h:1013
csXyz mHeadAngle
Definition d_a_npc.h:923
f32 field_0x984[3]
Definition d_a_npc.h:944
int mDamageTimer
Definition d_a_npc.h:932
int mTurnMode
Definition d_a_npc.h:938
s16 field_0x9d0
Definition d_a_npc.h:958
cXyz field_0x884
Definition d_a_npc.h:911
s16 mExpression
Definition d_a_npc.h:965
u8 field_0x9f1
Definition d_a_npc.h:979
cXyz field_0x8d8
Definition d_a_npc.h:918
BOOL execute()
Definition d_a_npc.cpp:3818
virtual BOOL ctrlBtk()
Definition d_a_npc.cpp:5217
u32 mPolySound
Definition d_a_npc.h:954
void onInterrupt(u8 param_0)
Definition d_a_npc.h:1117
virtual bool setExpressionAnm(int i_idx, bool i_modify)
Definition d_a_npc.cpp:5222
BOOL turn(s16, f32, int)
Definition d_a_npc.cpp:4638
fopAc_ac_c * getAttnActorP(BOOL, fpcLyIt_JudgeFunc, f32, f32, f32, f32, s16, int, BOOL)
Definition d_a_npc.cpp:4745
cXyz field_0x89c
Definition d_a_npc.h:913
cXyz field_0x8a8
Definition d_a_npc.h:914
BOOL chkPointInArea(cXyz, cXyz, f32, f32, f32, s16)
Definition d_a_npc.cpp:4843
static void * srchAttnActor1(void *, void *)
Definition d_a_npc.cpp:3970
static u8 const mCcDObjInfo[48]
Definition d_a_npc.h:5313
s8 mReverb
Definition d_a_npc.h:970
BOOL chkActorInArea(fopAc_ac_c *, cXyz, cXyz, s16)
Definition d_a_npc.cpp:4544
virtual void setAttnPos()
Definition d_a_npc.cpp:5187
dBgS_LinChk field_0xad4
Definition d_a_npc.h:988
fopAc_ac_c * getEvtAreaTagP(int, int)
Definition d_a_npc.cpp:4727
void setAngle(s16)
Definition d_a_npc.cpp:4710
int mAttnActorTimer[5]
Definition d_a_npc.h:930
f32 mMotionMorfOverride
Definition d_a_npc.h:942
dMsgFlow_c mFlow
Definition d_a_npc.h:985
cXyz field_0x9b8
Definition d_a_npc.h:956
BOOL setBrkAnm(J3DAnmTevRegKey *i_brk, J3DModelData *i_modelData, f32 i_rate, int i_attr)
Definition d_a_npc.cpp:4167
BOOL chkActorInSpeakArea(fopAc_ac_c *i_actorCheck, fopAc_ac_c *i_actorArea)
Definition d_a_npc.h:1101
static fopAc_ac_c * mFindActorPList[100]
Definition d_a_npc.h:1122
s16 mExpressionPhase
Definition d_a_npc.h:961
cXyz getAttentionPos(fopAc_ac_c *)
Definition d_a_npc.cpp:4871
s16 mExpressionPrevPhase
Definition d_a_npc.h:962
csXyz field_0x908[3]
Definition d_a_npc.h:924
BOOL chkPlayerInSpeakArea(fopAc_ac_c *i_actor)
Definition d_a_npc.h:1104
u16 mExpressionLoops
Definition d_a_npc.h:968
virtual void setExpression(int i_expression, f32 i_morf)
Definition d_a_npc.cpp:5237
LookMode
Definition d_a_npc.h:1021
@ LOOK_ACTOR
Definition d_a_npc.h:1026
@ LOOK_NONE
Definition d_a_npc.h:1022
@ LOOK_PLAYER
Definition d_a_npc.h:1024
@ LOOK_ATTN
Definition d_a_npc.h:1027
@ LOOK_RESET
Definition d_a_npc.h:1023
@ LOOK_PLAYER_TALK
Definition d_a_npc.h:1025
void setCutType(int i_cutType)
Definition d_a_npc.h:1116
static void * srchActor(void *, void *)
Definition d_a_npc.cpp:3986
J3DAnmTextureSRTKey * getTexSRTKeyAnmP(char *, int)
Definition d_a_npc.cpp:4127
static void tgHitCallBack(fopAc_ac_c *, dCcD_GObjInf *, fopAc_ac_c *, dCcD_GObjInf *)
Definition d_a_npc.cpp:3951
bool field_0x9ea
Definition d_a_npc.h:972
virtual void setParam()
Definition d_a_npc.cpp:5202
u32 field_0x9a4
Definition d_a_npc.h:952
cXyz field_0x890
Definition d_a_npc.h:912
cXyz field_0x9c4
Definition d_a_npc.h:957
virtual bool setMotionAnm(int i_idx, f32 i_morf)
Definition d_a_npc.cpp:5227
BOOL chkEndAnm(f32)
Definition d_a_npc.cpp:4186
cXyz mLookPos
Definition d_a_npc.h:910
void initialize()
Definition d_a_npc.cpp:4034
void changeEvent(char *, char *, u16, u16)
Definition d_a_npc.cpp:4515
virtual void drawOtherMdls()
Definition d_a_npc.cpp:5207
cXyz mLookatPos[3]
Definition d_a_npc.h:909
BOOL chkActorInSight(fopAc_ac_c *, f32)
Definition d_a_npc.cpp:4527
int mMsgTimer
Definition d_a_npc.h:931
u32 mHitodamaParticleKey[2]
Definition d_a_npc.h:953
static s32 mFindCount
Definition d_a_npc.h:1123
s16 mMotion
Definition d_a_npc.h:966
csXyz mOldAngle
Definition d_a_npc.h:921
virtual void setCollisions()
Definition d_a_npc.h:1092
csXyz mEyeAngle
Definition d_a_npc.h:922
dCcD_Stts mCcStts
Definition d_a_npc.h:905
static s16 mSrchActorName
Definition d_a_npc.h:1124
daNpcF_ActorMngr_c mAttnActor[5]
Definition d_a_npc.h:908
void playMotionAnm(daNpcF_c::daNpcF_anmPlayData ***)
Definition d_a_npc.cpp:4335
int mTurnAmount
Definition d_a_npc.h:937
BOOL chkFindPlayer2(BOOL, s16)
Definition d_a_npc.cpp:4882
BOOL initTalk(int, fopAc_ac_c **)
Definition d_a_npc.cpp:4593
BOOL setBtpAnm(J3DAnmTexPattern *i_btp, J3DModelData *i_modelData, f32 i_rate, int i_attr)
Definition d_a_npc.cpp:4153
mDoExt_btpAnm mBtpAnm
Definition d_a_npc.h:901
int mBtpTimer
Definition d_a_npc.h:936
s16 mMotionPrevPhase
Definition d_a_npc.h:964
s16 mTurnTargetAngle
Definition d_a_npc.h:948
BOOL checkHide()
Definition d_a_npc.h:1113
s16 mEventIdx
Definition d_a_npc.h:960
mDoExt_brkAnm mBrkAnm
Definition d_a_npc.h:903
void setEnvTevColor()
Definition d_a_npc.cpp:4173
f32 mGroundH
Definition d_a_npc.h:943
virtual BOOL main()
Definition d_a_npc.cpp:5197
daNpcF_ActorMngr_c field_0x824
Definition d_a_npc.h:907
mDoExt_bckAnm mBckAnm
Definition d_a_npc.h:900
void setHitodamaPrtcl()
Definition d_a_npc.cpp:4913
virtual BOOL drawDbgInfo()
Definition d_a_npc.cpp:5212
virtual void setMtx2()
Definition d_a_npc.cpp:4013
int draw(BOOL, BOOL, f32, _GXColorS10 *, BOOL)
Definition d_a_npc.cpp:3867
BOOL chkActorInSight2(fopAc_ac_c *, f32, s16)
Definition d_a_npc.cpp:4826
virtual void setMtx()
Definition d_a_npc.cpp:3997
bool mHide
Definition d_a_npc.h:980
s16 field_0x9d2
Definition d_a_npc.h:959
J3DAnmTransformKey * getTrnsfrmKeyAnmP(char *, int)
Definition d_a_npc.cpp:4116
u8 field_0x9f5
Definition d_a_npc.h:983
int mAttnChangeTimer
Definition d_a_npc.h:929
u16 field_0x998
Definition d_a_npc.h:949
dBgS_ObjAcch mAcch
Definition d_a_npc.h:904
void orderEvent(int, char *, u16, u16, u8, u16)
Definition d_a_npc.cpp:4498
BOOL setBtkAnm(J3DAnmTextureSRTKey *i_btk, J3DModelData *i_modelData, f32 i_rate, int i_attr)
Definition d_a_npc.cpp:4160
u8 field_0x9f3
Definition d_a_npc.h:981
u16 mOrderEvtNo
Definition d_a_npc.h:969
void setLookatMtx(int, int *, f32)
Definition d_a_npc.cpp:4368
int mEventTimer
Definition d_a_npc.h:935
cXyz field_0x8b4
Definition d_a_npc.h:915
virtual bool setExpressionBtp(int i_idx)
Definition d_a_npc.cpp:5283
int field_0x95c
Definition d_a_npc.h:934
csXyz mLookatAngle[3]
Definition d_a_npc.h:925
cBgS_GndChk mGndChk
Definition d_a_npc.h:986
BOOL setMcaMorfAnm(J3DAnmTransformKey *i_anm, f32 i_rate, f32 i_morf, int i_attr, int i_start, int i_end)
Definition d_a_npc.cpp:4138
void setIntDemander(fopAc_ac_c *i_actor)
Definition d_a_npc.h:1114
BOOL chkActorInAttnArea(fopAc_ac_c *, fopAc_ac_c *, int)
Definition d_a_npc.cpp:4575
cXyz field_0x8cc
Definition d_a_npc.h:917
virtual void adjustShapeAngle()
Definition d_a_npc.cpp:5192
int mFlowNodeNo
Definition d_a_npc.h:955
u32 mShadowKey
Definition d_a_npc.h:951
dBgS_GndChk field_0xa80
Definition d_a_npc.h:987
BOOL playAllAnm()
Definition d_a_npc.cpp:4221
Definition d_a_npc.h:24
fopAc_ac_c * getActorP()
Definition d_a_npc.cpp:39
void initialize()
Definition d_a_npc.cpp:22
virtual ~daNpcT_ActorMngr_c()
Definition d_a_npc.h:36
daNpcT_ActorMngr_c()
Definition d_a_npc.h:34
fpc_ProcID mActorID
Definition d_a_npc.h:26
void entry(fopAc_ac_c *)
Definition d_a_npc.cpp:28
void remove()
Definition d_a_npc.cpp:34
Definition d_a_npc.h:290
int checkStagger()
Definition d_a_npc.h:305
s16 field_0x16
Definition d_a_npc.h:315
s16 getAngleX(int idx)
Definition d_a_npc.h:307
void setParam(fopAc_ac_c *, fopAc_ac_c *, s16)
Definition d_a_npc.cpp:856
csXyz field_0x0[2]
Definition d_a_npc.h:312
void calc(BOOL)
Definition d_a_npc.cpp:866
s16 mStagger
Definition d_a_npc.h:314
int checkRebirth()
Definition d_a_npc.h:309
s16 getAngleZ(int idx)
Definition d_a_npc.h:308
f32 field_0xc[2]
Definition d_a_npc.h:313
void initialize()
Definition d_a_npc.h:295
bool mRebirth
Definition d_a_npc.h:316
Definition d_a_npc.h:350
void Set(f32 param_1)
Definition d_a_npc.h:361
virtual ~daNpcT_Hermite_c()
Definition d_a_npc.h:358
f32 field_0x0c
Definition d_a_npc.h:355
f32 field_0x08
Definition d_a_npc.h:354
f32 field_0x04
Definition d_a_npc.h:353
f32 field_0x10
Definition d_a_npc.h:356
f32 field_0x00
Definition d_a_npc.h:352
Definition d_a_npc.h:110
u8 field_0x156
Definition d_a_npc.h:135
void clrDirectFlag()
Definition d_a_npc.h:223
csXyz mEyeAngle
Definition d_a_npc.h:126
csXyz field_0x132
Definition d_a_npc.h:127
void lookCamera(u8 isDirect)
Definition d_a_npc.h:268
cXyz mMaxRad[3]
Definition d_a_npc.h:120
cXyz mMinRad[3]
Definition d_a_npc.h:119
void lookPos(cXyz *i_pos, u8 i_direct)
Definition d_a_npc.h:281
void lookNone(u8 isDirect)
Definition d_a_npc.h:258
daNpcT_ActorMngr_c mActrMngr
Definition d_a_npc.h:112
void initialize()
Definition d_a_npc.cpp:545
daNpcT_JntAnm_c()
Definition d_a_npc.h:218
cXyz field_0x120
Definition d_a_npc.h:125
s16 getEyeAngleY()
Definition d_a_npc.h:178
cXyz * mAttnPosP
Definition d_a_npc.h:115
void setEyeAngleY(cXyz param_1, s16 param_2, BOOL param_3, f32 param_4, s16 param_5)
Definition d_a_npc.h:159
void calcJntRad(f32, f32, f32)
Definition d_a_npc.cpp:828
int field_0x13c
Definition d_a_npc.h:129
cXyz mAttnPos
Definition d_a_npc.h:114
cXyz mRad[3]
Definition d_a_npc.h:121
int getTime()
Definition d_a_npc.h:214
cXyz mEyePos
Definition d_a_npc.h:123
s16 getEyeAngleX()
Definition d_a_npc.h:177
virtual ~daNpcT_JntAnm_c()
Definition d_a_npc.h:221
csXyz field_0x150
Definition d_a_npc.h:134
LookMode
Definition d_a_npc.h:246
@ LOOK_CAMERA
Definition d_a_npc.h:251
@ LOOK_POS
Definition d_a_npc.h:250
@ LOOK_MODE_5
Definition d_a_npc.h:252
@ LOOK_ACTOR
Definition d_a_npc.h:249
@ LOOK_MODE_7
Definition d_a_npc.h:254
@ LOOK_MODE_6
Definition d_a_npc.h:253
@ LOOK_PLAYER
Definition d_a_npc.h:248
@ LOOK_NONE
Definition d_a_npc.h:247
@ LOOK_MODE_8
Definition d_a_npc.h:255
s16 getJntRadX2S(int param_0)
Definition d_a_npc.h:200
cXyz field_0xe4[3]
Definition d_a_npc.h:122
f32 getJntRadX(int param_0)
Definition d_a_npc.h:180
void setEyeAngleX(cXyz param_1, f32 param_2, s16 param_3)
Definition d_a_npc.h:146
s16 getJntRadY2S(int param_0)
Definition d_a_npc.h:204
int mBaseTimer
Definition d_a_npc.h:130
cXyz mHeadPos
Definition d_a_npc.h:124
cXyz field_0x24
Definition d_a_npc.h:116
void clrRad()
Definition d_a_npc.h:208
cXyz mJntPos[3]
Definition d_a_npc.h:117
f32 field_0x14c
Definition d_a_npc.h:133
void setParam(fopAc_ac_c *, J3DModel *, cXyz *, int, int, int, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, cXyz *)
Definition d_a_npc.cpp:552
void lookPlayer(u8 isDirect)
Definition d_a_npc.h:263
void lookActor(fopAc_ac_c *param_1, f32 param_2, u8 isDirect)
Definition d_a_npc.h:273
u8 mDirectFlag
Definition d_a_npc.h:136
cXyz field_0x54[3]
Definition d_a_npc.h:118
int getMode()
Definition d_a_npc.h:224
int mTimer
Definition d_a_npc.h:131
u8 field_0x158
Definition d_a_npc.h:137
void calc(f32)
Definition d_a_npc.cpp:750
int mMode
Definition d_a_npc.h:128
f32 field_0x148
Definition d_a_npc.h:132
cXyz mPos
Definition d_a_npc.h:113
void setDirect(u8 isDirect)
Definition d_a_npc.h:238
f32 getJntRadY(int param_0)
Definition d_a_npc.h:190
int setMode(int mode, BOOL param_2)
Definition d_a_npc.h:226
Definition d_a_npc.h:39
f32 field_0xF4
Definition d_a_npc.h:41
void initialize()
Definition d_a_npc.cpp:51
virtual ~daNpcT_MatAnm_c()
Definition d_a_npc.h:51
daNpcT_MatAnm_c()
Definition d_a_npc.h:49
virtual void calc(J3DMaterial *) const
Definition d_a_npc.cpp:61
void offEyeMoveFlg()
Definition d_a_npc.h:57
void setNowOffsetX(f32 i_value)
Definition d_a_npc.h:54
f32 mNowOffsetX
Definition d_a_npc.h:43
void setMorfFrm(u8 i_value)
Definition d_a_npc.h:58
void onEyeMoveFlg()
Definition d_a_npc.h:56
void setNowOffsetY(f32 i_value)
Definition d_a_npc.h:55
f32 mNowOffsetY
Definition d_a_npc.h:44
u8 mEyeMoveFlg
Definition d_a_npc.h:45
f32 field_0xF8
Definition d_a_npc.h:42
u8 mMorfFrm
Definition d_a_npc.h:46
s8 mLoopCount
Definition d_a_npc.h:67
s16 mAnmIdx
Definition d_a_npc.h:65
Definition d_a_npc.h:61
int play(u16, int *, f32 *)
Definition d_a_npc.cpp:101
int mOffset
Definition d_a_npc.h:100
f32 mInitialMorf
Definition d_a_npc.h:103
int mStepNum
Definition d_a_npc.h:98
void initialize()
Definition d_a_npc.cpp:91
int getOffset()
Definition d_a_npc.h:81
s32 checkEndSequence()
Definition d_a_npc.cpp:137
int mStepNo
Definition d_a_npc.h:101
int getStepNo()
Definition d_a_npc.h:82
int getNo()
Definition d_a_npc.h:80
daNpcT_MotionSeqMngr_c(sequenceStepData_c const *param_1, int param_2)
Definition d_a_npc.h:74
virtual ~daNpcT_MotionSeqMngr_c()
Definition d_a_npc.h:107
void setNo(int i_index, f32 i_morf, BOOL i_reset, int i_offset)
Definition d_a_npc.h:83
bool checkEntryNewMotion()
Definition d_a_npc.h:79
int mNo
Definition d_a_npc.h:99
int mPrevStepNo
Definition d_a_npc.h:102
sequenceStepData_c const * mpSeqData
Definition d_a_npc.h:97
bool mEndSequence
Definition d_a_npc.h:104
Definition d_a_npc.h:372
Vec getPntPos(int i_idx)
Definition d_a_npc.h:399
u8 mIsClosed
Definition d_a_npc.h:382
u16 mIdx
Definition d_a_npc.h:379
int chkClose()
Definition d_a_npc.h:401
f32 field_0x18
Definition d_a_npc.h:378
f32 field_0x14
Definition d_a_npc.h:377
u8 mDirection
Definition d_a_npc.h:381
int chkPassed2(cXyz, cXyz *, int, int)
Definition d_a_npc.cpp:400
virtual ~daNpcT_Path_c()
Definition d_a_npc.h:397
void initialize()
Definition d_a_npc.cpp:206
void reverse()
Definition d_a_npc.cpp:258
int setPathInfo(u8, s8, u8)
Definition d_a_npc.cpp:222
u16 & getIdx()
Definition d_a_npc.h:413
int getDstPosH(cXyz, cXyz *, int, int)
Definition d_a_npc.cpp:305
int getDstPos(cXyz, cXyz *, int)
Definition d_a_npc.cpp:280
int setNextIdx(int)
Definition d_a_npc.cpp:269
u16 getNumPnts()
Definition d_a_npc.h:408
void hermite(cXyz &, cXyz &, cXyz &, cXyz &, daNpcT_Hermite_c &, cXyz &)
Definition d_a_npc.cpp:193
f32 field_0x10
Definition d_a_npc.h:376
bool chkReverse()
Definition d_a_npc.h:406
cXyz mPosition
Definition d_a_npc.h:375
int setNextPathInfo(s8, u8)
Definition d_a_npc.cpp:241
daNpcT_Path_c()
Definition d_a_npc.h:394
int chkPassed1(cXyz, int)
Definition d_a_npc.cpp:340
u16 field_0x1E
Definition d_a_npc.h:380
dPath * mpRoomPath
Definition d_a_npc.h:374
Definition d_a_npc.h:418
cXyz getAttnPos(fopAc_ac_c *)
Definition d_a_npc.cpp:2192
virtual void changeBck(int *, int *)
Definition d_a_npc.h:640
f32 field_0xdfc
Definition d_a_npc.h:495
int setBtkAnm(J3DAnmTextureSRTKey *, J3DModelData *, f32, int)
Definition d_a_npc.cpp:1076
int setBpkAnm(J3DAnmColor *, J3DModelData *, f32, int)
Definition d_a_npc.cpp:1088
virtual BOOL evtCutProc()
Definition d_a_npc.h:612
dBgS_GndChk field_0xa8c
Definition d_a_npc.h:445
dCcD_Stts field_0xa40
Definition d_a_npc.h:439
J3DAnmTexPattern * getTexPtrnAnmP(char const *, int)
Definition d_a_npc.cpp:1025
fopAc_ac_c * getShopItemTagP()
Definition d_a_npc.cpp:2421
dBgS_ObjAcch mAcch
Definition d_a_npc.h:431
virtual void afterMoved()
Definition d_a_npc.h:617
BOOL chkFindActor(fopAc_ac_c *, BOOL, s16)
Definition d_a_npc.cpp:2089
virtual void beforeMove()
Definition d_a_npc.h:616
mDoExt_btpAnm mBtpAnm
Definition d_a_npc.h:427
virtual s32 getEyeballMaterialNo()
Definition d_a_npc.h:605
f32 field_0xde8
Definition d_a_npc.h:490
void onHide()
Definition d_a_npc.h:649
J3DAnmColor * getColorAnmP(char const *, int)
Definition d_a_npc.cpp:1040
virtual ~daNpcT_c()
Definition d_a_npc.h:593
int execute()
Definition d_a_npc.cpp:1123
void show()
Definition d_a_npc.h:652
virtual s32 getBackboneJointNo()
Definition d_a_npc.h:598
u8 field_0xe2c
Definition d_a_npc.h:512
dBgS_AcchCir mAcchCir
Definition d_a_npc.h:433
char ** mpArcNames
Definition d_a_npc.h:423
virtual bool afterSetFaceMotionAnm(int, int, f32, int)
Definition d_a_npc.h:635
void setEnvTevColor()
Definition d_a_npc.cpp:1279
cXyz mFootRPos
Definition d_a_npc.h:454
static s16 mSrchName
Definition d_a_npc.h:673
static dCcD_SrcGObjInf const mCcDObjData
Definition d_a_npc.h:2693
void setMtx()
Definition d_a_npc.cpp:1458
virtual void clrParam()
Definition d_a_npc.cpp:1843
static void tgHitCallBack(fopAc_ac_c *, dCcD_GObjInf *, fopAc_ac_c *, dCcD_GObjInf *)
Definition d_a_npc.cpp:979
int draw(BOOL, BOOL, f32, _GXColorS10 *, f32, BOOL, BOOL, BOOL)
Definition d_a_npc.cpp:1180
dCcD_Stts mCcStts
Definition d_a_npc.h:432
virtual void setAttnPos()
Definition d_a_npc.h:618
AnmFlags
Definition d_a_npc.h:685
@ ANM_FLAG_1000
Definition d_a_npc.h:698
@ ANM_PAUSE_BCK
Definition d_a_npc.h:690
@ ANM_PAUSE_BPK
Definition d_a_npc.h:689
@ ANM_PLAY_BCK
Definition d_a_npc.h:696
@ ANM_PAUSE_MORF
Definition d_a_npc.h:686
@ ANM_PAUSE_BTK
Definition d_a_npc.h:687
@ ANM_PAUSE_TIMER_BTP
Definition d_a_npc.h:699
@ ANM_PLAY_BPK
Definition d_a_npc.h:695
@ ANM_FLAG_4000
Definition d_a_npc.h:700
@ ANM_PAUSE_BRK
Definition d_a_npc.h:688
@ ANM_PLAY_BRK
Definition d_a_npc.h:694
@ ANM_PLAY_BTP
Definition d_a_npc.h:697
@ ANM_PLAY_BTK
Definition d_a_npc.h:693
@ ANM_PAUSE_BTP
Definition d_a_npc.h:691
@ ANM_PLAY_MORF
Definition d_a_npc.h:692
BOOL chkPointInArea(cXyz, cXyz, f32, f32, f32, s16)
Definition d_a_npc.cpp:2066
cXyz field_0xd6c
Definition d_a_npc.h:459
int checkEndAnm(f32)
Definition d_a_npc.cpp:1293
bool mCreating
Definition d_a_npc.h:443
virtual s32 getEyeballRMaterialNo()
Definition d_a_npc.h:604
u8 field_0xe38
Definition d_a_npc.h:522
virtual void changeAnm(int *, int *)
Definition d_a_npc.h:639
daNpcT_ActorMngr_c field_0xba0
Definition d_a_npc.h:450
s16 mGroundAngle
Definition d_a_npc.h:478
virtual int drawDbgInfo()
Definition d_a_npc.h:632
u32 mShadowKey
Definition d_a_npc.h:465
virtual BOOL checkChangeEvt()
Definition d_a_npc.h:609
static fopAc_ac_c * mFindActorPtrs[50]
Definition d_a_npc.h:672
BOOL initTalk(int, fopAc_ac_c **)
Definition d_a_npc.cpp:2326
virtual void setCollision()
Definition d_a_npc.h:620
virtual void setAfterTalkMotion()
Definition d_a_npc.h:613
void initialize()
Definition d_a_npc.h:654
u8 field_0xe2a
Definition d_a_npc.h:510
mDoExt_btkAnm mBtkAnm
Definition d_a_npc.h:428
void setCutType(int i_cutType)
Definition d_a_npc.h:648
virtual BOOL evtTalk()
Definition d_a_npc.h:610
u32 mHitodamaPrtclKey[2]
Definition d_a_npc.h:468
s16 mTargetAngle
Definition d_a_npc.h:484
virtual s32 getFootLJointNo()
Definition d_a_npc.h:601
s8 mReverb
Definition d_a_npc.h:504
cXyz field_0xe00
Definition d_a_npc.h:496
static dCcD_SrcCyl mCcDCyl
Definition d_a_npc.h:894
BOOL turn(s16, int, int)
Definition d_a_npc.cpp:2205
cBgS_GndChk mGndChk
Definition d_a_npc.h:435
void setCommander(fopAc_ac_c *param_0)
Definition d_a_npc.h:647
int ctrlMsgAnm(int *, int *, fopAc_ac_c *, int)
Definition d_a_npc.cpp:1537
f32 mAttnFovY
Definition d_a_npc.h:494
daNpcT_motionAnmData_c const * mpMotionAnmData
Definition d_a_npc.h:421
virtual BOOL checkRemoveJoint(int)
Definition d_a_npc.h:597
bool field_0xe26
Definition d_a_npc.h:506
daNpcT_ActorMngr_c mPlayerActorMngr
Definition d_a_npc.h:449
void setAngle(s16)
Definition d_a_npc.cpp:1991
s16 mStepMode
Definition d_a_npc.h:485
int mEventTimer
Definition d_a_npc.h:476
fopAc_ac_c * getNearestActorP(s16)
Definition d_a_npc.cpp:2386
csXyz mCurAngle
Definition d_a_npc.h:460
s16 field_0xe1a
Definition d_a_npc.h:499
virtual void drawGhost()
Definition d_a_npc.h:634
J3DAnmTevRegKey * getTevRegKeyAnmP(char const *, int)
Definition d_a_npc.cpp:1035
J3DAnmTransformKey * getTrnsfrmKeyAnmP(char const *, int)
Definition d_a_npc.cpp:1020
dBgS_LinChk mLinChk
Definition d_a_npc.h:446
virtual s32 getNeckJointNo()
Definition d_a_npc.h:599
fopAc_ac_c * getEvtAreaTagP(int, int)
Definition d_a_npc.cpp:2405
cXyz mOldFootLOffset
Definition d_a_npc.h:457
BOOL chkWolfAction()
Definition d_a_npc.cpp:2127
int mStaffId
Definition d_a_npc.h:470
virtual BOOL evtEndProc()
Definition d_a_npc.h:611
Z2Creature mSound
Definition d_a_npc.h:425
u8 field_0xe37
Definition d_a_npc.h:521
mDoExt_brkAnm mBrkAnm
Definition d_a_npc.h:429
f32 mTurnCount
Definition d_a_npc.h:487
daNpcT_MotionSeqMngr_c mMotionSeqMngr
Definition d_a_npc.h:448
void setPos(cXyz)
Definition d_a_npc.cpp:1972
csXyz field_0xd8a
Definition d_a_npc.h:463
virtual daNpcT_faceMotionAnmData_c getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_1)
Definition d_a_npc.h:637
daNpcT_faceMotionAnmData_c const * mpFaceMotionAnmData
Definition d_a_npc.h:420
u16 mBckLoops
Definition d_a_npc.h:502
csXyz field_0xd7e
Definition d_a_npc.h:461
void setRoomNo()
Definition d_a_npc.cpp:1285
void evtChange()
Definition d_a_npc.cpp:1830
void ctrlMotion()
Definition d_a_npc.cpp:1508
f32 mMorfFrames
Definition d_a_npc.h:442
static dCcD_SrcSph mCcDSph
Definition d_a_npc.h:909
u8 field_0xe35
Definition d_a_npc.h:519
s16 mStartAngle
Definition d_a_npc.h:483
mDoExt_McaMorfSO * mpMorf[2]
Definition d_a_npc.h:424
s16 mFootRPolyAngle
Definition d_a_npc.h:482
bool checkHide()
Definition d_a_npc.h:645
u16 mEvtNo
Definition d_a_npc.h:515
virtual s32 getHeadJointNo()
Definition d_a_npc.h:600
cXyz mOldFootROffset
Definition d_a_npc.h:458
int field_0xdb4
Definition d_a_npc.h:472
csXyz field_0xd84
Definition d_a_npc.h:462
virtual void setFootPos()
Definition d_a_npc.cpp:1706
u16 mMorfLoops
Definition d_a_npc.h:501
virtual void decTmr()
Definition d_a_npc.h:626
int setMcaMorfAnm(J3DAnmTransformKey *, f32, f32, int, int, int)
Definition d_a_npc.cpp:1053
void ctrlFaceMotion()
Definition d_a_npc.cpp:1482
dPaPoT_c field_0x9c0
Definition d_a_npc.h:438
cXyz mFootROffset
Definition d_a_npc.h:456
daNpcT_MotionSeqMngr_c mFaceMotionSeqMngr
Definition d_a_npc.h:447
int setBtpAnm(J3DAnmTexPattern *, J3DModelData *, f32, int)
Definition d_a_npc.cpp:1070
virtual bool setMotionAnm(int, f32, BOOL)
Definition d_a_npc.cpp:1908
virtual BOOL checkChangeJoint(int)
Definition d_a_npc.h:596
int mDamageTimerStart
Definition d_a_npc.h:473
void playAllAnm()
Definition d_a_npc.cpp:1327
void setDamage(int, int, int)
Definition d_a_npc.cpp:2020
virtual bool afterSetMotionAnm(int, int, f32, int)
Definition d_a_npc.h:636
bool mNoDraw
Definition d_a_npc.h:511
cXyz mFootLPos
Definition d_a_npc.h:453
fpc_ProcID mItemId
Definition d_a_npc.h:464
virtual void setFootPrtcl(cXyz *, f32, f32)
Definition d_a_npc.cpp:1729
int mDamageTimer
Definition d_a_npc.h:474
int getActorDistance(fopAc_ac_c *, int, int)
Definition d_a_npc.cpp:2303
f32 mCylH
Definition d_a_npc.h:491
request_of_phase_process_class mPhase[10]
Definition d_a_npc.h:434
virtual void changeBtk(int *, int *)
Definition d_a_npc.h:642
u8 mFootROnGround
Definition d_a_npc.h:508
mDoExt_bckAnm mBckAnm
Definition d_a_npc.h:426
virtual s32 getFootRJointNo()
Definition d_a_npc.h:602
daNpcT_c(daNpcT_faceMotionAnmData_c const *i_faceMotionAnmData, daNpcT_motionAnmData_c const *i_motionAnmData, daNpcT_MotionSeqMngr_c::sequenceStepData_c const *i_faceMotionSequenceData, int i_faceMotionStepNum, daNpcT_MotionSeqMngr_c::sequenceStepData_c const *i_motionSequenceData, int i_motionStepNum, daNpcT_evtData_c const *i_evtData, char **i_arcNames)
Definition d_a_npc.h:526
virtual void afterJntAnm(int)
Definition d_a_npc.h:607
bool mHide
Definition d_a_npc.h:505
virtual void ctrlSubFaceMotion(int)
Definition d_a_npc.h:595
u32 mAnmFlags
Definition d_a_npc.h:466
static void * srchActor(void *, void *)
Definition d_a_npc.cpp:1002
virtual BOOL ctrlBtk()
Definition d_a_npc.cpp:1434
daNpcT_MatAnm_c * mpMatAnm[2]
Definition d_a_npc.h:436
virtual s32 getEyeballLMaterialNo()
Definition d_a_npc.h:603
BOOL step(s16, int, int, int, int)
Definition d_a_npc.cpp:2240
u8 mPreItemNo
Definition d_a_npc.h:514
u16 mMode
Definition d_a_npc.h:503
void hide()
Definition d_a_npc.h:651
u8 field_0xe29
Definition d_a_npc.h:509
int mBtpPauseTimer
Definition d_a_npc.h:475
u8 mFootLOnGround
Definition d_a_npc.h:507
void deleteRes(s8 const *, char const **)
Definition d_a_npc.cpp:1116
daNpcT_JntAnm_c mJntAnm
Definition d_a_npc.h:451
int setBrkAnm(J3DAnmTevRegKey *, J3DModelData *, f32, int)
Definition d_a_npc.cpp:1082
u8 field_0xe34
Definition d_a_npc.h:518
s16 mPlayerAngle
Definition d_a_npc.h:477
s16 mEvtId
Definition d_a_npc.h:500
virtual void changeBtp(int *, int *)
Definition d_a_npc.h:641
virtual BOOL evtProc()
Definition d_a_npc.cpp:1656
u8 field_0xe36
Definition d_a_npc.h:520
void calcSpeedAndAngle(cXyz, BOOL, s16, s16)
Definition d_a_npc.cpp:2279
cXyz field_0xe0c
Definition d_a_npc.h:497
f32 field_0xde0
Definition d_a_npc.h:488
virtual void action()
Definition d_a_npc.h:615
u8 field_0xdd0[2]
Definition d_a_npc.h:481
s16 field_0xe18
Definition d_a_npc.h:498
f32 field_0xa80
Definition d_a_npc.h:441
f32 field_0xde4
Definition d_a_npc.h:489
BOOL srchPlayerActor()
Definition d_a_npc.cpp:2177
virtual int ctrlJoint(J3DJoint *, J3DModel *)
Definition d_a_npc.cpp:1588
daNpcT_evtData_c const * mpEvtData
Definition d_a_npc.h:422
BOOL chkFindWolf(s16, int, int, f32, f32, f32, f32, BOOL)
Definition d_a_npc.cpp:2144
u32 mFlowNodeNo
Definition d_a_npc.h:440
s16 mTurnAmount
Definition d_a_npc.h:486
virtual void setParam()
Definition d_a_npc.h:608
dMsgFlow_c mFlow
Definition d_a_npc.h:437
J3DAnmTransform * getTrnsfrmAnmP(char const *, int)
Definition d_a_npc.cpp:1014
virtual BOOL chkXYItems()
Definition d_a_npc.h:624
Mode
Definition d_a_npc.h:676
@ MODE_4
Definition d_a_npc.h:681
@ MODE_RUN
Definition d_a_npc.h:679
@ MODE_EXIT
Definition d_a_npc.h:680
@ MODE_INVALID
Definition d_a_npc.h:682
@ MODE_ENTER
Definition d_a_npc.h:677
@ MODE_INIT
Definition d_a_npc.h:678
int mCutType
Definition d_a_npc.h:471
int loadRes(s8 const *, char const **)
Definition d_a_npc.cpp:1093
virtual void evtOrder()
Definition d_a_npc.cpp:1808
daNpcT_DmgStagger_c mStagger
Definition d_a_npc.h:452
fopAc_ac_c * hitChk(dCcD_GObjInf *, u32)
Definition d_a_npc.cpp:2000
cXyz mFootLOffset
Definition d_a_npc.h:455
u32 mPolSound
Definition d_a_npc.h:469
virtual bool checkCullDraw()
Definition d_a_npc.cpp:1793
void setHitodamaPrtcl()
Definition d_a_npc.cpp:2436
s16 checkStep()
Definition d_a_npc.h:646
int setBckAnm(J3DAnmTransform *, f32, int, int, int, bool)
Definition d_a_npc.cpp:1046
BOOL chkActorInSight(fopAc_ac_c *, f32, s16)
Definition d_a_npc.cpp:2044
bool field_0xe33
Definition d_a_npc.h:517
BOOL talkProc(int *, BOOL, fopAc_ac_c **, BOOL)
Definition d_a_npc.cpp:2340
J3DAnmTextureSRTKey * getTexSRTKeyAnmP(char const *, int)
Definition d_a_npc.cpp:1030
u32 mMsgId
Definition d_a_npc.h:467
bool mTwilight
Definition d_a_npc.h:444
mDoExt_bpkAnm mBpkAnm
Definition d_a_npc.h:430
bool setFaceMotionAnm(int, bool)
Definition d_a_npc.cpp:1851
bool mSpeakEvent
Definition d_a_npc.h:516
f32 mWallR
Definition d_a_npc.h:492
s16 mFootLPolyAngle
Definition d_a_npc.h:480
u8 field_0xdcc[2]
Definition d_a_npc.h:479
f32 mGroundH
Definition d_a_npc.h:493
void offHide()
Definition d_a_npc.h:650
virtual daNpcT_motionAnmData_c getMotionAnm(daNpcT_motionAnmData_c param_1)
Definition d_a_npc.h:638
virtual void drawOtherMdl()
Definition d_a_npc.h:633
virtual void twilight()
Definition d_a_npc.cpp:1798
static s32 mFindCount
Definition d_a_npc.h:674
bool field_0xe2d
Definition d_a_npc.h:513
Definition m_Do_ext.h:114
Definition m_Do_ext.h:84
static void daPy_getPlayerActorClass()
Definition d_a_mg_rod.cpp:2701
BOOL daNpcT_getPlayerInfoFromPlayerList(int param_0, int i_roomNo, cXyz *o_spawnPos, csXyz *o_angle)
Definition d_a_npc.cpp:2534
BOOL daNpcF_chkTmpBit(u32 i_idx)
Definition d_a_npc.cpp:5077
void daNpcT_offTmpBit(u32 i_idx)
Definition d_a_npc.cpp:2683
u8 daNpcT_getDistTableIdx(int param_0, int param_1)
Definition d_a_npc.cpp:2658
s16 daNpcF_getGroundAngle(cBgS_PolyInfo *, s16)
Definition d_a_npc.cpp:5052
BOOL daNpcT_chkTmpBit(u32 i_idx)
Definition d_a_npc.cpp:2688
void daNpcF_onEvtBit(u32 i_idx)
Definition d_a_npc.cpp:5072
BOOL daNpcF_chkEvtBit(u32 i_idx)
Definition d_a_npc.cpp:5067
void daNpcT_onTmpBit(u32 i_idx)
Definition d_a_npc.cpp:2678
BOOL daNpcF_chkPointInArea(cXyz, cXyz, cXyz, s16)
Definition d_a_npc.cpp:5138
void daNpcF_offTmpBit(u32 i_idx)
Definition d_a_npc.cpp:5087
BOOL daNpcF_pntVsLineSegmentLengthSquare2D(f32 i_pntX, f32 i_pntZ, f32 i_startX, f32 i_startZ, f32 i_endX, f32 i_endZ, f32 *o_projX, f32 *o_projZ, f32 *o_dist2)
Definition d_a_npc.cpp:4947
BOOL daNpcT_chkPointInArea(cXyz param_0, cXyz param_1, cXyz param_2, s16 param_3, BOOL param_4)
Definition d_a_npc.cpp:2502
BOOL daNpcT_chkEvtBit(u32 i_idx)
Definition d_a_npc.cpp:2673
void daNpcT_onEvtBit(u32 i_idx)
Definition d_a_npc.cpp:2663
STATIC_ASSERT(sizeof(daNpcT_c)==0xE40)
BOOL daNpcF_chkPassed(cXyz i_pos, dPnt *i_points, u16 i_idx, u16 i_num, BOOL i_isClosed, BOOL i_isReversed)
Definition d_a_npc.cpp:4982
int daNpcF_getPlayerInfoFromPlayerList(int param_0, int i_roomNo, cXyz &param_2, csXyz &param_3)
Definition d_a_npc.cpp:5093
u8 daNpcF_getDistTableIdx(int param_0, int param_1)
Definition d_a_npc.cpp:5163
BOOL daNpcT_chkDoBtnIsSpeak(fopAc_ac_c *i_ActorP)
Definition d_a_npc.cpp:2551
static char * tmp[5]
Definition d_a_npc_ashB.cpp:231
BOOL dComIfGs_wolfeye_effect_check()
Definition d_com_inf_game.cpp:2456
BOOL dPath_ChkClose(dPath *i_path)
Definition d_path.h:28
int i
Definition e_pow.c:165
@ fopAc_attn_SPEAK_e
Definition f_op_actor.h:95
@ fopAc_attn_TALK_e
Definition f_op_actor.h:93
BOOL fopAcM_IsActor(void *actor)
Definition f_op_actor_mng.h:262
unsigned int fpc_ProcID
Definition f_pc_base.h:10
void *(* fpcLyIt_JudgeFunc)(void *, void *)
Definition f_pc_layer_iter.h:14
@ fpcM_ERROR_PROCESS_ID_e
Definition f_pc_manager.h:12
f32 Mtx[3][4]
Definition mtx.h:22
void * memset(void *dst, int val, size_t n)
Definition __mem.c:85
Definition d_a_hozelda.cpp:36
Definition d_a_hozelda.cpp:45
Definition d_a_npc_fguard.cpp:44
Definition d_a_hozelda.cpp:54
Definition d_a_hozelda.cpp:241
Definition d_a_hozelda.cpp:239
Definition d_a_hozelda.cpp:229
Definition d_a_hozelda.cpp:93
Definition d_a_hozelda.cpp:52
Definition d_a_hozelda.cpp:146
s16 x
Definition c_sxyz.h:7
s16 z
Definition c_sxyz.h:7
s16 y
Definition c_sxyz.h:7
Definition d_a_hozelda.cpp:18
f32 z
Definition mtx.h:11
f32 x
Definition mtx.h:11
f32 y
Definition mtx.h:11
Definition d_a_hozelda.cpp:163
Definition GXStruct.h:31
u8 distances[9]
Definition f_op_actor.h:178
Definition d_a_npc_fguard.cpp:151
Definition d_a_hozelda.cpp:20
void setall(f32 f)
Definition c_xyz.h:98
f32 absXZ() const
Definition c_xyz.h:124
Definition d_a_hozelda.cpp:161
void setall(s16 val)
Definition c_sxyz.h:31
Definition d_a_npc_fguard.cpp:98
Definition d_a_npc_fguard.cpp:115
Definition d_a_npc_fguard.cpp:94
Definition d_a_npc_fguard.cpp:86
Definition d_a_npc_fguard.cpp:81
Definition d_a_npc_fguard.cpp:74
Definition d_cc_d.h:85
Definition d_cc_d.h:92
Definition d_a_npc_fguard.cpp:70
Definition d_path.h:18
u16 m_num
Definition d_path.h:19
dPnt * m_points
Definition d_path.h:25
Definition d_path.h:10
Vec m_position
Definition d_path.h:15
u8 mArg0
Definition d_path.h:14
Definition d_a_npc.h:717
~daBaseNpc_matAnm_c()
Definition d_a_npc.cpp:3295
void calc(J3DMaterial *) const
Definition d_a_npc.cpp:2793
Definition d_a_npc.h:991
f32 morf
Definition d_a_npc.h:993
u16 idx
Definition d_a_npc.h:992
s32 numLoops
Definition d_a_npc.h:994
Definition d_a_npc.h:319
int num
Definition d_a_npc.h:321
const char * eventName
Definition d_a_npc.h:320
Definition d_a_npc.h:324
int mBckAttr
Definition d_a_npc.h:326
int mBckArcIdx
Definition d_a_npc.h:327
int mBtpArcIdx
Definition d_a_npc.h:330
int mBtpAttr
Definition d_a_npc.h:329
int mBckFileIdx
Definition d_a_npc.h:325
int mBtpFileIdx
Definition d_a_npc.h:328
BOOL field_0x18
Definition d_a_npc.h:331
Definition d_a_npc.h:339
int mBtkArcIdx
Definition d_a_npc.h:345
s16 field_0x1a
Definition d_a_npc.h:347
s16 field_0x18
Definition d_a_npc.h:346
int mBckArcIdx
Definition d_a_npc.h:342
int mBckFileIdx
Definition d_a_npc.h:340
int mBtkAttr
Definition d_a_npc.h:344
int mBckAttr
Definition d_a_npc.h:341
int mBtkFileIdx
Definition d_a_npc.h:343
Definition d_a_npc.h:334
int field_0x4
Definition d_a_npc.h:336
int field_0x0
Definition d_a_npc.h:335
Definition d_a_npc.h:13
int fileIdx
Definition d_a_npc.h:14
int arcIdx
Definition d_a_npc.h:15
Definition d_a_npc.h:18
int attr
Definition d_a_npc.h:20
int fileIdx
Definition d_a_npc.h:19
int arcIdx
Definition d_a_npc.h:21
Definition d_a_hozelda.cpp:74
actor_attention_types attention_info
Definition f_op_actor.h:237
Definition d_a_npc_fguard.cpp:23
Definition d_a_hozelda.cpp:56
Definition d_a_hozelda.cpp:47
Definition d_a_hozelda.cpp:40
Definition d_a_hozelda.cpp:14
int BOOL
Definition types.h:30
signed char s8
Definition types.h:4
unsigned long u32
Definition types.h:9
signed short int s16
Definition types.h:6
float f32
Definition types.h:22
unsigned short int u16
Definition types.h:7
signed long s32
Definition types.h:8
unsigned char u8
Definition types.h:5