Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_npc_kasi_kyu.h
Go to the documentation of this file.
1#ifndef D_A_NPC_KASI_KYU_H
2#define D_A_NPC_KASI_KYU_H
3
4#include "d/actor/d_a_npc4.h"
6
18 /* 0x6C */ s16 escape_time; // 逃げるまでの時間 - Escape Time
19 /* 0x70 */ f32 escape_spd; // 逃げる速度 - Escape Speed
20};
21
23#if DEBUG
24: public mDoHIO_entry_c
25#endif
26{
28};
29
30class daNpcKasiKyu_c : public daNpcF_c {
31public:
32 typedef int (daNpcKasiKyu_c::*actionFunc)(int);
33 typedef BOOL (daNpcKasiKyu_c::*EventFn)(int);
34
38 int CreateHeap();
39 int Delete();
40 int Execute();
41 int Draw();
43 static int createHeapCallBack(fopAc_ac_c*);
44 static int ctrlJointCallBack(J3DJoint*, int);
45 void setParam();
46 BOOL main();
47 void setAttnPos();
48 void setMotionAnm(int, f32);
49 void setMotion(int, f32, int);
51 void reset();
52 void playMotion();
54 BOOL setAction(int (daNpcKasiKyu_c::*)(int));
55 void setLookMode(int);
56 void lookat();
57 BOOL step(s16, int);
59 int wait(int);
60 int fear(int);
62 static void* _srch_escape_tag(void*, void*);
64 int chace_st(int);
65 int chace(int);
67 int turn_link(int);
68 int turn_home(int);
69 int turn_center(int);
70 int talk_dummy(int);
71 int kya(int);
72 int kya2(int);
73 int kya_stop(int);
74 int iyan(int);
75 int iyan_look(int);
76 int turn_hana(int);
77 int escape(int);
78 int wait_dummy(int);
79 int cheer(int);
81 BOOL _turn_pos(cXyz const&, s16);
83 void _getOffset(cXyz const&, cXyz&);
85
87 s8 rv = fopAcM_GetParam(this) & 0xFF;
88
89 if (rv == 0xFF) {
90 rv = 0;
91 }
92
93 return rv;
94 }
95 int getMessageNo() { return home.angle.x; }
96 u8 getRailNo() { return fopAcM_GetParam(this) >> 8; }
97 void setSygnal(int i_sygnal) { mSygnal = i_sygnal; }
98 void setChacePos(const cXyz& i_chacePos) { mChacePos = i_chacePos; }
99 void setCenterPos(const cXyz& i_centerPos) { mCenterPos = i_centerPos; }
100 void setPlPoint(const int& i_plPoint) { mPlPoint = i_plPoint; }
101 void off_talked() { mTalked = false; }
102 BOOL is_talked() { return mTalked; }
103 BOOL is_fear() { return mFear; }
104 BOOL is_escape() { return mEscape; }
108
109 static EventFn mEvtSeqList[1];
113
114private:
116 /* 0x0BEC */ u8 field_0xbec[0xbf0 - 0xbec];
119 /* 0x0C94 */ daNpcF_Path_c mPath;
121 /* 0x12C8 */ dCcD_Cyl mCyl;
122 /* 0x1404 */ s16 mMode;
123 /* 0x1408 */ actionFunc mAction;
126 /* 0x1430 */ int field_0x1430;
127 /* 0x1434 */ int field_0x1434;
128 /* 0x1438 */ int mMessageNo;
129 /* 0x143C */ s16 mLookMode;
130 /* 0x143E */ s16 field_0x143e;
131 /* 0x1440 */ int mSygnal;
132 /* 0x1444 */ cXyz mChacePos;
133 /* 0x1450 */ cXyz mCenterPos;
134 /* 0x145C */ int mPlPoint;
135 /* 0x1460 */ int field_0x1460;
136 /* 0x1464 */ s8 mType;
137 /* 0x1465 */ s8 field_0x1465;
138 /* 0x1466 */ bool mTalked;
139 /* 0x1467 */ bool mFear;
140 /* 0x1468 */ bool mEscape;
141 /* 0x1469 */ u8 field_0x1469;
142};
144STATIC_ASSERT(sizeof(daNpcKasiKyu_c) == 0x146c);
145
147public:
149
150 static daNpcKasiKyu_HIOParam const m;
151};
152
153#endif /* D_A_NPC_KASI_KYU_H */
cPhs__Step
Definition c_phase.h:8
Definition J3DJoint.h:63
Definition J3DModel.h:43
Definition Z2Creature.h:60
void SetWeight(u8 weight)
Definition c_cc_d.h:180
Definition d_cc_d.h:461
Definition d_a_npc4.h:14
Definition d_a_npc4.h:379
Definition d_a_npc4.h:330
Definition d_a_npc4.h:54
dCcD_Stts mCcStts
Definition d_a_npc4.h:62
Definition d_a_npc_kasi_kyu.h:26
daNpcKasiKyu_HIOParam param
Definition d_a_npc_kasi_kyu.h:27
Definition d_a_npc_kasi_kyu.h:146
static daNpcKasiKyu_HIOParam const m
Definition d_a_npc_kasi_kyu.h:159
virtual ~daNpcKasiKyu_Param_c()
Definition d_a_npc_kasi_kyu.h:148
Kili.
Definition d_a_npc_kasi_kyu.h:30
int getMessageNo()
Definition d_a_npc_kasi_kyu.h:95
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_kasi_kyu.cpp:323
daNpcF_ActorMngr_c mActorMngr[1]
Definition d_a_npc_kasi_kyu.h:118
s16 field_0x143e
Definition d_a_npc_kasi_kyu.h:130
void lookat()
Definition d_a_npc_kasi_kyu.cpp:624
static daTagEscape_c * mTargetTag
Definition d_a_npc_kasi_kyu.h:110
void setChacePos(const cXyz &i_chacePos)
Definition d_a_npc_kasi_kyu.h:98
BOOL is_escape()
Definition d_a_npc_kasi_kyu.h:104
void setSygnal(int i_sygnal)
Definition d_a_npc_kasi_kyu.h:97
void setParam()
Definition d_a_npc_kasi_kyu.cpp:341
int turn_home(int)
Definition d_a_npc_kasi_kyu.cpp:1045
int field_0x1434
Definition d_a_npc_kasi_kyu.h:127
int turn_link(int)
Definition d_a_npc_kasi_kyu.cpp:1024
fpc_ProcID field_0x142c
Definition d_a_npc_kasi_kyu.h:125
s16 mMode
Definition d_a_npc_kasi_kyu.h:122
BOOL main()
Definition d_a_npc_kasi_kyu.cpp:356
s8 mType
Definition d_a_npc_kasi_kyu.h:136
s8 field_0x1465
Definition d_a_npc_kasi_kyu.h:137
u8 field_0x1469
Definition d_a_npc_kasi_kyu.h:141
int CreateHeap()
Definition d_a_npc_kasi_kyu.cpp:245
void chgWeightHeavy()
Definition d_a_npc_kasi_kyu.h:105
static void * _srch_escape_tag(void *, void *)
Definition d_a_npc_kasi_kyu.cpp:878
void setMotionAnm(int, f32)
Definition d_a_npc_kasi_kyu.cpp:427
void adjustShapeAngle()
Definition d_a_npc_kasi_kyu.h:84
int ctrlJoint(J3DJoint *, J3DModel *)
Definition d_a_npc_kasi_kyu.cpp:294
Z2CreatureCitizen mSound
Definition d_a_npc_kasi_kyu.h:115
int mMessageNo
Definition d_a_npc_kasi_kyu.h:128
dCcD_Cyl mCyl
Definition d_a_npc_kasi_kyu.h:121
int iyan(int)
Definition d_a_npc_kasi_kyu.cpp:1183
int chace(int)
Definition d_a_npc_kasi_kyu.cpp:969
void _getOffset(cXyz const &, cXyz &)
Definition d_a_npc_kasi_kyu.cpp:1392
daNpcF_Path_c mPath
Definition d_a_npc_kasi_kyu.h:119
BOOL(daNpcKasiKyu_c::*) EventFn(int)
Definition d_a_npc_kasi_kyu.h:33
s8 getType()
Definition d_a_npc_kasi_kyu.h:86
cXyz mChacePos
Definition d_a_npc_kasi_kyu.h:132
int Execute()
Definition d_a_npc_kasi_kyu.cpp:280
int Delete()
Definition d_a_npc_kasi_kyu.cpp:275
int mPlPoint
Definition d_a_npc_kasi_kyu.h:134
daNpcKasiKyu_c()
Definition d_a_npc_kasi_kyu.cpp:147
int turn_center(int)
Definition d_a_npc_kasi_kyu.cpp:1071
u8 field_0xbec[0xbf0 - 0xbec]
Definition d_a_npc_kasi_kyu.h:116
void setLookMode(int)
Definition d_a_npc_kasi_kyu.cpp:618
void setAttnPos()
Definition d_a_npc_kasi_kyu.cpp:392
int turn_hana(int)
Definition d_a_npc_kasi_kyu.cpp:1225
bool mEscape
Definition d_a_npc_kasi_kyu.h:140
int(daNpcKasiKyu_c::*) actionFunc(int)
Definition d_a_npc_kasi_kyu.h:32
int getWolfPathNearIdx()
Definition d_a_npc_kasi_kyu.cpp:906
void setPlPoint(const int &i_plPoint)
Definition d_a_npc_kasi_kyu.h:100
BOOL drawDbgInfo()
Definition d_a_npc_kasi_kyu.cpp:449
void playMotion()
Definition d_a_npc_kasi_kyu.cpp:502
void setCenterPos(const cXyz &i_centerPos)
Definition d_a_npc_kasi_kyu.h:99
int talk_dummy(int)
Definition d_a_npc_kasi_kyu.cpp:1093
int kya_stop(int)
Definition d_a_npc_kasi_kyu.cpp:1160
actionFunc mAction
Definition d_a_npc_kasi_kyu.h:123
int wait_dummy(int)
Definition d_a_npc_kasi_kyu.cpp:1283
int field_0x1430
Definition d_a_npc_kasi_kyu.h:126
static f32 mTargetTagDist
Definition d_a_npc_kasi_kyu.h:111
int escape(int)
Definition d_a_npc_kasi_kyu.cpp:1253
s16 mLookMode
Definition d_a_npc_kasi_kyu.h:129
void chgWeightLight()
Definition d_a_npc_kasi_kyu.h:106
cXyz mCenterPos
Definition d_a_npc_kasi_kyu.h:133
int cheer(int)
Definition d_a_npc_kasi_kyu.cpp:1302
daNpcF_Lookat_c mLookat
Definition d_a_npc_kasi_kyu.h:117
int mSygnal
Definition d_a_npc_kasi_kyu.h:131
static EventFn mEvtSeqList[1]
Definition d_a_npc_kasi_kyu.h:143
int kya(int)
Definition d_a_npc_kasi_kyu.cpp:1111
int chace_st(int)
Definition d_a_npc_kasi_kyu.cpp:948
BOOL actor_front_check(fopAc_ac_c *)
Definition d_a_npc_kasi_kyu.cpp:1378
BOOL setAction(int(daNpcKasiKyu_c::*)(int))
Definition d_a_npc_kasi_kyu.cpp:601
static s16 mWolfAngle
Definition d_a_npc_kasi_kyu.h:112
bool mTalked
Definition d_a_npc_kasi_kyu.h:138
int fear(int)
Definition d_a_npc_kasi_kyu.cpp:822
BOOL _turn_pos(cXyz const &, s16)
Definition d_a_npc_kasi_kyu.cpp:1371
cPhs__Step Create()
Definition d_a_npc_kasi_kyu.cpp:197
void reset()
Definition d_a_npc_kasi_kyu.cpp:453
BOOL chkFindPlayer()
Definition d_a_npc_kasi_kyu.cpp:706
BOOL is_talked()
Definition d_a_npc_kasi_kyu.h:102
BOOL step(s16, int)
Definition d_a_npc_kasi_kyu.cpp:679
request_of_phase_process_class mPhases[3]
Definition d_a_npc_kasi_kyu.h:124
static int ctrlJointCallBack(J3DJoint *, int)
Definition d_a_npc_kasi_kyu.cpp:328
u8 getRailNo()
Definition d_a_npc_kasi_kyu.h:96
~daNpcKasiKyu_c()
Definition d_a_npc_kasi_kyu.cpp:149
void off_talked()
Definition d_a_npc_kasi_kyu.h:101
cXyz getChacePos()
Definition d_a_npc_kasi_kyu.cpp:1004
int iyan_look(int)
Definition d_a_npc_kasi_kyu.cpp:1201
int Draw()
Definition d_a_npc_kasi_kyu.cpp:286
BOOL pl_front_check()
Definition d_a_npc_kasi_kyu.h:107
bool mFear
Definition d_a_npc_kasi_kyu.h:139
int field_0x1460
Definition d_a_npc_kasi_kyu.h:135
void playMotionAnmLoop(daNpcF_c::daNpcF_anmPlayData ***)
Definition d_a_npc_kasi_kyu.cpp:563
int wait(int)
Definition d_a_npc_kasi_kyu.cpp:728
BOOL is_fear()
Definition d_a_npc_kasi_kyu.h:103
daNpcKasiKyu_HIO_c * mHIO
Definition d_a_npc_kasi_kyu.h:120
void setMotion(int, f32, int)
Definition d_a_npc_kasi_kyu.cpp:438
daTagEscape_c * srchWolfTag()
Definition d_a_npc_kasi_kyu.cpp:871
int kya2(int)
Definition d_a_npc_kasi_kyu.cpp:1140
BOOL _turn_to_link(s16)
Definition d_a_npc_kasi_kyu.cpp:1366
Definition d_a_tag_escape.h:6
Definition f_op_actor.h:230
actor_place home
Definition f_op_actor.h:249
Definition m_Do_hostIO.h:27
STATIC_ASSERT(sizeof(daNpcKasiKyu_c)==0x146c)
daPy_py_c * daPy_getPlayerActorClass()
Definition d_a_player.h:1260
int BOOL
Definition types.h:33
signed char s8
Definition types.h:7
signed short int s16
Definition types.h:9
float f32
Definition types.h:25
unsigned char u8
Definition types.h:8
if(ix< 0x3fe00000)
Definition e_acos.c:77
u32 fopAcM_GetParam(const void *i_actor)
Definition f_op_actor_mng.h:192
unsigned int fpc_ProcID
Definition f_pc_base.h:10
s16 x
Definition c_sxyz.h:7
csXyz angle
Definition f_op_actor.h:206
Definition c_xyz.h:7
Definition d_a_npc4.h:423
Definition d_a_npc4.h:148
Definition d_a_npc_kasi_kyu.h:16
f32 escape_spd
Definition d_a_npc_kasi_kyu.h:19
s16 escape_time
Definition d_a_npc_kasi_kyu.h:18
daNpcF_HIOParam common
Definition d_a_npc_kasi_kyu.h:17
Definition c_phase.h:17