Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_npc_kyury.h
Go to the documentation of this file.
1#ifndef D_A_NPC_KYURY_H
2#define D_A_NPC_KYURY_H
3
4#include "d/actor/d_a_npc.h"
5
9
11public:
13
14 static const daNpc_Kyury_HIOParam m;
15};
16
17#if DEBUG
27
28#define NPC_KYURY_HIO_CLASS daNpc_Kyury_HIO_c
29#else
30#define NPC_KYURY_HIO_CLASS daNpc_Kyury_Param_c
31#endif
32
41class daNpc_Kyury_c : public daNpcT_c {
42public:
43 typedef int (daNpc_Kyury_c::*cutFunc)(int);
44 typedef int (daNpc_Kyury_c::*actionFunc)(void*);
45
52
54 /* 0x01 */ FACE_MOT_UNK_1 = 1,
55 /* 0x05 */ FACE_MOT_UNK_5 = 5,
56 /* 0x06 */ FACE_MOT_UNK_6 = 6,
57 /* 0x07 */ FACE_MOT_UNK_7 = 7,
58 /* 0x08 */ FACE_MOT_UNK_8 = 8,
59 /* 0x09 */ FACE_MOT_UNK_9 = 9,
60 /* 0x0A */ FACE_MOT_UNK_10 = 10,
61 /* 0x0C */ FACE_MOT_UNK_12 = 12,
62 /* 0x0D */ FACE_MOT_UNK_13 = 13,
63 /* 0x0E */ FACE_MOT_UNK_14 = 14,
64 /* 0x0F */ FACE_MOT_UNK_15 = 15,
65 };
66
67 enum Motion {
68 /* 0x00 */ MOT_UNK_0 = 0,
69 /* 0x05 */ MOT_UNK_5 = 5,
70 /* 0x08 */ MOT_UNK_8 = 8,
71 /* 0x0C */ MOT_UNK_12 = 12,
72 };
73
75 int create();
76 int CreateHeap();
77 int Delete();
78 int Execute();
79 int Draw();
80 static int createHeapCallBack(fopAc_ac_c*);
81 static int ctrlJointCallBack(J3DJoint*, int);
82 u8 getType();
83 int isDelete();
84 void reset();
85 void afterJntAnm(int);
86 void setParam();
88 void setAfterTalkMotion();
89 void srchActors();
90 BOOL evtTalk();
92 void action();
93 void beforeMove();
94 void setAttnPos();
95 void setCollision();
96 int drawDbgInfo();
97 void drawOtherMdl();
98 int selectAction();
99 int chkAction(int (daNpc_Kyury_c::*)(void*));
100 int setAction(int (daNpc_Kyury_c::*)(void*));
101 int cutConversation(int);
102 int wait(void*);
103 int talk(void*);
105 daNpcT_motionAnmData_c const* param_2,
107 int param_4,
109 int param_6, daNpcT_evtData_c const* param_7, char** param_8)
110 : daNpcT_c(param_1, param_2, param_3, param_4, param_5, param_6, param_7, param_8) {}
111 u16 getEyeballMaterialNo() { return 2; }
112 s32 getHeadJointNo() { return 4; }
113 s32 getNeckJointNo() { return 3; }
114 s32 getBackboneJointNo() { return 1; }
115 BOOL checkChangeJoint(int i_joint) { return i_joint == 4; }
116 BOOL checkRemoveJoint(int i_joint) { return i_joint == 10; }
117
119 u16 nodeNo = home.angle.x;
120 if (nodeNo == 0xFFFF) {
121 return -1;
122 }
123 return nodeNo;
124 }
125
126 static char* mCutNameList[2];
127 static cutFunc mCutList[2];
128
129private:
130 /* 0xE40 */ NPC_KYURY_HIO_CLASS* mpHIO;
131 /* 0xE44 */ J3DModel* mpModel[2];
132 /* 0xE4C */ dCcD_Cyl mCyl;
133 /* 0xF88 */ u8 mType;
135 /* 0xF94 */ daNpcT_Path_c mPath;
136 /* 0xFBC */ actionFunc field_0xfbc[2];
137 /* 0xFD4 */ u8 field_0xfd4;
138 /* 0xFD5 */ u8 field_0xfd5;
139 /* 0xFD8 */ int field_0xfd8;
140};
141
142STATIC_ASSERT(sizeof(daNpc_Kyury_c) == 0xfdc);
144#endif /* D_A_NPC_KYURY_H */
Definition J3DJoint.h:63
Definition J3DModel.h:43
Definition JORMContext.h:120
Definition d_cc_d.h:461
Definition d_a_npc.h:30
Definition d_a_npc.h:145
Definition d_a_npc.h:516
Definition d_a_npc_kyury.h:18
void genMessage(JORMContext *)
Definition d_a_npc_kyury.cpp:63
daNpc_Kyury_HIOParam m
Definition d_a_npc_kyury.h:25
daNpc_Kyury_HIO_c()
Definition d_a_npc_kyury.cpp:55
void listenPropertyEvent(const JORPropertyEvent *)
Definition d_a_npc_kyury.cpp:59
Definition d_a_npc_kyury.h:10
virtual ~daNpc_Kyury_Param_c()
Definition d_a_npc_kyury.h:12
static const daNpc_Kyury_HIOParam m
Definition d_a_npc_kyury.h:10
Pergie.
Definition d_a_npc_kyury.h:41
u8 field_0xfd4
Definition d_a_npc_kyury.h:137
int(daNpc_Kyury_c::*) cutFunc(int)
Definition d_a_npc_kyury.h:43
~daNpc_Kyury_c()
Definition d_a_npc_kyury.cpp:153
Motion
Definition d_a_npc_kyury.h:67
@ MOT_UNK_5
Definition d_a_npc_kyury.h:69
@ MOT_UNK_8
Definition d_a_npc_kyury.h:70
@ MOT_UNK_12
Definition d_a_npc_kyury.h:71
@ MOT_UNK_0
Definition d_a_npc_kyury.h:68
J3DModel * mpModel[2]
Definition d_a_npc_kyury.h:131
int drawDbgInfo()
Definition d_a_npc_kyury.cpp:584
u16 getEyeballMaterialNo()
Definition d_a_npc_kyury.h:111
u8 getType()
Definition d_a_npc_kyury.cpp:291
dCcD_Cyl mCyl
Definition d_a_npc_kyury.h:132
NPC_KYURY_HIO_CLASS * mpHIO
Definition d_a_npc_kyury.h:130
int wait(void *)
Definition d_a_npc_kyury.cpp:735
daNpcT_Path_c mPath
Definition d_a_npc_kyury.h:135
int setAction(int(daNpc_Kyury_c::*)(void *))
Definition d_a_npc_kyury.cpp:621
s32 getNeckJointNo()
Definition d_a_npc_kyury.h:113
FaceMotion
Definition d_a_npc_kyury.h:53
@ FACE_MOT_UNK_13
Definition d_a_npc_kyury.h:62
@ FACE_MOT_UNK_1
Definition d_a_npc_kyury.h:54
@ FACE_MOT_UNK_14
Definition d_a_npc_kyury.h:63
@ FACE_MOT_UNK_8
Definition d_a_npc_kyury.h:58
@ FACE_MOT_UNK_15
Definition d_a_npc_kyury.h:64
@ FACE_MOT_UNK_10
Definition d_a_npc_kyury.h:60
@ FACE_MOT_UNK_6
Definition d_a_npc_kyury.h:56
@ FACE_MOT_UNK_7
Definition d_a_npc_kyury.h:57
@ FACE_MOT_UNK_12
Definition d_a_npc_kyury.h:61
@ FACE_MOT_UNK_5
Definition d_a_npc_kyury.h:55
@ FACE_MOT_UNK_9
Definition d_a_npc_kyury.h:59
int selectAction()
Definition d_a_npc_kyury.cpp:606
void action()
Definition d_a_npc_kyury.cpp:472
void drawOtherMdl()
Definition d_a_npc_kyury.cpp:588
BOOL checkChangeJoint(int i_joint)
Definition d_a_npc_kyury.h:115
int Delete()
Definition d_a_npc_kyury.cpp:255
u8 field_0xfd5
Definition d_a_npc_kyury.h:138
u8 mType
Definition d_a_npc_kyury.h:133
void setCollision()
Definition d_a_npc_kyury.cpp:544
int getFlowNodeNo()
Definition d_a_npc_kyury.h:118
static char * mCutNameList[2]
Definition d_a_npc_kyury.h:143
BOOL checkChangeEvt()
Definition d_a_npc_kyury.cpp:386
int create()
Definition d_a_npc_kyury.cpp:160
BOOL evtCutProc()
Definition d_a_npc_kyury.cpp:458
void setAttnPos()
Definition d_a_npc_kyury.cpp:500
int Draw()
Definition d_a_npc_kyury.cpp:265
s32 getHeadJointNo()
Definition d_a_npc_kyury.h:112
BOOL checkRemoveJoint(int i_joint)
Definition d_a_npc_kyury.h:116
int talk(void *)
Definition d_a_npc_kyury.cpp:813
int isDelete()
Definition d_a_npc_kyury.cpp:303
int CreateHeap()
Definition d_a_npc_kyury.cpp:206
void beforeMove()
Definition d_a_npc_kyury.cpp:489
int chkAction(int(daNpc_Kyury_c::*)(void *))
Definition d_a_npc_kyury.cpp:617
Type
Definition d_a_npc_kyury.h:46
@ TYPE_0
Definition d_a_npc_kyury.h:47
@ TYPE_1
Definition d_a_npc_kyury.h:48
@ TYPE_2
Definition d_a_npc_kyury.h:49
@ TYPE_3
Definition d_a_npc_kyury.h:50
void afterJntAnm(int)
Definition d_a_npc_kyury.cpp:343
daNpcT_ActorMngr_c mActorMngr[1]
Definition d_a_npc_kyury.h:134
void setParam()
Definition d_a_npc_kyury.cpp:353
void setAfterTalkMotion()
Definition d_a_npc_kyury.cpp:415
void reset()
Definition d_a_npc_kyury.cpp:316
daNpc_Kyury_c(daNpcT_faceMotionAnmData_c const *param_1, daNpcT_motionAnmData_c const *param_2, daNpcT_MotionSeqMngr_c::sequenceStepData_c const *param_3, int param_4, daNpcT_MotionSeqMngr_c::sequenceStepData_c const *param_5, int param_6, daNpcT_evtData_c const *param_7, char **param_8)
Definition d_a_npc_kyury.h:104
int(daNpc_Kyury_c::*) actionFunc(void *)
Definition d_a_npc_kyury.h:44
int field_0xfd8
Definition d_a_npc_kyury.h:139
BOOL evtTalk()
Definition d_a_npc_kyury.cpp:449
static cutFunc mCutList[2]
Definition d_a_npc_kyury.h:148
actionFunc field_0xfbc[2]
Definition d_a_npc_kyury.h:136
static int ctrlJointCallBack(J3DJoint *, int)
Definition d_a_npc_kyury.cpp:278
s32 getBackboneJointNo()
Definition d_a_npc_kyury.h:114
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_kyury.cpp:274
void srchActors()
Definition d_a_npc_kyury.cpp:435
int Execute()
Definition d_a_npc_kyury.cpp:261
int cutConversation(int)
Definition d_a_npc_kyury.cpp:635
Definition f_op_actor.h:230
actor_place home
Definition f_op_actor.h:249
Definition m_Do_hostIO.h:27
STATIC_ASSERT(sizeof(daNpc_Kyury_c)==0xfdc)
int BOOL
Definition types.h:33
unsigned short int u16
Definition types.h:10
signed long s32
Definition types.h:11
unsigned char u8
Definition types.h:8
Definition JORReflexible.h:10
s16 x
Definition c_sxyz.h:7
csXyz angle
Definition f_op_actor.h:206
Definition d_a_npc.h:836
Definition d_a_npc.h:483
Definition d_a_npc.h:488
Definition d_a_npc.h:503
Definition d_a_npc_kyury.h:6
daNpcT_HIOParam common
Definition d_a_npc_kyury.h:7