Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_npc_cdn3.h
Go to the documentation of this file.
1#ifndef D_A_NPC_CDN3_H
2#define D_A_NPC_CDN3_H
3
4#include "d/actor/d_a_npc.h"
7#include <cstring>
8
17class daNpcCdn3_c : public daNpcCd2_c {
18public:
19 typedef void (daNpcCdn3_c::*actionFunc)();
20 typedef int (daNpcCdn3_c::*seqFunc)(void*);
21
33
35 void callInit();
36 void callExecute();
37 void initWait();
38 void executeWait();
39 void initPath();
40 void executePath();
41 void initTalk();
42 void executeTalk();
43 void initEscape();
44 void executeEscape();
45 void initFear();
46 void executeFear();
47 void initFear2();
48 void executeFear2();
49 void initFight();
50 void executeFight();
51 void initRelief();
52 void executeRelief();
53 void setAngle();
54 void pathMoveF();
55 inline int ctrlMsgAnm();
58 void checkSchedule();
59 inline void setSchedule(daTagSchedule_c*);
60 inline bool isInShop();
61 bool isChairStyle();
62 bool isNoTurnTalk();
63 int waita(void*);
64 int talka(void*);
65 int waitwall(void*);
66 int talkwall(void*);
67 int talkbwall(void*);
68 int talkb(void*);
69 int talkc(void*);
70 int waitb(void*);
71 int sitwaita(void*);
72 int sittalka(void*);
73 int sittalkab(void*);
74 int sitwaitb(void*);
75 int sittalkb(void*);
76 int sittalkbb(void*);
77 int looka(void*);
78 int lookb(void*);
79 int playm(void*);
80 int turnr(void*);
81 int turnl(void*);
82 int walka(void*);
83 int walkb(void*);
84 int runa(void*);
85 int runb(void*);
86 int browsea(void*);
87 int browseb(void*);
88 int dance(void*);
89 int ladytalka(void*);
90 int ladytalkb(void*);
91 int normtalka(void*);
92 int normtalkb(void*);
93 int sellme(void*);
94 int sing(void*);
95 inline int create();
96 inline void create_init();
97 inline int createHeap();
98 inline void setMtx();
99 inline void lookat();
100 inline virtual ~daNpcCdn3_c();
101 inline int execute();
102 inline void checkTimeSchedule();
103
104 inline int draw();
105
107 int hour;
108 if (mIsDarkWorld) {
109 hour = dKy_getDarktime_hour();
110 } else {
111 hour = dKy_getdaytime_hour();
112 }
113 return hour;
114 }
115
117 int minute;
118 if (mIsDarkWorld) {
119 minute = dKy_getDarktime_minute();
120 } else {
121 minute = dKy_getdaytime_minute();
122 }
123 return minute;
124 }
125
126 int getTime() {
127 return getTimeHour() * 60 + getTimeMinute();
128 }
129
131 int day;
132 if (mIsDarkWorld) {
133 day = dKy_getDarktime_week();
134 } else {
135 day = dKy_get_dayofweek();
136 }
137 return day;
138 }
139
140 void setSpeed(f32 param_0, f32 param_1, f32* param_2, int param_3) {
141 UNUSED(param_3);
142 f32 target = field_0xb5c * (param_1 * field_0xb5c);
143 f32 step = field_0xb5c * (param_0 * field_0xb5c);
144 if (param_1 < target) {
145 target = param_1;
146 }
147 cLib_chaseF(param_2, target, step);
148 }
149
150 int getGroupID() { return fopAcM_GetParam(this) & 0xff; }
151 u8 getPathID() { return fopAcM_GetParam(this) >> 24; }
152 int isStop() { return TRUE; }
153 int getType() { return argument & 0x7f; }
154 int getSeqNum() { return shape_angle.x & 0x3f; }
155 int getFlowNodeNum() { return shape_angle.z; }
156 u8 getStartTime() { return (fopAcM_GetParam(this) >> 8) & 0xff; }
157 u8 getEndTime() { return (fopAcM_GetParam(this) >> 16) & 0xff; }
158
160 u16 x;
161 u16 y;
162 u8 startTime = getStartTime();
163 u8 endTime = getEndTime();
164 if (startTime != 0xff && endTime != 0xff) {
165 x = startTime / 10;
166 y = (startTime % 10) * 10;
167 field_0xb8c = y + x * 60;
168 x = endTime / 10;
169 y = (endTime % 10) * 10;
170 field_0xb8e = y + x * 60;
171 field_0xb96 = 0;
172 } else {
173 field_0xb96 = 1;
174 }
175 field_0xb90 = 30;
176 }
177
179 if (getGroupID() == 0xff) {
181 if (field_0xb96 == 0) {
182 int iVar1 = getTime();
183 if (field_0xb8c > iVar1 || field_0xb8e <= iVar1)
184 {
185 field_0xb95 = 1;
186 }
187 }
188 } else {
189 mTagSched = NULL;
190 field_0xb88 = NULL;
191 }
192 }
193
194 int getObjNum() {
195 int uVar3 = (shape_angle.x >> 6) & 0xf;
196 if (isM_()) {
197 switch (uVar3) {
198 case 0:
199 uVar3 = 0;
200 break;
201 case 1:
202 uVar3 = 1;
203 break;
204 case 2:
205 uVar3 = 2;
206 break;
207 case 3:
208 uVar3 = 4;
209 break;
210 case 4:
211 uVar3 = 6;
212 break;
213 case 5:
214 uVar3 = 0;
215 break;
216 case 6:
217 uVar3 = 0;
218 break;
219 case 7:
220 uVar3 = 9;
221 break;
222 default:
223 uVar3 = 0;
224 break;
225 }
226 /* dSv_event_flag_c::F_0281 - Shop - Malo Mart opens in Castle Town */
228 uVar3 = 0xb;
229 }
230 } else {
231 switch (uVar3) {
232 case 0:
233 uVar3 = 0;
234 break;
235 case 1:
236 uVar3 = 8;
237 break;
238 case 2:
239 uVar3 = 3;
240 break;
241 case 3:
242 uVar3 = 5;
243 break;
244 case 4:
245 uVar3 = 7;
246 break;
247 case 5:
248 uVar3 = 0;
249 break;
250 case 6:
251 uVar3 = 0;
252 break;
253 case 7:
254 uVar3 = 10;
255 break;
256 default:
257 uVar3 = 0;
258 break;
259 }
260 /* dSv_event_flag_c::F_0281 - Shop - Malo Mart opens in Castle Town */
261 if (dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[281]) && uVar3 == 10) {
262 uVar3 = 12;
263 }
264 }
265 return uVar3;
266 }
267
269 mStts.Init(0xd9, 0xff, this);
275 }
276
278 #if DEBUG
281 #endif
283 if (!fopAcM_CheckCondition(this, 4)) {
284 dComIfG_Ccsp()->Set(&mCyl);
285 }
286 }
287
288 bool isOrchestra();
289
290 int chkEvent() {
292 if (mFlowNodeNum > 0) {
294 }
295 if (mIsDarkWorld) {
298 } else {
300 }
301 }
304 return 1;
305 }
308 return 1;
309 }
310 }
311 return 0;
312 }
313
315#if PLATFORM_SHIELD
316 if (mFlowNodeNum > 0)
317#else
319 mFlowNodeNum > 0 &&
322#endif
323 {
325 }
326 return 1;
327 }
328
329 inline bool searchFirstScheduleTag();
330 inline bool searchNextScheduleTag();
331
336
337 static const ActionPair ActionTable[8];
338 static seqFunc* m_funcTbl[44];
339 static seqFunc m_seq00_funcTbl[2];
340 static seqFunc m_seq01_funcTbl[2];
341 static seqFunc m_seq02_funcTbl[2];
342 static seqFunc m_seq03_funcTbl[2];
343 static seqFunc m_seq04_funcTbl[2];
344 static seqFunc m_seq05_funcTbl[4];
345 static seqFunc m_seq06_funcTbl[4];
346 static seqFunc m_seq07_funcTbl[2];
347 static seqFunc m_seq08_funcTbl[7];
348 static seqFunc m_seq09_funcTbl[2];
349 static seqFunc m_seq10_funcTbl[2];
350 static seqFunc m_seq11_funcTbl[6];
351 static seqFunc m_seq12_funcTbl[2];
352 static seqFunc m_seq13_funcTbl[6];
353 static seqFunc m_seq14_funcTbl[2];
354 static seqFunc m_seq15_funcTbl[2];
355 static seqFunc m_seq16_funcTbl[7];
356 static seqFunc m_seq17_funcTbl[2];
357 static seqFunc m_seq18_funcTbl[2];
358 static seqFunc m_seq19_funcTbl[7];
359 static seqFunc m_seq20_funcTbl[2];
360 static seqFunc m_seq21_funcTbl[2];
361 static seqFunc m_seq22_funcTbl[4];
362 static seqFunc m_seq23_funcTbl[7];
363 static seqFunc m_seq24_funcTbl[5];
364 static seqFunc m_seq25_funcTbl[7];
365 static seqFunc m_seq26_funcTbl[3];
366 static seqFunc m_seq27_funcTbl[2];
367 static seqFunc m_seq28_funcTbl[3];
368 static seqFunc m_seq29_funcTbl[3];
369 static seqFunc m_seq30_funcTbl[6];
370 static seqFunc m_seq31_funcTbl[6];
371 static seqFunc m_seq32_funcTbl[7];
372 static seqFunc m_seq33_funcTbl[7];
373 static seqFunc m_seq34_funcTbl[9];
374 static seqFunc m_seq35_funcTbl[2];
375 static seqFunc m_seq36_funcTbl[4];
376 static seqFunc m_seq37_funcTbl[2];
377 static seqFunc m_seq38_funcTbl[2];
378 static seqFunc m_seq39_funcTbl[2];
379 static seqFunc m_seq40_funcTbl[3];
380 static seqFunc m_seq41_funcTbl[2];
381 static seqFunc m_seq42_funcTbl[2];
382 static seqFunc m_seq43_funcTbl[3];
383
384 /* 0xAC8 */ J3DModel* field_0xac8;
385 /* 0xACC */ J3DModel* field_0xacc;
386 /* 0xAD0 */ PathTrace_c m_path;
388 /* 0xB00 */ dMsgFlow_c mMsgFlow;
389 /* 0xB4C */ const actionFunc* mAction;
390 /* 0xB50 */ Mode_e mMode;
391 /* 0xB54 */ Mode_e mPrevMode;
392 /* 0xB58 */ int mObjNum;
393 /* 0xB5C */ f32 field_0xb5c;
394 /* 0xB60 */ f32 field_0xb60;
395 /* 0xB64 */ f32 field_0xb64;
396 /* 0xB68 */ u32 field_0xb68;
397 /* 0xB6C */ int mMsgIndex;
398 /* 0xB70 */ int mFlowNodeNum;
399 /* 0xB74 */ int field_0xb74;
400 /* 0xB78 */ int m_seqNum;
401 /* 0xB7C */ int field_0xb7c;
402 /* 0xB80 */ J3DAnmTransform* field_0xb80;
405 /* 0xB8C */ u16 field_0xb8c;
406 /* 0xB8C */ u16 field_0xb8e;
407 /* 0xB90 */ u16 field_0xb90;
408 /* 0xB92 */ s16 field_0xb92;
409 /* 0xB94 */ u8 field_0xb94;
410 /* 0xB95 */ u8 field_0xb95;
411 /* 0xB96 */ u8 field_0xb96;
412 /* 0xB97 */ u8 m_seqStep;
413 /* 0xB98 */ u8 field_0xb98;
414 /* 0xB99 */ u8 field_0xb99;
415};
416
417STATIC_ASSERT(sizeof(daNpcCdn3_c) == 0xb9c);
418
419
420#endif /* D_A_NPC_CDN3_H */
int cLib_chaseF(f32 *pvalue, f32 target, f32 step)
Definition c_lib.cpp:345
Definition d_a_npc_cd2.h:211
void SetStts(cCcD_Stts *stts)
Definition c_cc_d.h:459
void Set(cCcD_Obj *)
Definition c_cc_s.cpp:54
void SetH(f32 h)
Definition c_m3d_g_cyl.cpp:39
void SetR(f32 r)
Definition c_m3d_g_cyl.cpp:45
void SetC(const cXyz &pos)
Definition c_m3d_g_cyl.cpp:29
void Set(dCcD_SrcCyl const &)
Definition d_cc_d.cpp:405
void SetRoomId(int id)
Definition d_cc_d.h:250
void Init(int weight, int, fopAc_ac_c *pactor)
Definition d_cc_d.cpp:99
BOOL checkCommandDemoAccrpt()
Definition f_op_actor.h:212
BOOL checkCommandTalk()
Definition f_op_actor.h:213
void onCondition(u16 cond)
Definition f_op_actor.h:208
Definition d_msg_flow.h:49
const s16 static u16 saveBitLabels[822]
Definition d_save.h:2050
Definition d_a_npc_cd2.h:246
dCcD_Cyl mCyl
Definition d_a_npc_cd2.h:284
bool isM_()
Definition d_a_npc_cd2.cpp:333
dCcD_Stts mStts
Definition d_a_npc_cd2.h:283
int m_type
Definition d_a_npc_cd2.h:286
u8 mIsDarkWorld
Definition d_a_npc_cd2.h:296
static dCcD_SrcCyl const m_cylDat
Definition d_a_npc_cd2.h:182
Hylian Adult.
Definition d_a_npc_cdn3.h:17
void executeRelief()
Definition d_a_npc_cdn3.cpp:583
static seqFunc m_seq06_funcTbl[4]
Definition d_a_npc_cdn3.h:1541
int mFlowNodeNum
Definition d_a_npc_cdn3.h:398
void callInit()
Definition d_a_npc_cdn3.cpp:62
bool isChairStyle()
Definition d_a_npc_cdn3.cpp:872
int sellme(void *)
Definition d_a_npc_cdn3.cpp:1289
void setCollision()
Definition d_a_npc_cdn3.h:277
int createHeap()
Definition d_a_npc_cdn3.cpp:24
int sittalkbb(void *)
Definition d_a_npc_cdn3.cpp:1059
J3DAnmTransform * field_0xb80
Definition d_a_npc_cdn3.h:402
void checkSchedule()
Definition d_a_npc_cdn3.cpp:756
virtual ~daNpcCdn3_c()
Definition d_a_npc_cdn3.cpp:1365
int sittalka(void *)
Definition d_a_npc_cdn3.cpp:1007
f32 field_0xb64
Definition d_a_npc_cdn3.h:395
static seqFunc m_seq03_funcTbl[2]
Definition d_a_npc_cdn3.h:1534
int execute()
Definition d_a_npc_cdn3.cpp:1376
static seqFunc m_seq07_funcTbl[2]
Definition d_a_npc_cdn3.h:1544
bool isInShop()
Definition d_a_npc_cdn3.cpp:856
static seqFunc m_seq01_funcTbl[2]
Definition d_a_npc_cdn3.h:1530
bool isNoTurnTalk()
Definition d_a_npc_cdn3.cpp:881
void checkTimeSchedule()
Definition d_a_npc_cdn3.cpp:1433
void executeEscape()
Definition d_a_npc_cdn3.cpp:446
int runb(void *)
Definition d_a_npc_cdn3.cpp:1181
dMsgFlow_c mMsgFlow
Definition d_a_npc_cdn3.h:388
static seqFunc m_seq26_funcTbl[3]
Definition d_a_npc_cdn3.h:1632
u8 m_seqStep
Definition d_a_npc_cdn3.h:412
int field_0xb74
Definition d_a_npc_cdn3.h:399
int isStop()
Definition d_a_npc_cdn3.h:152
Mode_e mPrevMode
Definition d_a_npc_cdn3.h:391
int browseb(void *)
Definition d_a_npc_cdn3.cpp:1200
bool searchFirstScheduleTagSub(fopAc_ac_c *)
Definition d_a_npc_cdn3.cpp:733
static seqFunc m_seq02_funcTbl[2]
Definition d_a_npc_cdn3.h:1532
static seqFunc m_seq38_funcTbl[2]
Definition d_a_npc_cdn3.h:1704
int getType()
Definition d_a_npc_cdn3.h:153
void initFear2()
Definition d_a_npc_cdn3.cpp:529
static seqFunc m_seq33_funcTbl[7]
Definition d_a_npc_cdn3.h:1672
static seqFunc m_seq08_funcTbl[7]
Definition d_a_npc_cdn3.h:1546
u16 field_0xb90
Definition d_a_npc_cdn3.h:407
void setSchedule(daTagSchedule_c *)
Definition d_a_npc_cdn3.cpp:776
bool searchNextScheduleTag()
Definition d_a_npc_cdn3.cpp:1417
static seqFunc m_seq40_funcTbl[3]
Definition d_a_npc_cdn3.h:1712
int chkEvent()
Definition d_a_npc_cdn3.h:290
void(daNpcCdn3_c::*) actionFunc()
Definition d_a_npc_cdn3.h:19
f32 field_0xb60
Definition d_a_npc_cdn3.h:394
int talkc(void *)
Definition d_a_npc_cdn3.cpp:968
void setSpeed(f32 param_0, f32 param_1, f32 *param_2, int param_3)
Definition d_a_npc_cdn3.h:140
int getTimeMinute()
Definition d_a_npc_cdn3.h:116
int ladytalkb(void *)
Definition d_a_npc_cdn3.cpp:1250
int sitwaitb(void *)
Definition d_a_npc_cdn3.cpp:1033
static seqFunc m_seq25_funcTbl[7]
Definition d_a_npc_cdn3.h:1622
int mMsgIndex
Definition d_a_npc_cdn3.h:397
u8 field_0xb98
Definition d_a_npc_cdn3.h:413
u8 getStartTime()
Definition d_a_npc_cdn3.h:156
void initRelief()
Definition d_a_npc_cdn3.cpp:576
static seqFunc m_seq14_funcTbl[2]
Definition d_a_npc_cdn3.h:1570
static seqFunc m_seq41_funcTbl[2]
Definition d_a_npc_cdn3.h:1716
static seqFunc m_seq37_funcTbl[2]
Definition d_a_npc_cdn3.h:1700
void executeWait()
Definition d_a_npc_cdn3.cpp:79
int getFlowNodeNum()
Definition d_a_npc_cdn3.h:155
u16 field_0xb8c
Definition d_a_npc_cdn3.h:405
u8 field_0xb99
Definition d_a_npc_cdn3.h:414
static seqFunc m_seq19_funcTbl[7]
Definition d_a_npc_cdn3.h:1591
int sing(void *)
Definition d_a_npc_cdn3.cpp:1302
void executeTalk()
Definition d_a_npc_cdn3.cpp:275
u8 field_0xb95
Definition d_a_npc_cdn3.h:410
static seqFunc m_seq11_funcTbl[6]
Definition d_a_npc_cdn3.h:1560
static seqFunc m_seq10_funcTbl[2]
Definition d_a_npc_cdn3.h:1558
void lookat()
Definition d_a_npc_cdn3.cpp:1329
int ladytalka(void *)
Definition d_a_npc_cdn3.cpp:1237
void initCollision()
Definition d_a_npc_cdn3.h:268
u8 field_0xb96
Definition d_a_npc_cdn3.h:411
static seqFunc m_seq00_funcTbl[2]
Definition d_a_npc_cdn3.h:1528
static seqFunc m_seq34_funcTbl[9]
Definition d_a_npc_cdn3.h:1682
int draw()
Definition d_a_npc_cdn3.cpp:1485
int ctrlMsgAnm()
Definition d_a_npc_cdn3.cpp:661
int talka(void *)
Definition d_a_npc_cdn3.cpp:903
static seqFunc m_seq23_funcTbl[7]
Definition d_a_npc_cdn3.h:1608
static seqFunc m_seq28_funcTbl[3]
Definition d_a_npc_cdn3.h:1640
int dance(void *)
Definition d_a_npc_cdn3.cpp:1213
int runa(void *)
Definition d_a_npc_cdn3.cpp:1175
int create()
Definition d_a_npc_cdn3.cpp:371
int orderEvent()
Definition d_a_npc_cdn3.h:314
void initFight()
Definition d_a_npc_cdn3.cpp:548
daTagSchedule_c * field_0xb88
Definition d_a_npc_cdn3.h:404
void setAngle()
Definition d_a_npc_cdn3.cpp:608
int turnr(void *)
Definition d_a_npc_cdn3.cpp:1127
static seqFunc m_seq27_funcTbl[2]
Definition d_a_npc_cdn3.h:1638
int browsea(void *)
Definition d_a_npc_cdn3.cpp:1187
u8 getPathID()
Definition d_a_npc_cdn3.h:151
int field_0xb7c
Definition d_a_npc_cdn3.h:401
static const ActionPair ActionTable[8]
Definition d_a_npc_cdn3.h:13
static seqFunc m_seq42_funcTbl[2]
Definition d_a_npc_cdn3.h:1720
int getTime()
Definition d_a_npc_cdn3.h:126
static seqFunc m_seq29_funcTbl[3]
Definition d_a_npc_cdn3.h:1646
static seqFunc m_seq12_funcTbl[2]
Definition d_a_npc_cdn3.h:1564
int getGroupID()
Definition d_a_npc_cdn3.h:150
static seqFunc m_seq16_funcTbl[7]
Definition d_a_npc_cdn3.h:1574
int mObjNum
Definition d_a_npc_cdn3.h:392
int waitwall(void *)
Definition d_a_npc_cdn3.cpp:916
int playm(void *)
Definition d_a_npc_cdn3.cpp:1098
int getSeqNum()
Definition d_a_npc_cdn3.h:154
static seqFunc m_seq21_funcTbl[2]
Definition d_a_npc_cdn3.h:1603
u8 getEndTime()
Definition d_a_npc_cdn3.h:157
static seqFunc m_seq13_funcTbl[6]
Definition d_a_npc_cdn3.h:1566
J3DModel * field_0xacc
Definition d_a_npc_cdn3.h:385
bool searchFirstScheduleTag()
Definition d_a_npc_cdn3.cpp:1408
static seqFunc m_seq43_funcTbl[3]
Definition d_a_npc_cdn3.h:1725
static seqFunc m_seq30_funcTbl[6]
Definition d_a_npc_cdn3.h:1652
void setAction(daNpcCdn3_c::Mode_e)
Definition d_a_npc_cdn3.cpp:54
void initTalk()
Definition d_a_npc_cdn3.cpp:259
void initFear()
Definition d_a_npc_cdn3.cpp:494
void pathMoveF()
Definition d_a_npc_cdn3.cpp:612
Mode_e
Definition d_a_npc_cdn3.h:22
@ MODE_FIGHT
Definition d_a_npc_cdn3.h:29
@ MODE_ESCAPSE
Definition d_a_npc_cdn3.h:26
@ MODE_RELIEF
Definition d_a_npc_cdn3.h:30
@ MODE_TALK
Definition d_a_npc_cdn3.h:25
@ MODE_MAX_e
Definition d_a_npc_cdn3.h:31
@ MODE_FEAR2
Definition d_a_npc_cdn3.h:28
@ MODE_WAIT
Definition d_a_npc_cdn3.h:23
@ MODE_PATH
Definition d_a_npc_cdn3.h:24
@ MODE_FEAR
Definition d_a_npc_cdn3.h:27
void initWait()
Definition d_a_npc_cdn3.cpp:72
static seqFunc m_seq35_funcTbl[2]
Definition d_a_npc_cdn3.h:1688
Mode_e mMode
Definition d_a_npc_cdn3.h:390
int sittalkb(void *)
Definition d_a_npc_cdn3.cpp:1046
int turnl(void *)
Definition d_a_npc_cdn3.cpp:1145
const actionFunc * mAction
Definition d_a_npc_cdn3.h:389
static seqFunc * m_funcTbl[44]
Definition d_a_npc_cdn3.h:1503
int talkbwall(void *)
Definition d_a_npc_cdn3.cpp:942
int talkb(void *)
Definition d_a_npc_cdn3.cpp:955
int getObjNum()
Definition d_a_npc_cdn3.h:194
static seqFunc m_seq05_funcTbl[4]
Definition d_a_npc_cdn3.h:1538
u32 field_0xb68
Definition d_a_npc_cdn3.h:396
int sitwaita(void *)
Definition d_a_npc_cdn3.cpp:994
int sittalkab(void *)
Definition d_a_npc_cdn3.cpp:1020
void executeFight()
Definition d_a_npc_cdn3.cpp:558
int m_seqNum
Definition d_a_npc_cdn3.h:400
void executeFear()
Definition d_a_npc_cdn3.cpp:517
static seqFunc m_seq04_funcTbl[2]
Definition d_a_npc_cdn3.h:1536
int waitb(void *)
Definition d_a_npc_cdn3.cpp:981
void create_init()
Definition d_a_npc_cdn3.cpp:402
static seqFunc m_seq22_funcTbl[4]
Definition d_a_npc_cdn3.h:1605
int normtalkb(void *)
Definition d_a_npc_cdn3.cpp:1276
void initEscape()
Definition d_a_npc_cdn3.cpp:351
int walkb(void *)
Definition d_a_npc_cdn3.cpp:1169
static seqFunc m_seq15_funcTbl[2]
Definition d_a_npc_cdn3.h:1572
static seqFunc m_seq32_funcTbl[7]
Definition d_a_npc_cdn3.h:1662
void executeFear2()
Definition d_a_npc_cdn3.cpp:538
static seqFunc m_seq09_funcTbl[2]
Definition d_a_npc_cdn3.h:1556
int talkwall(void *)
Definition d_a_npc_cdn3.cpp:929
static seqFunc m_seq39_funcTbl[2]
Definition d_a_npc_cdn3.h:1708
int normtalka(void *)
Definition d_a_npc_cdn3.cpp:1263
int waita(void *)
Definition d_a_npc_cdn3.cpp:890
static seqFunc m_seq31_funcTbl[6]
Definition d_a_npc_cdn3.h:1657
s16 field_0xb92
Definition d_a_npc_cdn3.h:408
void initTimeSchedule()
Definition d_a_npc_cdn3.h:178
bool searchNextScheduleTagSub(fopAc_ac_c *)
Definition d_a_npc_cdn3.cpp:695
int walka(void *)
Definition d_a_npc_cdn3.cpp:1163
bool isOrchestra()
Definition d_a_npc_cdn3.cpp:860
void callExecute()
Definition d_a_npc_cdn3.cpp:67
static seqFunc m_seq18_funcTbl[2]
Definition d_a_npc_cdn3.h:1589
static seqFunc m_seq36_funcTbl[4]
Definition d_a_npc_cdn3.h:1693
int lookb(void *)
Definition d_a_npc_cdn3.cpp:1085
PathTrace_c m_path
Definition d_a_npc_cdn3.h:386
u16 field_0xb8e
Definition d_a_npc_cdn3.h:406
J3DModel * field_0xac8
Definition d_a_npc_cdn3.h:384
u8 field_0xb94
Definition d_a_npc_cdn3.h:409
void setMtx()
Definition d_a_npc_cdn3.cpp:1316
int(daNpcCdn3_c::*) seqFunc(void *)
Definition d_a_npc_cdn3.h:20
void initParamTime()
Definition d_a_npc_cdn3.h:159
int getTimeHour()
Definition d_a_npc_cdn3.h:106
int looka(void *)
Definition d_a_npc_cdn3.cpp:1072
f32 field_0xb5c
Definition d_a_npc_cdn3.h:393
void initPath()
Definition d_a_npc_cdn3.cpp:101
void executePath()
Definition d_a_npc_cdn3.cpp:115
int getDayOfWeek()
Definition d_a_npc_cdn3.h:130
static seqFunc m_seq20_funcTbl[2]
Definition d_a_npc_cdn3.h:1601
daNpcT_ActorMngr_c m_targetAct
Definition d_a_npc_cdn3.h:387
static seqFunc m_seq17_funcTbl[2]
Definition d_a_npc_cdn3.h:1584
static seqFunc m_seq24_funcTbl[5]
Definition d_a_npc_cdn3.h:1618
daTagSchedule_c * mTagSched
Definition d_a_npc_cdn3.h:403
Definition d_a_npc.h:31
static int checkNowWolfEyeUp()
Definition d_a_player.cpp:429
Definition d_a_tag_schedule.h:6
Definition f_op_actor.h:271
s8 argument
Definition f_op_actor.h:285
actor_attention_types attention_info
Definition f_op_actor.h:308
csXyz shape_angle
Definition f_op_actor.h:293
dEvt_info_c eventInfo
Definition f_op_actor.h:279
actor_place current
Definition f_op_actor.h:292
static void * target
Definition d_a_npc_cd2.cpp:886
f32 Cd2_HIO_cylH(int param_1)
Definition d_a_npc_cd2.h:135
f32 Cd2_HIO_cylR(int param_1)
Definition d_a_npc_cd2.h:131
STATIC_ASSERT(sizeof(daNpcCdn3_c)==0xb9c)
dCcS * dComIfG_Ccsp()
Definition d_com_inf_game.h:4297
BOOL dComIfGp_event_runCheck()
Definition d_com_inf_game.h:2586
int dKy_getdaytime_hour()
Definition d_kankyo.cpp:1703
u8 dKy_getDarktime_week()
Definition d_kankyo.cpp:1734
int dKy_getDarktime_hour()
Definition d_kankyo.cpp:1723
int dKy_getdaytime_minute()
Definition d_kankyo.cpp:1708
int dKy_getDarktime_minute()
Definition d_kankyo.cpp:1728
int dKy_get_dayofweek()
Definition d_kankyo.cpp:9555
vec y
Definition d_path.cpp:111
vec x
Definition d_path.cpp:110
int cXyz int * param_2
Definition d_path.cpp:106
@ fopAc_AttnFlag_SPEAK_e
Definition f_op_actor.h:153
@ fopAc_AttnFlag_TALK_e
Definition f_op_actor.h:144
@ fopAc_AttnFlag_UNK_0x400000
Definition f_op_actor.h:165
@ fopAc_AttnFlag_UNK_0x800000
Definition f_op_actor.h:166
@ dEvtCnd_CANTALK_e
Definition f_op_actor.h:191
u32 fopAcM_CheckCondition(fopAc_ac_c *i_actor, u32 flag)
Definition f_op_actor_mng.h:244
u32 fopAcM_GetParam(const void *i_actor)
Definition f_op_actor_mng.h:172
s8 fopAcM_GetRoomNo(const fopAc_ac_c *i_actor)
Definition f_op_actor_mng.h:124
s16 x
Definition c_sxyz.h:7
s16 z
Definition c_sxyz.h:7
u32 flags
Definition f_op_actor.h:256
cXyz pos
Definition f_op_actor.h:246
Definition d_a_npc_cdn3.h:332
actionFunc mExecFn
Definition d_a_npc_cdn3.h:334
actionFunc mInitFn
Definition d_a_npc_cdn3.h:333