Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_npc_tks.h
Go to the documentation of this file.
1#ifndef D_A_NPC_TKS_H
2#define D_A_NPC_TKS_H
3
4#include "d/actor/d_a_npc4.h"
5
17 /* 0x6C */ s32 hide_time_1; // Hide 時間 - Hide Time
18 /* 0x70 */ s32 hide_time_2; // Hide 時間 - Hide Time
19 /* 0x74 */ s32 show_up_wait_time_1; // ShowUpWait時間 - Show Up Wait Time
20 /* 0x78 */ s32 show_up_wait_time_2; // ShowUpWait時間 - Show Up Wait Time
21 /* 0x7C */ f32 area_a_dist; // エリアA距離 - Area A Distance
22 /* 0x80 */ f32 area_b_dist; // エリアB距離 - Area B Distance
23 /* 0x84 */ f32 jar_enter_exit_spd; // 壷出入り速度 - Jar Enter and Exit Speed
24 /* 0x88 */ f32 launch_spd; // 打ち上げ速度 - Launch Speed
25 /* 0x8C */ f32 movement_spd; // 移動速度 - Movement Speed
26 /* 0x90 */ f32 walk_spd; // 歩行速度 - Walk Speed
27 /* 0x94 */ f32 run_spd; // 走行速度 - Run Speed
28};
29
31#if DEBUG
32: public mDoHIO_entry_c
33#endif
34{
36};
37
39public:
40 virtual ~daNpcTks_Param_c() {}
41
42 static daNpcTks_HIOParam const m;
43};
44
46public:
48 /* 0x004 */ dKy_tevstr_c mTevStr;
49 /* 0x38C */ Z2Creature mSound;
50 /* 0x41C */ dCcD_Cyl mCyl;
52 /* 0x568 */ f32 mGroundH;
53 /* 0x56C */ u32 mShadowKey;
54 /* 0x570 */ u32 mAnmFlags;
55 /* 0x574 */ cXyz mPos;
56 /* 0x580 */ csXyz mAngle;
57 /* 0x586 */ u8 field_0x586;
58 /* 0x587 */ u8 mTsuboType;
59};
60
61class daNpcTks_c : public daNpcF_c {
62public:
63 typedef void (daNpcTks_c::*actionFunc)();
64
65 daNpcTks_c();
68 int CreateHeap();
69 int Delete();
70 int Execute();
71 int Draw();
73 static int createHeapCallBack(fopAc_ac_c*);
74 static int ctrlJointCallBack(J3DJoint*, int);
75 void setMtx();
76 bool setExpressionAnm(int, bool);
77 bool setExpressionBtp(int);
78 void setMotion(int, f32, int);
79 void reset();
81 void wait();
82 void setMotionAnm(int, f32);
83 void waitNude();
84 void waitLv6();
85 void talk();
86 void setExpression(int, f32);
87 void hide();
88 void shake();
89 void showUp();
90 void showUpWait();
91 void lookAroundA();
92 void lookAroundB();
93 void in();
94 void damage();
95 void broken();
96 void demo_appear();
97 void demo_scannon();
98 void demo_Lv6Gate();
99 void demo_farewell();
100 void demo_warpBack();
101 void demo_walkBack();
102 void demo_Lv7Start();
103 void demo_Lv3PickUp();
104 void demo_Lv6PickUp();
105 inline void setParam();
106 inline BOOL main();
107 inline BOOL ctrlBtk();
108 inline void setAttnPos();
109 inline void lookat();
110 inline BOOL drawDbgInfo();
111 inline void drawOtherMdls();
112
113 u8 getType() { return fopAcM_GetParam(this) & 0xFF; }
114 u8 getSwitchNo() { return (fopAcM_GetParam(this) >> 8) & 0xFF; }
115 u8 getTsuboType() { return 1 - (fopAcM_GetParam(this) >> 24) == 0; }
116 int getMessageNo() { return shape_angle.x; }
117 u8 getTBoxNo() { return (fopAcM_GetParam(this) >> 16) & 0xFF; }
118 inline BOOL checkFindPlayer();
119 inline void setLookMode(int, fopAc_ac_c*);
120 inline void setTsuboMotionAnm(int, f32);
121 inline void setExpressionTalkAfter();
122 inline BOOL step(s16, int);
123 inline void playExpression();
124 inline void playMotion();
125 inline void playTsuboAnm();
126 inline int getPlayerArea();
127
128private:
129 /* 0x0B48 */ Z2Creature mSound;
135 /* 0x120C */ daNpcTks_HIO_c* mHIO;
136 /* 0x1210 */ dCcD_Cyl mCyl;
137 /* 0x134C */ actionFunc mAction;
139 /* 0x1368 */ fpc_ProcID mItemID;
140 /* 0x136C */ f32 field_0x136c;
141 /* 0x1370 */ int field_0x1370;
142 /* 0x1374 */ int field_0x1374;
143 /* 0x1378 */ int mPlayerArea;
144 /* 0x137C */ u32 field_0x137c[2];
145 /* 0x1384 */ s16 mMessageNo;
146 /* 0x1386 */ s16 mLookMode;
147 /* 0x1388 */ u16 mMode;
148 /* 0x138A */ bool field_0x138a;
149 /* 0x138B */ bool field_0x138b;
150};
151
152STATIC_ASSERT(sizeof(daNpcTks_c) == 0x138c);
153
154#endif /* D_A_NPC_TKS_H */
cPhs__Step
Definition c_phase.h:8
Definition J3DJoint.h:63
Definition J3DModel.h:43
Definition Z2Creature.h:7
Definition c_bg_s_poly_info.h:7
Definition c_sxyz.h:10
Definition d_cc_d.h:461
Definition d_kankyo_tev_str.h:7
Definition d_a_npc4.h:14
Definition d_a_npc4.h:379
Definition d_a_npc4.h:292
Definition d_a_npc4.h:54
Definition d_a_npc_tks.h:45
u8 field_0x586
Definition d_a_npc_tks.h:57
dKy_tevstr_c mTevStr
Definition d_a_npc_tks.h:48
cBgS_PolyInfo polyBase
Definition d_a_npc_tks.h:51
cXyz mPos
Definition d_a_npc_tks.h:55
csXyz mAngle
Definition d_a_npc_tks.h:56
f32 mGroundH
Definition d_a_npc_tks.h:52
u32 mAnmFlags
Definition d_a_npc_tks.h:54
Z2Creature mSound
Definition d_a_npc_tks.h:49
dCcD_Cyl mCyl
Definition d_a_npc_tks.h:50
u32 mShadowKey
Definition d_a_npc_tks.h:53
u8 mTsuboType
Definition d_a_npc_tks.h:58
mDoExt_McaMorfSO * mpModelMorf
Definition d_a_npc_tks.h:47
Definition d_a_npc_tks.h:34
daNpcTks_HIOParam param
Definition d_a_npc_tks.h:35
Definition d_a_npc_tks.h:38
static daNpcTks_HIOParam const m
Definition d_a_npc_tks.h:220
virtual ~daNpcTks_Param_c()
Definition d_a_npc_tks.h:40
Ooccoo.
Definition d_a_npc_tks.h:61
void playMotion()
Definition d_a_npc_tks.cpp:788
int mPlayerArea
Definition d_a_npc_tks.h:143
void setMotion(int, f32, int)
Definition d_a_npc_tks.cpp:555
BOOL step(s16, int)
Definition d_a_npc_tks.cpp:1121
u8 getType()
Definition d_a_npc_tks.h:113
void setAttnPos()
Definition d_a_npc_tks.cpp:2908
int Delete()
Definition d_a_npc_tks.cpp:391
void setExpressionTalkAfter()
Definition d_a_npc_tks.cpp:1117
u32 field_0x137c[2]
Definition d_a_npc_tks.h:144
bool setExpressionAnm(int, bool)
Definition d_a_npc_tks.cpp:489
daNpcF_MatAnm_c * mpMatAnm
Definition d_a_npc_tks.h:131
int getPlayerArea()
Definition d_a_npc_tks.cpp:755
f32 field_0x136c
Definition d_a_npc_tks.h:140
void demo_scannon()
Definition d_a_npc_tks.cpp:1687
bool field_0x138b
Definition d_a_npc_tks.h:149
void damage()
Definition d_a_npc_tks.cpp:1455
int ctrlJoint(J3DJoint *, J3DModel *)
Definition d_a_npc_tks.cpp:407
u8 getTBoxNo()
Definition d_a_npc_tks.h:117
void setExpression(int, f32)
Definition d_a_npc_tks.cpp:1213
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_tks.cpp:442
int CreateHeap()
Definition d_a_npc_tks.cpp:343
void showUp()
Definition d_a_npc_tks.cpp:1295
Z2Creature mSound
Definition d_a_npc_tks.h:129
int field_0x1374
Definition d_a_npc_tks.h:142
int field_0x1370
Definition d_a_npc_tks.h:141
void in()
Definition d_a_npc_tks.cpp:1431
BOOL setAction(actionFunc)
Definition d_a_npc_tks.cpp:738
void demo_walkBack()
Definition d_a_npc_tks.cpp:2157
void reset()
Definition d_a_npc_tks.cpp:596
u8 getTsuboType()
Definition d_a_npc_tks.h:115
void demo_Lv3PickUp()
Definition d_a_npc_tks.cpp:2595
daNpcTks_HIO_c * mHIO
Definition d_a_npc_tks.h:135
void setTsuboMotionAnm(int, f32)
Definition d_a_npc_tks.cpp:960
BOOL ctrlBtk()
Definition d_a_npc_tks.cpp:2891
void lookat()
Definition d_a_npc_tks.cpp:824
void setLookMode(int, fopAc_ac_c *)
Definition d_a_npc_tks.cpp:918
~daNpcTks_c()
Definition d_a_npc_tks.cpp:206
int Execute()
Definition d_a_npc_tks.cpp:396
void talk()
Definition d_a_npc_tks.cpp:1155
fpc_ProcID mItemID
Definition d_a_npc_tks.h:139
void playTsuboAnm()
Definition d_a_npc_tks.cpp:885
void demo_warpBack()
Definition d_a_npc_tks.cpp:2033
daNpcTks_c()
Definition d_a_npc_tks.cpp:204
void waitLv6()
Definition d_a_npc_tks.cpp:1065
cPhs__Step Create()
Definition d_a_npc_tks.cpp:267
void drawOtherMdls()
Definition d_a_npc_tks.cpp:2971
daNpcF_ActorMngr_c mActorMngr[1]
Definition d_a_npc_tks.h:133
void hide()
Definition d_a_npc_tks.cpp:1222
int getMessageNo()
Definition d_a_npc_tks.h:116
void demo_Lv6Gate()
Definition d_a_npc_tks.cpp:1793
void shake()
Definition d_a_npc_tks.cpp:1267
dCcD_Cyl mCyl
Definition d_a_npc_tks.h:136
void setMotionAnm(int, f32)
Definition d_a_npc_tks.cpp:972
void demo_Lv6PickUp()
Definition d_a_npc_tks.cpp:2734
static int ctrlJointCallBack(J3DJoint *, int)
Definition d_a_npc_tks.cpp:446
fopAc_ac_c * field_0x1208
Definition d_a_npc_tks.h:134
daNpcTksTsubo_c mTksTsubo
Definition d_a_npc_tks.h:130
u8 getSwitchNo()
Definition d_a_npc_tks.h:114
u16 mMode
Definition d_a_npc_tks.h:147
void demo_farewell()
Definition d_a_npc_tks.cpp:1858
void wait()
Definition d_a_npc_tks.cpp:925
void playExpression()
Definition d_a_npc_tks.cpp:772
int Draw()
Definition d_a_npc_tks.cpp:401
s16 mLookMode
Definition d_a_npc_tks.h:146
void demo_Lv7Start()
Definition d_a_npc_tks.cpp:2286
void demo_appear()
Definition d_a_npc_tks.cpp:1522
bool setExpressionBtp(int)
Definition d_a_npc_tks.cpp:530
void lookAroundB()
Definition d_a_npc_tks.cpp:1403
BOOL main()
Definition d_a_npc_tks.cpp:565
actionFunc mAction
Definition d_a_npc_tks.h:137
daNpcF_Lookat_c mLookat
Definition d_a_npc_tks.h:132
void(daNpcTks_c::*) actionFunc()
Definition d_a_npc_tks.h:63
void lookAroundA()
Definition d_a_npc_tks.cpp:1375
bool field_0x138a
Definition d_a_npc_tks.h:148
void waitNude()
Definition d_a_npc_tks.cpp:1023
void setMtx()
Definition d_a_npc_tks.cpp:459
s16 mMessageNo
Definition d_a_npc_tks.h:145
BOOL drawDbgInfo()
Definition d_a_npc_tks.cpp:2967
void showUpWait()
Definition d_a_npc_tks.cpp:1319
void broken()
Definition d_a_npc_tks.cpp:1485
request_of_phase_process_class mPhases[2]
Definition d_a_npc_tks.h:138
void setParam()
Definition d_a_npc_tks.cpp:2884
BOOL checkFindPlayer()
Definition d_a_npc_tks.cpp:905
Definition f_op_actor.h:230
csXyz shape_angle
Definition f_op_actor.h:252
Definition m_Do_ext.h:331
Definition m_Do_hostIO.h:27
STATIC_ASSERT(sizeof(daNpcTks_c)==0x138c)
int BOOL
Definition types.h:33
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
signed long s32
Definition types.h:11
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
Definition c_xyz.h:7
Definition d_a_npc4.h:423
Definition d_a_npc_tks.h:15
f32 jar_enter_exit_spd
Definition d_a_npc_tks.h:23
s32 hide_time_2
Definition d_a_npc_tks.h:18
f32 area_b_dist
Definition d_a_npc_tks.h:22
f32 movement_spd
Definition d_a_npc_tks.h:25
s32 show_up_wait_time_1
Definition d_a_npc_tks.h:19
f32 area_a_dist
Definition d_a_npc_tks.h:21
daNpcF_HIOParam common
Definition d_a_npc_tks.h:16
s32 show_up_wait_time_2
Definition d_a_npc_tks.h:20
f32 run_spd
Definition d_a_npc_tks.h:27
s32 hide_time_1
Definition d_a_npc_tks.h:17
f32 launch_spd
Definition d_a_npc_tks.h:24
f32 walk_spd
Definition d_a_npc_tks.h:26
Definition c_phase.h:17