Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_npc_tkc.h
Go to the documentation of this file.
1#ifndef D_A_NPC_TKC_H
2#define D_A_NPC_TKC_H
3
4#include "d/actor/d_a_npc4.h"
5
18 /* 0x70 */ f32 down_move_spd;
19 /* 0x74 */ f32 up_move_spd;
20 /* 0x78 */ f32 ellipse_width;
21 /* 0x7C */ f32 div;
22 /* 0x80 */ f32 max;
23 /* 0x84 */ f32 min;
25 /* 0x8C */ f32 target_height;
26 /* 0x90 */ f32 flight_range;
27 /* 0x94 */ f32 step;
28 /* 0x98 */ f32 amplitude;
29 /* 0x9C */ s16 interval;
31 /* 0xA0 */ s16 x_angle;
32 /* 0xA2 */ s16 z_angle;
33};
34
36public:
37 virtual ~daNpcTkc_Param_c() {}
38
39 static daNpcTkc_HIOParam const m;
40};
41
42#if DEBUG
44public:
47
49};
50#define NPC_TKC_HIO_CLASS daNpcTkc_HIO_c
51#else
52#define NPC_TKC_HIO_CLASS daNpcTkc_Param_c
53#endif
54
55class daNpcTkc_c : public daNpcF_c {
56public:
57 typedef void (daNpcTkc_c::*actionFunc)();
58 typedef int (daNpcTkc_c::*evtFunc)(int);
59
60 daNpcTkc_c();
63 int CreateHeap();
64 int Delete();
65 int Execute();
66 int Draw();
68 static int createHeapCallBack(fopAc_ac_c*);
69 static int ctrlJointCallBack(J3DJoint*, int);
70 void setActionWait();
71 void setActionFollow();
72 void setMtx();
73 bool setExpressionAnm(int, bool);
74 bool setExpressionBtp(int);
75 void reset();
76 void setMotionAnm(int, f32);
78 void wait();
79 void calcFly();
81 void follow();
82 void appear();
83 void normalTalk();
84 void setMotion(int, f32, int);
85 void setExpression(int, f32);
86 void warpTalk();
87 void demo();
88 int EvCut_TksSecretChild(int);
89 int EvCut_TksWarpExit(int);
90 int EvCut_TksWarpBack(int);
91 void setParam();
92 BOOL main();
93 BOOL ctrlBtk();
94 void setAttnPos();
95 int drawDbgInfo();
96
97 u8 getType() { return fopAcM_GetParam(this) & 0xFF; }
98 u16 getMessageNo() { return fopAcM_GetParam(this) >> 16; }
99 void setStart() { mStatus = 1; }
101 void setLookMode(int i_lookMode) { if (i_lookMode >= 0 && i_lookMode < 4 && i_lookMode != mLookMode) mLookMode = i_lookMode; }
104 void playExpression();
105 void playMotion();
107 void lookat();
108
109 static evtFunc mEvtSeqList[4];
110
111private:
112 /* 0xB48 */ Z2Creature mSound;
115 /* 0xBE0 */ NPC_TKC_HIO_CLASS* mpHIO;
116 /* 0xBE4 */ dCcD_Sph mSph;
117
118 /* 0xD20 */ actionFunc mAction;
120 /* 0xD34 */ fpc_ProcID mUnkID;
121 /* 0xD38 */ cXyz mSpeedTarget;
122 /* 0xD44 */ cXyz field_0xd44;
123 /* 0xD50 */ cXyz mPrevSpeed;
124 /* 0xD5C */ int mTimer;
125 /* 0xD60 */ int field_0xd60;
127 /* 0xD68 */ f32 field_0xd68;
128 /* 0xD6C */ f32 field_0xd6c;
129 /* 0xD70 */ s16 field_0xd70;
130 /* 0xD72 */ s16 mMsgNo;
131 /* 0xD74 */ s16 mLookMode;
132 /* 0xD76 */ u16 mMode;
133 /* 0xD78 */ s16 field_0xd78;
134 /* 0xD7A */ u8 mStatus;
135 /* 0xD7B */ u8 mColor;
136};
137
138STATIC_ASSERT(sizeof(daNpcTkc_c) == 0xd7c);
139
140#endif /* D_A_NPC_TKC_H */
@ Z2SE_TKC_V_ODOROKI_LOOP
Definition Z2SeMgr.h:912
cPhs__Step
Definition c_phase.h:8
Definition J3DJoint.h:63
Definition J3DModel.h:43
Definition JORMContext.h:120
Definition Z2Creature.h:7
virtual Z2SoundHandlePool * startCreatureVoiceLevel(JAISoundID soundID, s8 reverb)
Definition Z2Creature.cpp:240
Definition d_cc_d.h:473
Definition d_a_npc4.h:14
Definition d_a_npc4.h:292
Definition d_a_npc4.h:54
Definition d_a_npc_tkc.h:43
daNpcTkc_HIO_c()
Definition d_a_npc_tkc.cpp:76
void genMessage(JORMContext *)
Definition d_a_npc_tkc.cpp:80
daNpcTkc_HIOParam m
Definition d_a_npc_tkc.h:48
Definition d_a_npc_tkc.h:35
static daNpcTkc_HIOParam const m
Definition d_a_npc_tkc.h:151
virtual ~daNpcTkc_Param_c()
Definition d_a_npc_tkc.h:37
Ooccoo Jr.
Definition d_a_npc_tkc.h:55
void setMtx()
Definition d_a_npc_tkc.cpp:362
void follow()
Definition d_a_npc_tkc.cpp:854
f32 mCurrentPosYOffset
Definition d_a_npc_tkc.h:126
void callOdorokiSound()
Definition d_a_npc_tkc.h:100
void wait()
Definition d_a_npc_tkc.cpp:732
int ctrlJoint(J3DJoint *, J3DModel *)
Definition d_a_npc_tkc.cpp:325
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_tkc.cpp:337
int(daNpcTkc_c::*) evtFunc(int)
Definition d_a_npc_tkc.h:58
bool setExpressionBtp(int)
Definition d_a_npc_tkc.cpp:419
actionFunc mAction
Definition d_a_npc_tkc.h:118
bool setExpressionAnm(int, bool)
Definition d_a_npc_tkc.cpp:376
u8 mColor
Definition d_a_npc_tkc.h:135
request_of_phase_process_class mPhase
Definition d_a_npc_tkc.h:119
int EvCut_TksWarpExit(int)
Definition d_a_npc_tkc.cpp:1164
int EvCut_TksSecretChild(int)
Definition d_a_npc_tkc.cpp:1110
daNpcF_ActorMngr_c mActorMngr[1]
Definition d_a_npc_tkc.h:114
s16 mMsgNo
Definition d_a_npc_tkc.h:130
cXyz mSpeedTarget
Definition d_a_npc_tkc.h:121
Z2Creature mSound
Definition d_a_npc_tkc.h:112
int EvCut_TksWarpBack(int)
Definition d_a_npc_tkc.cpp:1265
BOOL main()
Definition d_a_npc_tkc.cpp:448
fpc_ProcID mUnkID
Definition d_a_npc_tkc.h:120
void calcFly()
Definition d_a_npc_tkc.cpp:782
void setActionWait()
Definition d_a_npc_tkc.cpp:354
BOOL searchPlayer()
Definition d_a_npc_tkc.cpp:836
void setExpressionTalkAfter()
Definition d_a_npc_tkc.cpp:939
u8 getType()
Definition d_a_npc_tkc.h:97
s16 field_0xd78
Definition d_a_npc_tkc.h:133
cPhs__Step Create()
Definition d_a_npc_tkc.cpp:203
void warpTalk()
Definition d_a_npc_tkc.cpp:1009
daNpcTkc_c()
Definition d_a_npc_tkc.cpp:135
u8 mStatus
Definition d_a_npc_tkc.h:134
f32 field_0xd68
Definition d_a_npc_tkc.h:127
void playMotion()
Definition d_a_npc_tkc.cpp:675
dCcD_Sph mSph
Definition d_a_npc_tkc.h:116
void setParam()
Definition d_a_npc_tkc.cpp:638
static int ctrlJointCallBack(J3DJoint *, int)
Definition d_a_npc_tkc.cpp:342
void reset()
Definition d_a_npc_tkc.cpp:551
void setActionFollow()
Definition d_a_npc_tkc.cpp:358
void setAttnPos()
Definition d_a_npc_tkc.cpp:521
f32 field_0xd6c
Definition d_a_npc_tkc.h:128
BOOL checkFindPlayer()
Definition d_a_npc_tkc.cpp:814
NPC_TKC_HIO_CLASS * mpHIO
Definition d_a_npc_tkc.h:115
daNpcF_MatAnm_c * mpMatAnm
Definition d_a_npc_tkc.h:113
u16 getMessageNo()
Definition d_a_npc_tkc.h:98
int Execute()
Definition d_a_npc_tkc.cpp:305
void setMotionAnm(int, f32)
Definition d_a_npc_tkc.cpp:689
void playExpression()
Definition d_a_npc_tkc.cpp:659
int Draw()
Definition d_a_npc_tkc.cpp:314
void setMotion(int, f32, int)
Definition d_a_npc_tkc.cpp:990
int CreateHeap()
Definition d_a_npc_tkc.cpp:266
s16 field_0xd70
Definition d_a_npc_tkc.h:129
u16 mMode
Definition d_a_npc_tkc.h:132
int drawDbgInfo()
Definition d_a_npc_tkc.cpp:547
void setExpression(int, f32)
Definition d_a_npc_tkc.cpp:1000
void appear()
Definition d_a_npc_tkc.cpp:912
BOOL setAction(actionFunc)
Definition d_a_npc_tkc.cpp:715
void setLookMode(int i_lookMode)
Definition d_a_npc_tkc.h:101
int mTimer
Definition d_a_npc_tkc.h:124
int Delete()
Definition d_a_npc_tkc.cpp:299
void lookat()
Definition d_a_npc_tkc.cpp:488
BOOL chkAction(actionFunc action)
Definition d_a_npc_tkc.h:106
void demo()
Definition d_a_npc_tkc.cpp:1076
static evtFunc mEvtSeqList[4]
Definition d_a_npc_tkc.h:128
cXyz field_0xd44
Definition d_a_npc_tkc.h:122
cXyz mPrevSpeed
Definition d_a_npc_tkc.h:123
int field_0xd60
Definition d_a_npc_tkc.h:125
void normalTalk()
Definition d_a_npc_tkc.cpp:947
~daNpcTkc_c()
Definition d_a_npc_tkc.cpp:137
BOOL ctrlBtk()
Definition d_a_npc_tkc.cpp:471
s16 mLookMode
Definition d_a_npc_tkc.h:131
void(daNpcTkc_c::*) actionFunc()
Definition d_a_npc_tkc.h:57
void setStart()
Definition d_a_npc_tkc.h:99
Definition f_op_actor.h:230
Definition m_Do_hostIO.h:27
static void action(b_bh_class *i_this)
Definition d_a_b_bh.cpp:1017
STATIC_ASSERT(sizeof(daNpcTkc_c)==0xd7c)
int BOOL
Definition types.h:33
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
u32 fopAcM_GetParam(const void *i_actor)
Definition f_op_actor_mng.h:192
unsigned int fpc_ProcID
Definition f_pc_base.h:10
Definition c_xyz.h:7
Definition d_a_npc4.h:423
Definition d_a_npc_tkc.h:15
f32 max
Definition d_a_npc_tkc.h:22
f32 amplitude
Definition d_a_npc_tkc.h:28
f32 div
Definition d_a_npc_tkc.h:21
f32 target_height
Definition d_a_npc_tkc.h:25
f32 down_move_spd
Definition d_a_npc_tkc.h:18
s16 interval
Definition d_a_npc_tkc.h:29
f32 step
Definition d_a_npc_tkc.h:27
f32 ellipse_width
Definition d_a_npc_tkc.h:20
f32 flight_range
Definition d_a_npc_tkc.h:26
f32 conversation_dist
Definition d_a_npc_tkc.h:24
s16 x_angle
Definition d_a_npc_tkc.h:31
f32 warp_initial_pos
Definition d_a_npc_tkc.h:17
s16 z_angle
Definition d_a_npc_tkc.h:32
f32 up_move_spd
Definition d_a_npc_tkc.h:19
f32 min
Definition d_a_npc_tkc.h:23
s16 rotation_interval
Definition d_a_npc_tkc.h:30
daNpcF_HIOParam common
Definition d_a_npc_tkc.h:16
Definition c_phase.h:17