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
9 /* 0x6C */ s16 escape_time; // 逃げるまでの時間 - Escape Time
10 /* 0x70 */ f32 escape_spd; // 逃げる速度 - Escape Speed
11};
12
14public:
16
17 static daNpcKasiKyu_HIOParam const m;
18};
19
20#if DEBUG
22public:
24
26
28};
29
30#define NPC_KASI_KYU_HIO_CLASS daNpcKasiKyu_HIO_c
31#else
32#define NPC_KASI_KYU_HIO_CLASS daNpcKasiKyu_Param_c
33#endif
34
43class daNpcKasiKyu_c : public daNpcF_c {
44public:
45 typedef int (daNpcKasiKyu_c::*actionFunc)(int);
46 typedef BOOL (daNpcKasiKyu_c::*EventFn)(int);
47
51 int CreateHeap();
52 int Delete();
53 int Execute();
54 int Draw();
56 static int createHeapCallBack(fopAc_ac_c*);
57 static int ctrlJointCallBack(J3DJoint*, int);
58 void setParam();
59 BOOL main();
60 void setAttnPos();
61 void setMotionAnm(int, f32);
62 void setMotion(int, f32, int);
64 void reset();
65 void playMotion();
67 BOOL setAction(int (daNpcKasiKyu_c::*)(int));
68 void setLookMode(int);
69 void lookat();
70 BOOL step(s16, int);
72 int wait(int);
73 int fear(int);
75 static void* _srch_escape_tag(void*, void*);
77 int chace_st(int);
78 int chace(int);
80 int turn_link(int);
81 int turn_home(int);
82 int turn_center(int);
83 int talk_dummy(int);
84 int kya(int);
85 int kya2(int);
86 int kya_stop(int);
87 int iyan(int);
88 int iyan_look(int);
89 int turn_hana(int);
90 int escape(int);
91 int wait_dummy(int);
92 int cheer(int);
94 BOOL _turn_pos(cXyz const&, s16);
96 void _getOffset(cXyz const&, cXyz&);
98
100 s8 rv = fopAcM_GetParam(this) & 0xFF;
101
102 if (rv == 0xFF) {
103 rv = 0;
104 }
105
106 return rv;
107 }
108 int getMessageNo() { return home.angle.x; }
109 u8 getRailNo() { return fopAcM_GetParam(this) >> 8; }
110 void setSygnal(int i_sygnal) { mSygnal = i_sygnal; }
111 void setChacePos(const cXyz& i_chacePos) { mChacePos = i_chacePos; }
112 void setCenterPos(const cXyz& i_centerPos) { mCenterPos = i_centerPos; }
113 void setPlPoint(const int& i_plPoint) { mPlPoint = i_plPoint; }
114 void off_talked() { mTalked = false; }
115 BOOL is_talked() { return mTalked; }
116 BOOL is_fear() { return mFear; }
117 BOOL is_escape() { return mEscape; }
121
122 static EventFn mEvtSeqList[1];
126
127private:
129 /* 0x0BEC */ u8 field_0xbec[0xbf0 - 0xbec];
132 /* 0x0C94 */ daNpcF_Path_c mPath;
133 /* 0x12C4 */ NPC_KASI_KYU_HIO_CLASS* mpHIO;
134 /* 0x12C8 */ dCcD_Cyl mCyl;
135 /* 0x1404 */ s16 mMode;
136 /* 0x1408 */ actionFunc mAction;
139 /* 0x1430 */ int field_0x1430;
140 /* 0x1434 */ int field_0x1434;
141 /* 0x1438 */ int mMessageNo;
142 /* 0x143C */ s16 mLookMode;
143 /* 0x143E */ s16 field_0x143e;
144 /* 0x1440 */ int mSygnal;
145 /* 0x1444 */ cXyz mChacePos;
146 /* 0x1450 */ cXyz mCenterPos;
147 /* 0x145C */ int mPlPoint;
148 /* 0x1460 */ int field_0x1460;
149 /* 0x1464 */ s8 mType;
150 /* 0x1465 */ s8 field_0x1465;
151 /* 0x1466 */ bool mTalked;
152 /* 0x1467 */ bool mFear;
153 /* 0x1468 */ bool mEscape;
154 /* 0x1469 */ u8 field_0x1469;
155};
156
157STATIC_ASSERT(sizeof(daNpcKasiKyu_c) == 0x146c);
158
159#endif /* D_A_NPC_KASI_KYU_H */
int cPhs_Step
Definition c_phase.h:8
Definition J3DJoint.h:66
Definition J3DModel.h:43
Definition JORMContext.h:128
Definition Z2Creature.h:60
void SetWeight(u8 weight)
Definition c_cc_d.h:184
Definition d_cc_d.h:472
Definition d_a_npc4.h:14
Definition d_a_npc4.h:140
Definition d_a_npc4.h:72
Definition d_a_npc4.h:170
dCcD_Stts mCcStts
Definition d_a_npc4.h:178
Definition d_a_npc_kasi_kyu.h:21
daNpcKasiKyu_HIOParam m
Definition d_a_npc_kasi_kyu.h:27
void genMessage(JORMContext *)
Definition d_a_npc_kasi_kyu.cpp:190
daNpcKasiKyu_HIO_c()
Definition d_a_npc_kasi_kyu.cpp:186
Definition d_a_npc_kasi_kyu.h:13
static daNpcKasiKyu_HIOParam const m
Definition d_a_npc_kasi_kyu.h:147
virtual ~daNpcKasiKyu_Param_c()
Definition d_a_npc_kasi_kyu.h:15
Kili.
Definition d_a_npc_kasi_kyu.h:43
int getMessageNo()
Definition d_a_npc_kasi_kyu.h:108
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_kasi_kyu.cpp:344
daNpcF_ActorMngr_c mActorMngr[1]
Definition d_a_npc_kasi_kyu.h:131
s16 field_0x143e
Definition d_a_npc_kasi_kyu.h:143
void lookat()
Definition d_a_npc_kasi_kyu.cpp:643
static daTagEscape_c * mTargetTag
Definition d_a_npc_kasi_kyu.h:123
void setChacePos(const cXyz &i_chacePos)
Definition d_a_npc_kasi_kyu.h:111
BOOL is_escape()
Definition d_a_npc_kasi_kyu.h:117
void setSygnal(int i_sygnal)
Definition d_a_npc_kasi_kyu.h:110
void setParam()
Definition d_a_npc_kasi_kyu.cpp:362
int turn_home(int)
Definition d_a_npc_kasi_kyu.cpp:1054
int field_0x1434
Definition d_a_npc_kasi_kyu.h:140
int turn_link(int)
Definition d_a_npc_kasi_kyu.cpp:1033
fpc_ProcID field_0x142c
Definition d_a_npc_kasi_kyu.h:138
s16 mMode
Definition d_a_npc_kasi_kyu.h:135
BOOL main()
Definition d_a_npc_kasi_kyu.cpp:375
s8 mType
Definition d_a_npc_kasi_kyu.h:149
s8 field_0x1465
Definition d_a_npc_kasi_kyu.h:150
u8 field_0x1469
Definition d_a_npc_kasi_kyu.h:154
int CreateHeap()
Definition d_a_npc_kasi_kyu.cpp:266
void chgWeightHeavy()
Definition d_a_npc_kasi_kyu.h:118
static void * _srch_escape_tag(void *, void *)
Definition d_a_npc_kasi_kyu.cpp:887
void setMotionAnm(int, f32)
Definition d_a_npc_kasi_kyu.cpp:446
void adjustShapeAngle()
Definition d_a_npc_kasi_kyu.h:97
int ctrlJoint(J3DJoint *, J3DModel *)
Definition d_a_npc_kasi_kyu.cpp:315
Z2CreatureCitizen mSound
Definition d_a_npc_kasi_kyu.h:128
int mMessageNo
Definition d_a_npc_kasi_kyu.h:141
dCcD_Cyl mCyl
Definition d_a_npc_kasi_kyu.h:134
int iyan(int)
Definition d_a_npc_kasi_kyu.cpp:1192
int chace(int)
Definition d_a_npc_kasi_kyu.cpp:978
void _getOffset(cXyz const &, cXyz &)
Definition d_a_npc_kasi_kyu.cpp:1390
daNpcF_Path_c mPath
Definition d_a_npc_kasi_kyu.h:132
BOOL(daNpcKasiKyu_c::*) EventFn(int)
Definition d_a_npc_kasi_kyu.h:46
s8 getType()
Definition d_a_npc_kasi_kyu.h:99
cXyz mChacePos
Definition d_a_npc_kasi_kyu.h:145
int Execute()
Definition d_a_npc_kasi_kyu.cpp:301
int Delete()
Definition d_a_npc_kasi_kyu.cpp:296
int mPlPoint
Definition d_a_npc_kasi_kyu.h:147
daNpcKasiKyu_c()
Definition d_a_npc_kasi_kyu.cpp:195
int turn_center(int)
Definition d_a_npc_kasi_kyu.cpp:1080
u8 field_0xbec[0xbf0 - 0xbec]
Definition d_a_npc_kasi_kyu.h:129
void setLookMode(int)
Definition d_a_npc_kasi_kyu.cpp:637
void setAttnPos()
Definition d_a_npc_kasi_kyu.cpp:411
int turn_hana(int)
Definition d_a_npc_kasi_kyu.cpp:1234
bool mEscape
Definition d_a_npc_kasi_kyu.h:153
int(daNpcKasiKyu_c::*) actionFunc(int)
Definition d_a_npc_kasi_kyu.h:45
int getWolfPathNearIdx()
Definition d_a_npc_kasi_kyu.cpp:915
void setPlPoint(const int &i_plPoint)
Definition d_a_npc_kasi_kyu.h:113
BOOL drawDbgInfo()
Definition d_a_npc_kasi_kyu.cpp:468
void playMotion()
Definition d_a_npc_kasi_kyu.cpp:521
void setCenterPos(const cXyz &i_centerPos)
Definition d_a_npc_kasi_kyu.h:112
int talk_dummy(int)
Definition d_a_npc_kasi_kyu.cpp:1102
int kya_stop(int)
Definition d_a_npc_kasi_kyu.cpp:1169
actionFunc mAction
Definition d_a_npc_kasi_kyu.h:136
NPC_KASI_KYU_HIO_CLASS * mpHIO
Definition d_a_npc_kasi_kyu.h:133
int wait_dummy(int)
Definition d_a_npc_kasi_kyu.cpp:1292
int field_0x1430
Definition d_a_npc_kasi_kyu.h:139
static f32 mTargetTagDist
Definition d_a_npc_kasi_kyu.h:124
int escape(int)
Definition d_a_npc_kasi_kyu.cpp:1262
s16 mLookMode
Definition d_a_npc_kasi_kyu.h:142
void chgWeightLight()
Definition d_a_npc_kasi_kyu.h:119
cXyz mCenterPos
Definition d_a_npc_kasi_kyu.h:146
int cheer(int)
Definition d_a_npc_kasi_kyu.cpp:1311
daNpcF_Lookat_c mLookat
Definition d_a_npc_kasi_kyu.h:130
int mSygnal
Definition d_a_npc_kasi_kyu.h:144
static EventFn mEvtSeqList[1]
Definition d_a_npc_kasi_kyu.h:143
int kya(int)
Definition d_a_npc_kasi_kyu.cpp:1120
int chace_st(int)
Definition d_a_npc_kasi_kyu.cpp:957
BOOL actor_front_check(fopAc_ac_c *)
Definition d_a_npc_kasi_kyu.cpp:1376
BOOL setAction(int(daNpcKasiKyu_c::*)(int))
Definition d_a_npc_kasi_kyu.cpp:620
static s16 mWolfAngle
Definition d_a_npc_kasi_kyu.h:125
bool mTalked
Definition d_a_npc_kasi_kyu.h:151
int fear(int)
Definition d_a_npc_kasi_kyu.cpp:831
BOOL _turn_pos(cXyz const &, s16)
Definition d_a_npc_kasi_kyu.cpp:1369
void reset()
Definition d_a_npc_kasi_kyu.cpp:472
BOOL chkFindPlayer()
Definition d_a_npc_kasi_kyu.cpp:725
BOOL is_talked()
Definition d_a_npc_kasi_kyu.h:115
BOOL step(s16, int)
Definition d_a_npc_kasi_kyu.cpp:698
request_of_phase_process_class mPhases[3]
Definition d_a_npc_kasi_kyu.h:137
static int ctrlJointCallBack(J3DJoint *, int)
Definition d_a_npc_kasi_kyu.cpp:349
u8 getRailNo()
Definition d_a_npc_kasi_kyu.h:109
~daNpcKasiKyu_c()
Definition d_a_npc_kasi_kyu.cpp:197
cPhs_Step Create()
Definition d_a_npc_kasi_kyu.cpp:213
void off_talked()
Definition d_a_npc_kasi_kyu.h:114
cXyz getChacePos()
Definition d_a_npc_kasi_kyu.cpp:1013
int iyan_look(int)
Definition d_a_npc_kasi_kyu.cpp:1210
int Draw()
Definition d_a_npc_kasi_kyu.cpp:307
BOOL pl_front_check()
Definition d_a_npc_kasi_kyu.h:120
bool mFear
Definition d_a_npc_kasi_kyu.h:152
int field_0x1460
Definition d_a_npc_kasi_kyu.h:148
void playMotionAnmLoop(daNpcF_c::daNpcF_anmPlayData ***)
Definition d_a_npc_kasi_kyu.cpp:582
int wait(int)
Definition d_a_npc_kasi_kyu.cpp:747
BOOL is_fear()
Definition d_a_npc_kasi_kyu.h:116
void setMotion(int, f32, int)
Definition d_a_npc_kasi_kyu.cpp:457
daTagEscape_c * srchWolfTag()
Definition d_a_npc_kasi_kyu.cpp:880
int kya2(int)
Definition d_a_npc_kasi_kyu.cpp:1149
BOOL _turn_to_link(s16)
Definition d_a_npc_kasi_kyu.cpp:1364
Definition d_a_tag_escape.h:6
Definition f_op_actor.h:243
actor_place home
Definition f_op_actor.h:262
Definition m_Do_hostIO.h:26
STATIC_ASSERT(sizeof(daNpcKasiKyu_c)==0x146c)
daPy_py_c * daPy_getPlayerActorClass()
Definition d_a_player.h:1258
u32 fopAcM_GetParam(const void *i_actor)
Definition f_op_actor_mng.h:204
unsigned int fpc_ProcID
Definition f_pc_base.h:10
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
s16 x
Definition c_sxyz.h:7
csXyz angle
Definition f_op_actor.h:219
Definition c_xyz.h:7
Definition d_a_npc4.h:430
Definition d_a_npc4.h:264
Definition d_a_npc_kasi_kyu.h:7
f32 escape_spd
Definition d_a_npc_kasi_kyu.h:10
s16 escape_time
Definition d_a_npc_kasi_kyu.h:9
daNpcF_HIOParam common
Definition d_a_npc_kasi_kyu.h:8
Definition c_phase.h:19