Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_npc_kn.h
Go to the documentation of this file.
1#ifndef D_A_NPC_KN_H
2#define D_A_NPC_KN_H
3
4#include "d/actor/d_a_npc.h"
5
8 /* 0x8C */ s16 alpha;
9 /* 0x8E */ s16 attack_wait_time;
10 /* 0x90 */ s16 followup_wait_time; // ?
13 /* 0x9C */ f32 warp_distance;
16 /* 0xA8 */ s16 rotation_num;
17 /* 0xAA */ s16 rotation_speed;
20 /* 0xB0 */ f32 move_speed;
21};
22
24public:
25 virtual ~daNpc_Kn_Param_c() {}
27 static const daNpc_Kn_HIOParam m;
28};
29
30#if DEBUG
32public:
34
37
39};
40
41#define NPC_KN_HIO_CLASS daNpc_Kn_HIO_c
42#else
43#define NPC_KN_HIO_CLASS daNpc_Kn_Param_c
44#endif
45
54class daNpc_Kn_c : public fopEn_enemy_c {
55public:
56 typedef int (daNpc_Kn_c::*cutFunc)(int);
57 typedef int (daNpc_Kn_c::*actionFunc)(void*);
58
76
78 public:
79 /* 0x00 */ bool mpModel;
80 /* 0x04 */ cXyz mPos;
81 /* 0x10 */ csXyz mAngle;
82 /* 0x18 */ cXyz mScale;
83 /* 0x24 */ dPaPo_c mManager;
84 };
85
86public:
89 /* 0x05B4 */ const daNpcT_evtData_c* mpEventData;
90 /* 0x05B8 */ char** mpArcNames;
91 /* 0x05BC */ mDoExt_McaMorfSO* mpModelMorf[2];
92 /* 0x05C4 */ Z2Creature mSound;
93 /* 0x0654 */ mDoExt_bckAnm mBckAnm;
94 /* 0x0670 */ mDoExt_btpAnm mBtpAnm;
95 /* 0x0688 */ mDoExt_btkAnm mBtkAnm;
96 /* 0x06A0 */ mDoExt_brkAnm mBrkAnm;
97 /* 0x06B8 */ mDoExt_bpkAnm mBpkAnm;
98 /* 0x06D0 */ dBgS_ObjAcch mAcch;
99 /* 0x08A8 */ dCcD_Stts mCcStts;
100 /* 0x08E4 */ dBgS_AcchCir mAcchCir;
102 /* 0x0964 */ cBgS_GndChk mGndChk;
104 /* 0x09A4 */ u8 field_0x9a4[4];
105 /* 0x09A8 */ dMsgFlow_c mFlow;
106 /* 0x09F4 */ dPaPoT_c field_0x9F4;
107 /* 0x0A74 */ dCcD_Stts mCcStts2;
108 /* 0x0AB0 */ u32 mFlowNodeNo;
110 /* 0x0AB8 */ f32 mMorfFrames;
111 /* 0x0ABC */ u8 mCreating;
112 /* 0x0ABD */ u8 mTwilight;
113 /* 0x0AC0 */ dBgS_GndChk mGndChk2;
114 /* 0x0B14 */ dBgS_LinChk mLinChk;
121 /* 0x0D58 */ cXyz mFootLPos;
122 /* 0x0D64 */ cXyz mFootRPos;
123 /* 0x0D70 */ cXyz mFootLOffset;
124 /* 0x0D7C */ cXyz mFootROffset;
125 /* 0x0D88 */ cXyz mOldFootLOffset;
126 /* 0x0D94 */ cXyz mOldFootROffset;
127 /* 0x0DA0 */ cXyz field_0xDA0;
128 /* 0x0DAC */ csXyz mCurAngle;
129 /* 0x0DB2 */ csXyz field_0xDB2;
130 /* 0x0DB8 */ csXyz field_0xDB8;
131 /* 0x0DBE */ csXyz field_0xDBE;
133 /* 0x0DC8 */ u32 mShadowKey;
134 /* 0x0DCC */ u32 mAnmFlags;
135 /* 0x0DD0 */ fpc_ProcID mMsgId;
136 /* 0x0DD4 */ int mStaffId;
137 /* 0x0DD8 */ int mCutType;
138 /* 0x0DDC */ int field_0xddc;
139 /* 0x0DE0 */ int mTimerStart;
140 /* 0x0DE4 */ int mTimer;
141 /* 0x0DE8 */ int mBtpPauseTimer;
142 /* 0x0DEC */ int field_0xdec;
143 /* 0x0DF0 */ s16 mGroundAngle;
144 /* 0x0DF2 */ s16 field_0xdf2;
145 /* 0x0DF4 */ s16 mFootLPolyAngle;
146 /* 0x0DF5 */ u8 field_0xdf5[0x0DF8 - 0x0DF6];
147 /* 0x0DF8 */ s16 mFootRPolyAngle;
148 /* 0x0DFA */ s16 mStartAngle;
149 /* 0x0DFC */ s16 mTargetAngle;
150 /* 0x0DFE */ s16 mStepMode;
151 /* 0x0E00 */ s16 mTurnAmount;
152 /* 0x0E04 */ f32 mTurnCount;
153 /* 0x0E08 */ u8 field_0xe08[0x0E0C - 0x0E08];
154 /* 0x0E0C */ f32 field_0xe0c;
155 /* 0x0E10 */ f32 mRadius;
156 /* 0x0E14 */ f32 mGroundHeight;
157 /* 0x0E18 */ u8 field_0xe18[0xe1c - 0xe18];
158 /* 0x0E1C */ u32 mHitodamaPrtclKey[2];
159 /* 0x0E24 */ s16 mEvtId;
160 /* 0x0E26 */ u16 mMorfLoops;
161 /* 0x0E28 */ u16 mBckLoops;
162 /* 0x0E2A */ u16 mMode;
163 /* 0x0E2C */ u8 field_0xe2c;
164 /* 0x0E2D */ u8 field_0xe2d;
165 /* 0x0E2E */ u8 mFootLOnGround;
166 /* 0x0E2F */ u8 mFootROnGround;
167 /* 0x0E30 */ u8 field_0xe30;
168 /* 0x0E31 */ u8 field_0xe31;
169 /* 0x0E32 */ u8 mNoDraw;
170 /* 0x0E33 */ u8 field_0xe33;
171 /* 0x0E34 */ u8 field_0xe34;
172 /* 0x0E36 */ u16 mEvtNo;
173 /* 0x0E38 */ u8 mSpeakEvent;
174 /* 0x0E39 */ u8 field_0xe39;
175 /* 0x0E3A */ u8 field_0xe3a;
176 /* 0x0E3B */ u8 field_0xe3b;
177 /* 0x0E3C */ int field_0xe3c;
178 // /* 0x0E40 */ vtable
179
180public:
181 void initialize() {
182 memset(&mFootLPos, 0, (intptr_t)&field_0xe3c - (intptr_t)&mFootLPos);
183
190 mItemPartnerId = -1;
191 field_0xe2d = 1;
192 mPodAnmFlags = 0;
193 }
194
195 bool checkHide() {
196 return field_0xe2c != 0 || (!dComIfGs_wolfeye_effect_check() && mTwilight != 0);
197 }
198
200 return 4;
201 }
202
204 return 3;
205 }
206
208 return 1;
209 }
210
211 bool checkChangeJoint(int i_jointNo) { return i_jointNo == 4; }
212 bool checkRemoveJoint(int i_jointNo) { return i_jointNo == 5; }
213
214 void setCutType(int i_type) { mCutType = i_type;}
215
216 void setActionMode(s8 i_actionMode) { mActionMode = i_actionMode;}
218
219 void setTalkFlag(u8 i_flag) { field_0x15bd = i_flag; }
220
221 bool checkBattleMode() { return true; }
222
223 int create();
224 int CreateHeap();
225 int Delete();
226 int Execute();
227 int Draw();
228 static int createHeapCallBack(fopAc_ac_c*);
229 static int ctrlJointCallBack(J3DJoint*, int);
230 u8 getType();
231 u8 getDivideNo();
233 u8 getPath();
234 BOOL isDelete();
235 void resetCol();
236 void reset();
237 void resetType();
238 void setParam();
244 void setAfterTalkMotion();
245 void srchActors();
246 bool evtTalk();
248 void action();
249 void beforeMove();
250 void afterMoved();
251 void setAttnPos();
252 void setCollision();
253 void setCollisionSword();
255 void setCollisionTeach03();
256 void setCollisionTeach04();
257 void setCollisionTeach05();
258 void setCollisionTeach06();
259 void setCollisionTeach07();
260 int drawDbgInfo();
261 void drawOtherMdl();
262 void drawGhost();
263 int selectAction();
271 int wait(void*);
272 int talk(void*);
273 int test(void*);
274 void setSceneChange(int);
277 int ECut_largeDamageTalk(int);
278 int teach02_start(void*);
279 int teach03_attackWait(void*);
280 int teach04_attackWait(void*);
281 int teach04_headBreakWait(void*);
282 int teach04_finishWait(void*);
284 int teach06_superJumpWait(void*);
285 int teach06_divideMove(void*);
286 int teach06_waitDivide(void*);
288 int teach06_superJumpedDivide(void*);
289 int teach06_warpDelete(void*);
291 int teach07_divideMove(void*);
292 int teach07_waitDivide(void*);
295 int teach07_warpDelete(void*);
296 int ECut_secondEncount(int);
297 int ECut_thirdSkillExplain(int);
298 int ECut_thirdSkillGet(int);
300 int ECut_fourthSkillGet(int);
301 int ECut_fifthSkillExplain(int);
302 int ECut_fifthSkillGet(int);
303 int ECut_sixthSkillExplain(int);
304 int ECut_sixthSkillGet(int);
306 int ECut_seventhSkillGet(int);
307 int setPrtcl();
308 int setSlipPrtcl();
309 int setLandingPrtcl();
310 void calcMagicBallPos();
311 void setSwordChargePtcl();
312 void calcSlip();
313 void calcSwordAttackMove(int);
314 void setSe();
316 J3DAnmTransform* getTrnsfrmAnmP(char const*, int);
320 BOOL setBckAnm(J3DAnmTransform*, f32, int, int, int, bool);
321 int setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int);
324 int loadRes(s8 const*, char const**);
325 void deleteRes(s8 const*, char const**);
326 int execute();
327 int draw(int, int, f32, GXColorS10*, f32, int, int, int);
329 void setRoomNo();
333 void setMtx();
336 int ctrlMsgAnm(int*, int*, fopAc_ac_c*, int);
337 void evtChange();
338 bool setFaceMotionAnm(int, bool);
339 bool setMotionAnm(int, f32, int);
348 BOOL turn(s16, int, int);
349 int step(s16, int, int, int, int);
350 int initTalk(int, fopAc_ac_c**);
351 BOOL talkProc(int*, int, fopAc_ac_c**, int);
354 daNpcT_motionAnmData_c const* param_1,
355 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3,
356 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5,
357 daNpcT_evtData_c const* param_6, char** param_7)
358 : mpFaceMotionAnmData(param_0), mpMotionAnmData(param_1), mFaceMotionSeqMngr(param_2, param_3),
359 mMotionSeqMngr(param_4, param_5), mpEventData(param_6), mpArcNames(param_7)
360 {
361 OS_REPORT("|%06d:%x|daNpc_Kn_c -> コンストラクト\n", g_Counter.mCounter0, this);
362 initialize();
363 }
367 int teach01_start(void*);
371 int ctrlWarp();
384
385 virtual int ctrlBtk();
386 virtual int getFootLJointNo() { return -1; }
387 virtual int getFootRJointNo() { return -1; }
388 virtual u16 getEyeballLMaterialNo() { return 0; }
389 virtual u16 getEyeballRMaterialNo() { return 0; }
390 virtual u16 getEyeballMaterialNo() { return 0; }
391 virtual int ctrlJoint(J3DJoint*, J3DModel*);
392 virtual void afterJntAnm(int) {}
393 virtual BOOL checkChangeEvt() { return FALSE; }
394 virtual BOOL evtEndProc() { return TRUE; }
395 virtual int evtProc();
396 virtual void setFootPos();
397 virtual void setFootPrtcl(cXyz*, f32);
398 virtual bool checkCullDraw();
399 virtual void twilight();
400 virtual BOOL chkXYItems() { return FALSE; }
401 virtual void evtOrder();
402 virtual void decTmr();
403 virtual void clrParam();
404 virtual bool afterSetFaceMotionAnm(int, int, f32, int) { return true; }
409 return arg0;
410 }
411 virtual ~daNpc_Kn_c();
412 virtual bool afterSetMotionAnm(int, int, f32, int);
413
414 static const dCcD_SrcGObjInf mCcDObjData;
415 static char* mCutNameList[21];
416 static cutFunc mCutList[21];
417 static dCcD_SrcCyl mCcDCyl;
418 static dCcD_SrcSph mCcDSph;
421 static int mFindCount;
422
423private:
424 /* 0x0E44 */ J3DModel* mpPodModel;
426 /* 0x0E50 */ dKy_tevstr_c mTevStr;
427 /* 0x11D8 */ NPC_KN_HIO_CLASS* mpHIO;
428 /* 0x11DC */ dCcD_Cyl mCylCc;
429 /* 0x1318 */ dCcD_Sph mSphCc[2];
430 /* 0x1588 */ mDoExt_bckAnm mPodBck;
431 /* 0x15A4 */ u32 mPodAnmFlags;
432 /* 0x15A8 */ u32 field_0x15A8;
433 /* 0x15AC */ u8 mType;
434 /* 0x15AD */ u8 mDivideNo;
435 /* 0x15AE */ s8 mActionMode;
436 /* 0x15AF */ u8 field_0x15af;
437 /* 0x15B0 */ cXyz mTargetPos;
438 /* 0x15BC */ u8 field_0x15bc;
439 /* 0x15BD */ u8 field_0x15bd;
440 /* 0x15BE */ u16 field_0x15be;
441 /* 0x15C0 */ cXyz field_0x15c0;
442 /* 0x15CC */ u8 field_0x15cc;
443 /* 0x15CD */ u8 field_0x15cd;
444 /* 0x15CE */ u8 field_0x15ce;
445 /* 0x15CF */ u8 field_0x15cf;
446 /* 0x15D0 */ s16 field_0x15d0;
447 /* 0x15D4 */ int field_0x15d4[3];
449 /* 0x16F4 */ cXyz field_0x16f4;
450 /* 0x1700 */ cXyz field_0x1700;
451 /* 0x170C */ u8 field_0x170c;
452 /* 0x170D */ u8 field_0x170d;
453 /* 0x170E */ u8 field_0x170e;
454 /* 0x170F */ u8 field_0x170f;
455 /* 0x1710 */ s16 field_0x1710;
456 /* 0x1712 */ s16 field_0x1712;
459 /* 0x172C */ daNpcT_Path_c mPath;
460 /* 0x1754 */ u8 field_0x1754;
461};
462
463STATIC_ASSERT(sizeof(daNpc_Kn_c) == 0x1758);
464
465#endif /* D_A_NPC_KN_H */
counter_class g_Counter
Definition c_counter.cpp:8
Definition J3DAnimation.h:880
Definition J3DAnimation.h:580
Definition J3DAnimation.h:527
Definition J3DAnimation.h:506
Definition J3DAnimation.h:932
Definition J3DJoint.h:66
Definition J3DModelData.h:15
Definition J3DModel.h:43
Definition JORMContext.h:128
Definition Z2Creature.h:7
Definition c_bg_s_gnd_chk.h:8
Definition c_sxyz.h:10
Definition d_bg_s_acch.h:15
Definition d_bg_s_gnd_chk.h:7
Definition d_bg_s_lin_chk.h:9
Definition d_bg_s_acch.h:249
Definition d_cc_d.h:472
Definition d_cc_d.h:286
Definition d_cc_d.h:487
Definition d_cc_d.h:273
Definition d_kankyo_tev_str.h:8
Definition d_msg_flow.h:49
Definition d_particle_copoly.h:53
Particle effect management class for center-based effects.
Definition d_particle_copoly.h:25
Definition d_a_npc.h:30
void initialize()
Definition d_a_npc.cpp:276
Definition d_a_npc.h:447
void initialize()
Definition d_a_npc.h:452
Definition d_a_npc.h:218
void initialize()
Definition d_a_npc.cpp:851
Definition d_a_npc.h:45
Definition d_a_npc.h:68
void initialize()
Definition d_a_npc.cpp:336
Definition d_a_npc.h:145
Definition d_a_npc_kn.h:31
daNpc_Kn_HIOParam m
Definition d_a_npc_kn.h:38
void listenPropertyEvent(const JORPropertyEvent *)
Definition d_a_npc_kn.cpp:132
void genMessage(JORMContext *)
Definition d_a_npc_kn.cpp:181
daNpc_Kn_HIO_c()
Definition d_a_npc_kn.cpp:128
Definition d_a_npc_kn.h:23
virtual ~daNpc_Kn_Param_c()
Definition d_a_npc_kn.h:25
static const daNpc_Kn_HIOParam m
Definition d_a_npc_kn.h:70
Definition d_a_npc_kn.h:77
cXyz mScale
Definition d_a_npc_kn.h:82
csXyz mAngle
Definition d_a_npc_kn.h:81
dPaPo_c mManager
Definition d_a_npc_kn.h:83
bool mpModel
Definition d_a_npc_kn.h:79
cXyz mPos
Definition d_a_npc_kn.h:80
Hero's Shade.
Definition d_a_npc_kn.h:54
const daNpcT_evtData_c * mpEventData
Definition d_a_npc_kn.h:89
u8 getDivideNo()
Definition d_a_npc_kn.cpp:770
u8 field_0x15cd
Definition d_a_npc_kn.h:443
BOOL turn(s16, int, int)
u8 field_0x170d
Definition d_a_npc_kn.h:452
int(daNpc_Kn_c::*) cutFunc(int)
Definition d_a_npc_kn.h:56
u32 setParamTeach02()
J3DAnmTransformKey * getTrnsfrmKeyAnmP(char const *, int)
virtual int getFootRJointNo()
Definition d_a_npc_kn.h:387
virtual u16 getEyeballLMaterialNo()
Definition d_a_npc_kn.h:388
cXyz field_0x1700
Definition d_a_npc_kn.h:450
void setMtx()
daNpc_Kn_prtclMngr_c mParticleMngr[3]
Definition d_a_npc_kn.h:448
csXyz mCurAngle
Definition d_a_npc_kn.h:128
void setTalkFlag(u8 i_flag)
Definition d_a_npc_kn.h:219
int ECut_sixthSkillGet(int)
Definition d_a_npc_kn.cpp:4464
int ECut_noneEquipChangeTalkStand(int)
Definition d_a_npc_kn.cpp:1775
daNpc_Kn_c(daNpcT_faceMotionAnmData_c const *param_0, daNpcT_motionAnmData_c const *param_1, daNpcT_MotionSeqMngr_c::sequenceStepData_c const *param_2, int param_3, daNpcT_MotionSeqMngr_c::sequenceStepData_c const *param_4, int param_5, daNpcT_evtData_c const *param_6, char **param_7)
Definition d_a_npc_kn.h:353
int teach02_shieldBashWait(void *)
u16 mMode
Definition d_a_npc_kn.h:162
s16 mStepMode
Definition d_a_npc_kn.h:150
dBgS_ObjAcch mAcch
Definition d_a_npc_kn.h:98
u32 mAnmFlags
Definition d_a_npc_kn.h:134
int ECut_secondSkillGet(int)
static int ctrlJointCallBack(J3DJoint *, int)
Definition d_a_npc_kn.cpp:735
cXyz field_0x15c0
Definition d_a_npc_kn.h:441
void teach01_selectAction()
void resetCol()
Definition d_a_npc_kn.cpp:812
int setPrtcl()
Definition d_a_npc_kn.cpp:4948
u8 mSpeakEvent
Definition d_a_npc_kn.h:173
int ECut_thirdSkillExplain(int)
Definition d_a_npc_kn.cpp:3276
bool checkRemoveJoint(int i_jointNo)
Definition d_a_npc_kn.h:212
dCcD_Sph mSphCc[2]
Definition d_a_npc_kn.h:429
mDoExt_invisibleModel mInvisModel
Definition d_a_npc_kn.h:425
s8 getActionMode()
Definition d_a_npc_kn.h:217
int teach03_attackWait(void *)
Definition d_a_npc_kn.cpp:1928
u32 setParamTeach04()
Definition d_a_npc_kn.cpp:1007
void ctrlFaceMotion()
BOOL setBtkAnm(J3DAnmTextureSRTKey *, J3DModelData *, f32, int)
void drawGhost()
Definition d_a_npc_kn.cpp:1394
void setCollisionTeach07()
Definition d_a_npc_kn.cpp:1328
static dCcD_SrcSph mCcDSph
Definition d_a_npc_kn.h:26
void ctrlMotion()
dPaPoT_c field_0x9F4
Definition d_a_npc_kn.h:106
u8 field_0xe3b
Definition d_a_npc_kn.h:176
int talk(void *)
Definition d_a_npc_kn.cpp:1644
void srchActors()
Definition d_a_npc_kn.cpp:1058
int setSlipPrtcl()
Definition d_a_npc_kn.cpp:4992
BOOL srchPlayerActor()
void setSceneChange(int)
Definition d_a_npc_kn.cpp:1707
int teach07_superTurnAttackWaitDivide(void *)
Definition d_a_npc_kn.cpp:2968
u8 field_0x170e
Definition d_a_npc_kn.h:453
int teach02_shieldReflectWait(void *)
int ECut_fourthSkillGet(int)
Definition d_a_npc_kn.cpp:3796
dBgS_LinChk mLinChk
Definition d_a_npc_kn.h:114
virtual void twilight()
int teach06_superJumpWait(void *)
Definition d_a_npc_kn.cpp:2380
virtual u16 getEyeballMaterialNo()
Definition d_a_npc_kn.h:390
int ECut_fifthSkillGet(int)
Definition d_a_npc_kn.cpp:4130
BOOL setAction(actionFunc)
Definition d_a_npc_kn.cpp:1604
int execute()
daNpcT_ActorMngr_c mActorMngr2
Definition d_a_npc_kn.h:118
void calcSwordAttackMove(int)
Definition d_a_npc_kn.cpp:5124
virtual BOOL checkChangeEvt()
Definition d_a_npc_kn.h:393
s16 mFootRPolyAngle
Definition d_a_npc_kn.h:147
s16 mTargetAngle
Definition d_a_npc_kn.h:149
void setCutType(int i_type)
Definition d_a_npc_kn.h:214
void setCollisionTeach02()
s16 mEvtId
Definition d_a_npc_kn.h:159
dKy_tevstr_c mTevStr
Definition d_a_npc_kn.h:426
void beforeMove()
Definition d_a_npc_kn.cpp:1108
BOOL talkProc(int *, int, fopAc_ac_c **, int)
int initTalk(int, fopAc_ac_c **)
int ECut_thirdSkillGet(int)
Definition d_a_npc_kn.cpp:3460
int ctrlWarp()
request_of_phase_process_class mPhase[8]
Definition d_a_npc_kn.h:101
NPC_KN_HIO_CLASS * mpHIO
Definition d_a_npc_kn.h:427
int teach06_waitDivide(void *)
Definition d_a_npc_kn.cpp:2563
void teach03_selectAction()
Definition d_a_npc_kn.cpp:1514
u8 field_0x15cf
Definition d_a_npc_kn.h:445
u8 field_0x15ce
Definition d_a_npc_kn.h:444
u8 mNoDraw
Definition d_a_npc_kn.h:169
daNpcT_MatAnm_c * mpMatAnm
Definition d_a_npc_kn.h:103
void drawOtherMdl()
Definition d_a_npc_kn.cpp:1345
void teach07_selectAction()
Definition d_a_npc_kn.cpp:1575
u8 field_0x15bc
Definition d_a_npc_kn.h:438
int field_0xddc
Definition d_a_npc_kn.h:138
mDoExt_brkAnm mBrkAnm
Definition d_a_npc_kn.h:96
int teach01_attackWait(void *)
virtual bool afterSetFaceMotionAnm(int, int, f32, int)
Definition d_a_npc_kn.h:404
int teach01_start(void *)
int step(s16, int, int, int, int)
csXyz field_0xDB8
Definition d_a_npc_kn.h:130
int wait(void *)
Definition d_a_npc_kn.cpp:1620
fpc_ProcID mMsgId
Definition d_a_npc_kn.h:135
u16 mMorfLoops
Definition d_a_npc_kn.h:160
int teach02_finishWait(void *)
cXyz mFootLOffset
Definition d_a_npc_kn.h:123
virtual u16 getEyeballRMaterialNo()
Definition d_a_npc_kn.h:389
int ECut_attackFailed(int)
void setAngle(s16)
u8 field_0x15bd
Definition d_a_npc_kn.h:439
int teach01_swordFinishWait(void *)
f32 mMorfFrames
Definition d_a_npc_kn.h:110
s16 field_0x15d0
Definition d_a_npc_kn.h:446
virtual int ctrlJoint(J3DJoint *, J3DModel *)
u16 mEvtNo
Definition d_a_npc_kn.h:172
int ECut_firstSkillGet(int)
static char * mCutNameList[21]
Definition d_a_npc_kn.h:470
daNpcT_MotionSeqMngr_c mMotionSeqMngr
Definition d_a_npc_kn.h:116
f32 mGroundHeight
Definition d_a_npc_kn.h:156
static void tgHitCallBack(fopAc_ac_c *, dCcD_GObjInf *, fopAc_ac_c *, dCcD_GObjInf *)
int loadRes(s8 const *, char const **)
u8 mTwilight
Definition d_a_npc_kn.h:112
BOOL setBckAnm(J3DAnmTransform *, f32, int, int, int, bool)
u8 field_0xdf5[0x0DF8 - 0x0DF6]
Definition d_a_npc_kn.h:146
void reset()
Definition d_a_npc_kn.cpp:829
int Delete()
Definition d_a_npc_kn.cpp:700
void teach06_selectAction()
Definition d_a_npc_kn.cpp:1550
bool checkHide()
Definition d_a_npc_kn.h:195
mDoExt_btpAnm mBtpAnm
Definition d_a_npc_kn.h:94
virtual bool checkCullDraw()
void evtChange()
mDoExt_bckAnm mBckAnm
Definition d_a_npc_kn.h:93
cXyz mFootROffset
Definition d_a_npc_kn.h:124
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_kn.cpp:730
int teach07_superTurnAttackWait(void *)
Definition d_a_npc_kn.cpp:2790
s16 field_0xdf2
Definition d_a_npc_kn.h:144
u8 field_0xe2d
Definition d_a_npc_kn.h:164
u8 field_0xe30
Definition d_a_npc_kn.h:167
mDoExt_bckAnm mPodBck
Definition d_a_npc_kn.h:430
J3DAnmTransform * getTrnsfrmAnmP(char const *, int)
int teach02_start(void *)
Definition d_a_npc_kn.cpp:1906
void setCollisionTeach01()
int ECut_secondEncount(int)
Definition d_a_npc_kn.cpp:3119
cXyz mOldFootROffset
Definition d_a_npc_kn.h:126
int ECut_largeDamageTalk(int)
Definition d_a_npc_kn.cpp:1840
virtual int evtProc()
void action()
Definition d_a_npc_kn.cpp:1098
int field_0x15d4[3]
Definition d_a_npc_kn.h:447
cXyz mFootRPos
Definition d_a_npc_kn.h:122
daNpcT_DmgStagger_c mDmgStagger
Definition d_a_npc_kn.h:120
u8 field_0xe18[0xe1c - 0xe18]
Definition d_a_npc_kn.h:157
int field_0xe3c
Definition d_a_npc_kn.h:177
u16 field_0x15be
Definition d_a_npc_kn.h:440
void setCollisionSword()
Definition d_a_npc_kn.cpp:1225
cXyz field_0xDA0
Definition d_a_npc_kn.h:127
int ctrlMsgAnm(int *, int *, fopAc_ac_c *, int)
daNpcT_MotionSeqMngr_c mFaceMotionSeqMngr
Definition d_a_npc_kn.h:115
virtual void setFootPrtcl(cXyz *, f32)
char ** mpArcNames
Definition d_a_npc_kn.h:90
cXyz mTargetPos
Definition d_a_npc_kn.h:437
void setHitodamaPrtcl()
virtual void afterJntAnm(int)
Definition d_a_npc_kn.h:392
virtual int ctrlBtk()
actionFunc mpActionFunc
Definition d_a_npc_kn.h:458
int teach06_superJumpedDivide(void *)
Definition d_a_npc_kn.cpp:2713
u32 setParamTeach07()
Definition d_a_npc_kn.cpp:1047
u8 field_0xe39
Definition d_a_npc_kn.h:174
AnmFlags
Definition d_a_npc_kn.h:59
@ ANM_PAUSE_BCK
Definition d_a_npc_kn.h:64
@ ANM_PLAY_MORF
Definition d_a_npc_kn.h:66
@ ANM_FLAG_1000
Definition d_a_npc_kn.h:72
@ ANM_PAUSE_MORF
Definition d_a_npc_kn.h:60
@ ANM_PLAY_BPK
Definition d_a_npc_kn.h:69
@ ANM_PAUSE_TIMER_BTP
Definition d_a_npc_kn.h:73
@ ANM_FLAG_4000
Definition d_a_npc_kn.h:74
@ ANM_PAUSE_BTP
Definition d_a_npc_kn.h:65
@ ANM_PLAY_BTK
Definition d_a_npc_kn.h:67
@ ANM_PAUSE_BPK
Definition d_a_npc_kn.h:63
@ ANM_PLAY_BTP
Definition d_a_npc_kn.h:71
@ ANM_PLAY_BCK
Definition d_a_npc_kn.h:70
@ ANM_PAUSE_BRK
Definition d_a_npc_kn.h:62
@ ANM_PAUSE_BTK
Definition d_a_npc_kn.h:61
@ ANM_PLAY_BRK
Definition d_a_npc_kn.h:68
u8 field_0xe3a
Definition d_a_npc_kn.h:175
u32 setParamTeach05()
Definition d_a_npc_kn.cpp:1027
virtual daNpcT_motionAnmData_c getMotionAnm(daNpcT_motionAnmData_c arg0)
Definition d_a_npc_kn.h:408
void resetType()
Definition d_a_npc_kn.cpp:878
actionFunc mpTeachAction
Definition d_a_npc_kn.h:457
u8 field_0x1754
Definition d_a_npc_kn.h:460
int chkFindPlayer(int, s16)
u32 setParamTeach06()
Definition d_a_npc_kn.cpp:1043
BOOL setBtpAnm(J3DAnmTexPattern *, J3DModelData *, f32, int)
void playAllAnm()
int teach04_finishWait(void *)
Definition d_a_npc_kn.cpp:2180
u32 setParamTeach01()
u32 setParamTeach03()
Definition d_a_npc_kn.cpp:991
virtual bool afterSetMotionAnm(int, int, f32, int)
Definition d_a_npc_kn.cpp:1408
int selectAction()
Definition d_a_npc_kn.cpp:1446
int field_0xdec
Definition d_a_npc_kn.h:142
dBgS_AcchCir mAcchCir
Definition d_a_npc_kn.h:100
int ECut_firstEncount(int)
bool evtTalk()
Definition d_a_npc_kn.cpp:1064
void setCollision()
Definition d_a_npc_kn.cpp:1161
u8 getType()
Definition d_a_npc_kn.cpp:748
dCcD_Stts mCcStts
Definition d_a_npc_kn.h:99
void setCollisionTeach05()
Definition d_a_npc_kn.cpp:1316
int teach07_divideMove(void *)
Definition d_a_npc_kn.cpp:2897
void setAfterTalkMotion()
Definition d_a_npc_kn.cpp:1051
int ECut_seventhSkillExplain(int)
Definition d_a_npc_kn.cpp:4605
virtual int getFootLJointNo()
Definition d_a_npc_kn.h:386
int teach07_waitDivide(void *)
Definition d_a_npc_kn.cpp:2942
daNpcT_JntAnm_c mJntAnm
Definition d_a_npc_kn.h:119
cXyz mFootLPos
Definition d_a_npc_kn.h:121
bool setFaceMotionAnm(int, bool)
u8 field_0x9a4[4]
Definition d_a_npc_kn.h:104
s16 mFootLPolyAngle
Definition d_a_npc_kn.h:145
BOOL checkEndAnm(J3DFrameCtrl *, f32)
J3DAnmTextureSRTKey * getTexSRTKeyAnmP(char const *, int)
int ECut_reflectExplain(int)
int create()
Definition d_a_npc_kn.cpp:537
BOOL checkCollisionSword()
Definition d_a_npc_kn.cpp:1258
const daNpcT_faceMotionAnmData_c * mpFaceMotionAnmData
Definition d_a_npc_kn.h:87
s16 mGroundAngle
Definition d_a_npc_kn.h:143
int Draw()
Definition d_a_npc_kn.cpp:716
int test(void *)
Definition d_a_npc_kn.cpp:1684
int getBackboneJointNo()
Definition d_a_npc_kn.h:207
int teach06_warpDelete(void *)
Definition d_a_npc_kn.cpp:2751
BOOL isDelete()
Definition d_a_npc_kn.cpp:784
void afterMoved()
Definition d_a_npc_kn.cpp:1114
void setAttnPos()
Definition d_a_npc_kn.cpp:1121
J3DAnmTexPattern * getTexPtrnAnmP(char const *, int)
mDoExt_McaMorfSO * mpModelMorf[2]
Definition d_a_npc_kn.h:91
u32 mPodAnmFlags
Definition d_a_npc_kn.h:431
void teach04_selectAction()
Definition d_a_npc_kn.cpp:1524
virtual void setFootPos()
dCcD_Stts mCcStts2
Definition d_a_npc_kn.h:107
BOOL checkEndAnm(f32)
int mTimer
Definition d_a_npc_kn.h:140
u8 mType
Definition d_a_npc_kn.h:433
cXyz getAttnPos(fopAc_ac_c *)
u8 field_0xe31
Definition d_a_npc_kn.h:168
daNpcT_Path_c mPath
Definition d_a_npc_kn.h:459
int teach07_warpDelete(void *)
Definition d_a_npc_kn.cpp:3099
u8 mFootROnGround
Definition d_a_npc_kn.h:166
virtual void decTmr()
J3DModel * mpPodModel
Definition d_a_npc_kn.h:424
int mCutType
Definition d_a_npc_kn.h:137
static dCcD_SrcCyl mCcDCyl
Definition d_a_npc_kn.h:19
static fopAc_ac_c * mFindActorPtrs[50]
Definition d_a_npc_kn.h:420
bool checkChangeJoint(int i_jointNo)
Definition d_a_npc_kn.h:211
int getNeckJointNo()
Definition d_a_npc_kn.h:203
cBgS_GndChk mGndChk
Definition d_a_npc_kn.h:102
u8 getPath()
Definition d_a_npc_kn.cpp:780
int teach06_divideMove(void *)
Definition d_a_npc_kn.cpp:2521
bool checkBattleMode()
Definition d_a_npc_kn.h:221
int ECut_secondSkillExplain(int)
void setEnvTevColor()
u16 mBckLoops
Definition d_a_npc_kn.h:161
virtual ~daNpc_Kn_c()
Definition d_a_npc_kn.cpp:520
u8 mDivideNo
Definition d_a_npc_kn.h:434
int(daNpc_Kn_c::*) actionFunc(void *)
Definition d_a_npc_kn.h:57
int Execute()
Definition d_a_npc_kn.cpp:707
int setLandingPrtcl()
Definition d_a_npc_kn.cpp:5009
s16 field_0x1712
Definition d_a_npc_kn.h:456
u32 mShadowKey
Definition d_a_npc_kn.h:133
dMsgFlow_c mFlow
Definition d_a_npc_kn.h:105
BOOL chkPointInArea(cXyz, cXyz, cXyz, s16)
int teach06_superJumpWaitDivide(void *)
Definition d_a_npc_kn.cpp:2589
int CreateHeap()
Definition d_a_npc_kn.cpp:598
s16 mStartAngle
Definition d_a_npc_kn.h:148
int setMcaMorfAnm(J3DAnmTransformKey *, f32, f32, int, int, int)
int draw(int, int, f32, GXColorS10 *, f32, int, int, int)
BOOL chkAction(actionFunc)
Definition d_a_npc_kn.cpp:1600
int mBtpPauseTimer
Definition d_a_npc_kn.h:141
void setSwordChargePtcl()
Definition d_a_npc_kn.cpp:5029
u8 field_0xe2c
Definition d_a_npc_kn.h:163
virtual void evtOrder()
static int mFindCount
Definition d_a_npc_kn.h:421
int teach04_headBreakWait(void *)
Definition d_a_npc_kn.cpp:2124
BOOL chkPointInArea(cXyz, cXyz, f32, f32, f32, s16)
u8 field_0xe33
Definition d_a_npc_kn.h:170
int ECut_sixthSkillExplain(int)
Definition d_a_npc_kn.cpp:4267
static cutFunc mCutList[21]
Definition d_a_npc_kn.h:494
u32 getFlowNodeNo()
Definition d_a_npc_kn.cpp:775
int ECut_fifthSkillExplain(int)
Definition d_a_npc_kn.cpp:3933
s16 field_0x1710
Definition d_a_npc_kn.h:455
int teach07_superTurnAttackedDivide(void *)
Definition d_a_npc_kn.cpp:3061
u8 field_0x170c
Definition d_a_npc_kn.h:451
int teach05_surpriseAttackWait(void *)
Definition d_a_npc_kn.cpp:2241
void setActionMode(s8 i_actionMode)
Definition d_a_npc_kn.h:216
u8 field_0xe34
Definition d_a_npc_kn.h:171
int mTimerStart
Definition d_a_npc_kn.h:139
int drawDbgInfo()
Definition d_a_npc_kn.cpp:1332
static const dCcD_SrcGObjInf mCcDObjData
Definition d_a_npc_kn.h:61
virtual void clrParam()
u8 field_0x15af
Definition d_a_npc_kn.h:436
BOOL chkActorInSight(fopAc_ac_c *, f32, s16)
void setParam()
Definition d_a_npc_kn.cpp:916
const daNpcT_motionAnmData_c * mpMotionAnmData
Definition d_a_npc_kn.h:88
virtual daNpcT_faceMotionAnmData_c getFaceMotionAnm(daNpcT_faceMotionAnmData_c arg0)
Definition d_a_npc_kn.h:405
void setRoomNo()
cXyz mOldFootLOffset
Definition d_a_npc_kn.h:125
void setCollisionTeach04()
Definition d_a_npc_kn.cpp:1290
void teach02_selectAction()
mDoExt_bpkAnm mBpkAnm
Definition d_a_npc_kn.h:97
Z2Creature mSound
Definition d_a_npc_kn.h:92
f32 mRadius
Definition d_a_npc_kn.h:155
u8 field_0x170f
Definition d_a_npc_kn.h:454
virtual BOOL evtEndProc()
Definition d_a_npc_kn.h:394
cXyz field_0x16f4
Definition d_a_npc_kn.h:449
daNpcT_ActorMngr_c mActorMngr1
Definition d_a_npc_kn.h:117
csXyz field_0xDB2
Definition d_a_npc_kn.h:129
u8 mCreating
Definition d_a_npc_kn.h:111
int teach04_attackWait(void *)
Definition d_a_npc_kn.cpp:2044
fpc_ProcID mItemPartnerId
Definition d_a_npc_kn.h:132
s16 mTurnAmount
Definition d_a_npc_kn.h:151
u32 mHitodamaPrtclKey[2]
Definition d_a_npc_kn.h:158
void setCollisionTeach03()
Definition d_a_npc_kn.cpp:1282
void teach05_selectAction()
Definition d_a_npc_kn.cpp:1540
f32 mTurnCount
Definition d_a_npc_kn.h:152
u8 field_0x15cc
Definition d_a_npc_kn.h:442
BOOL evtCutProc()
Definition d_a_npc_kn.cpp:1076
f32 field_0xe0c
Definition d_a_npc_kn.h:154
void initialize()
Definition d_a_npc_kn.h:181
void setPos(cXyz)
virtual BOOL chkXYItems()
Definition d_a_npc_kn.h:400
int ECut_noneEquipChangeTalk(int)
Definition d_a_npc_kn.cpp:1724
int getHeadJointNo()
Definition d_a_npc_kn.h:199
u32 mFlowNodeNo
Definition d_a_npc_kn.h:108
void setSe()
Definition d_a_npc_kn.cpp:5158
s8 mActionMode
Definition d_a_npc_kn.h:435
mDoExt_btkAnm mBtkAnm
Definition d_a_npc_kn.h:95
void calcMagicBallPos()
Definition d_a_npc_kn.cpp:5016
int ECut_fourthSkillExplain(int)
Definition d_a_npc_kn.cpp:3596
int teach01_swordAttackWait(void *)
bool setMotionAnm(int, f32, int)
f32 mExpressionMorfFrame
Definition d_a_npc_kn.h:109
u8 mFootLOnGround
Definition d_a_npc_kn.h:165
u8 field_0xe08[0x0E0C - 0x0E08]
Definition d_a_npc_kn.h:153
void deleteRes(s8 const *, char const **)
int ECut_seventhSkillGet(int)
Definition d_a_npc_kn.cpp:4796
void calcSlip()
Definition d_a_npc_kn.cpp:5097
csXyz field_0xDBE
Definition d_a_npc_kn.h:131
int mStaffId
Definition d_a_npc_kn.h:136
dCcD_Cyl mCylCc
Definition d_a_npc_kn.h:428
u32 field_0x15A8
Definition d_a_npc_kn.h:432
dBgS_GndChk mGndChk2
Definition d_a_npc_kn.h:113
static s16 mSrchName
Definition d_a_npc_kn.h:419
void setCollisionTeach06()
Definition d_a_npc_kn.cpp:1324
Definition f_op_actor.h:243
Definition f_op_actor.h:299
Definition m_Do_ext.h:408
Definition m_Do_ext.h:149
Definition m_Do_ext.h:122
Definition m_Do_ext.h:92
Definition m_Do_ext.h:63
Definition m_Do_ext.h:180
Definition m_Do_ext.h:535
Definition m_Do_hostIO.h:26
STATIC_ASSERT(sizeof(daNpc_Kn_c)==0x1758)
BOOL dComIfGs_wolfeye_effect_check()
Definition d_com_inf_game.cpp:2876
unsigned int fpc_ProcID
Definition f_pc_base.h:10
int BOOL
Definition types.h:33
signed char s8
Definition types.h:7
unsigned long u32
Definition types.h:12
signed short int s16
Definition types.h:9
float f32
Definition types.h:25
unsigned short int u16
Definition types.h:10
unsigned char u8
Definition types.h:8
Definition JORReflexible.h:10
Definition GXStruct.h:34
Definition c_xyz.h:7
u32 mCounter0
Definition c_counter.h:7
Definition d_cc_d.h:104
Definition d_cc_d.h:87
Definition d_cc_d.h:94
Definition d_a_npc.h:842
Definition d_a_npc.h:483
Definition d_a_npc.h:488
Definition d_a_npc.h:503
Definition d_a_npc_kn.h:6
s16 attack_start_min_time
Definition d_a_npc_kn.h:18
s16 attack_wait_time
Definition d_a_npc_kn.h:9
s16 alpha
Definition d_a_npc_kn.h:8
s16 followup_wait_time
Definition d_a_npc_kn.h:10
f32 move_speed
Definition d_a_npc_kn.h:20
f32 attack_disappear_speed_v
Definition d_a_npc_kn.h:15
s16 attack_start_time_range
Definition d_a_npc_kn.h:19
f32 warp_distance
Definition d_a_npc_kn.h:13
f32 big_slide_distance
Definition d_a_npc_kn.h:12
daNpcT_HIOParam common
Definition d_a_npc_kn.h:7
s16 rotation_speed
Definition d_a_npc_kn.h:17
f32 attack_disappear_speed_h
Definition d_a_npc_kn.h:14
s16 rotation_num
Definition d_a_npc_kn.h:16
f32 small_slide_distance
Definition d_a_npc_kn.h:11
Definition c_phase.h:19