Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_npc_besu.h
Go to the documentation of this file.
1#ifndef D_A_NPC_BESU_H
2#define D_A_NPC_BESU_H
3
4#if DEBUG
6#endif
7#include "d/actor/d_a_npc.h"
8
17class daNpc_Besu_c : public daNpcT_c {
18public:
19 typedef int (daNpc_Besu_c::*cutFunc)(int);
20 typedef int (daNpc_Besu_c::*actionFunc)(void*);
21
23 int create();
24 int CreateHeap();
25 int Delete();
26 int Execute();
27 int Draw();
28 static int createHeapCallBack(fopAc_ac_c*);
29 static int ctrlJointCallBack(J3DJoint*, int);
30 u8 getType();
31 BOOL isDelete();
32 void reset();
33 BOOL chkNurse();
34 BOOL chkBesu3();
35 void afterJntAnm(int);
36 void setParam();
38 void setAfterTalkMotion();
39 void srchActors();
40 BOOL evtTalk();
42 void action();
43 void beforeMove();
44 void setAttnPos();
45 void setCollision();
46 int drawDbgInfo();
47 void drawOtherMdl();
48 bool setCupAnm(int, int, f32);
49 bool afterSetMotionAnm(int, int, f32, int);
51 void changeAnm(int*, int*);
52 void changeBck(int*, int*);
53 void changeBtp(int*, int*);
54 void changeBtk(int*, int*);
55 int selectAction();
58 void mop(int, int);
62 int cutSwdTutorial(int);
63 int cutFindMonkey(int);
64 int cutGetWoodSwd(int);
66 int cutSurprise(int);
70 int cutNurse(int);
71 int cutClothTry(int);
72 int cutThankYou(int);
73 int wait(void*);
74 int swdTutorial(void*);
75 int nurse(void*);
76 int giveHotWater(void*);
77 int talk(void*);
79 daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
80 daNpcT_motionAnmData_c const* i_motionAnmData,
81 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
82 int i_faceMotionStepNum,
83 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
84 int i_motionStepNum,
85 daNpcT_evtData_c const* i_evtData,
86 char** i_arcNames)
87 : daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
88 i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
89 i_arcNames) {
90 // "construct"
91 OS_REPORT("|%06d:%x|daNpc_Besu_c -> コンストラクト\n", g_Counter.mCounter0, this);
92 }
93 u16 getEyeballMaterialNo() { return 2; }
94 s32 getHeadJointNo() { return 4; }
95 s32 getNeckJointNo() { return 3; }
96 s32 getBackboneJointNo() { return true; }
97 BOOL checkChangeJoint(int arg0) { return arg0 == 4; }
98 BOOL checkRemoveJoint(int arg0) { return arg0 == 6; }
99
101 u16 nodeNo = home.angle.x;
102 u32 rv;
103 if (nodeNo == 0xffff) {
104 rv = -1;
105 } else {
106 rv = nodeNo;
107 }
108 return rv;
109 }
110
111 u8 getPathID() { return (fopAcM_GetParam(this) & 0xff00) >> 8; }
112 u8 getBitSW() { return (fopAcM_GetParam(this) & 0xff0000) >> 16; }
113
114 static char* mCutNameList[15];
115 static cutFunc mCutList[15];
116
117private:
119 /* 0x0E44 */ u8 field_0xe44[0x0E48 - 0xE44];
120 /* 0x0E48 */ J3DModel* mpClothModel[1];
121 /* 0x0E4C */ dCcD_Cyl mCyl1;
122 /* 0x0F88 */ dCcD_Cyl mCyl2;
123 /* 0x10C4 */ u8 mType;
126 /* 0x110C */ actionFunc mAction;
127 /* 0x1118 */ int field_0x1118;
128 /* 0x111C */ int field_0x111c;
129 /* 0x1120 */ int field_0x1120;
130 /* 0x1124 */ int field_0x1124;
131 /* 0x1128 */ int field_0x1128;
132 /* 0x112C */ u8 field_0x112c;
133 /* 0x112D */ u8 field_0x112d;
134 /* 0x112E */ u8 field_0x112e;
135 /* 0x112F */ u8 field_0x112f;
136 /* 0x1130 */ u8 field_0x1130;
137 /* 0x1131 */ u8 field_0x1131[0x1134 - 0x1131];
138 /* 0x1134 */ u8 field_0x1134;
139};
140
141STATIC_ASSERT(sizeof(daNpc_Besu_c) == 0x1138);
142
145 /* 0x8C */ f32 field_0x8c;
146};
147
149public:
151
152 static const daNpc_Besu_HIOParam m;
153};
154
155#endif /* D_A_NPC_BESU_H */
counter_class g_Counter
Definition c_counter.cpp:8
Definition J3DJoint.h:63
Definition J3DModel.h:43
Definition d_cc_d.h:461
Definition d_a_npc.h:30
Definition d_a_npc.h:516
Definition d_a_npc_besu.h:148
virtual ~daNpc_Besu_Param_c()
Definition d_a_npc_besu.h:150
static const daNpc_Besu_HIOParam m
Definition d_a_npc_besu.h:550
Beth.
Definition d_a_npc_besu.h:17
J3DModel * mpClothModel[1]
Definition d_a_npc_besu.h:120
BOOL checkChangeEvt()
Definition d_a_npc_besu.cpp:1070
s32 getNeckJointNo()
Definition d_a_npc_besu.h:95
void mop(int, int)
Definition d_a_npc_besu.cpp:1660
void setParam()
Definition d_a_npc_besu.cpp:991
actionFunc mAction
Definition d_a_npc_besu.h:126
static int ctrlJointCallBack(J3DJoint *, int)
Definition d_a_npc_besu.cpp:780
dCcD_Cyl mCyl2
Definition d_a_npc_besu.h:122
BOOL evtTalk()
Definition d_a_npc_besu.cpp:1219
u32 getFlowNodeNo()
Definition d_a_npc_besu.h:100
u8 field_0x112e
Definition d_a_npc_besu.h:134
void setCollision()
Definition d_a_npc_besu.cpp:1389
u8 field_0x112c
Definition d_a_npc_besu.h:132
int cutNurse(int)
Definition d_a_npc_besu.cpp:2451
void drawOtherMdl()
Definition d_a_npc_besu.cpp:1461
int field_0x1124
Definition d_a_npc_besu.h:130
u8 field_0x112d
Definition d_a_npc_besu.h:133
daNpcT_faceMotionAnmData_c getFaceMotionAnm(daNpcT_faceMotionAnmData_c)
Definition d_a_npc_besu.cpp:1519
int create()
Definition d_a_npc_besu.cpp:595
void afterJntAnm(int)
Definition d_a_npc_besu.cpp:981
int field_0x111c
Definition d_a_npc_besu.h:128
u16 getEyeballMaterialNo()
Definition d_a_npc_besu.h:93
BOOL chkBesu3()
Definition d_a_npc_besu.cpp:977
u8 field_0x1134
Definition d_a_npc_besu.h:138
int selectAction()
Definition d_a_npc_besu.cpp:1613
int swdTutorial(void *)
Definition d_a_npc_besu.cpp:2805
int field_0x1128
Definition d_a_npc_besu.h:131
int cutConversationAboutPachinko(int)
Definition d_a_npc_besu.cpp:1723
void reset()
Definition d_a_npc_besu.cpp:932
dCcD_Cyl mCyl1
Definition d_a_npc_besu.h:121
void changeBtp(int *, int *)
Definition d_a_npc_besu.cpp:1579
u8 mType
Definition d_a_npc_besu.h:123
BOOL evtCutProc()
Definition d_a_npc_besu.cpp:1229
daNpcT_ActorMngr_c mActorMngr[7]
Definition d_a_npc_besu.h:124
int drawDbgInfo()
Definition d_a_npc_besu.cpp:1457
int cutConversationAboutGoron(int)
Definition d_a_npc_besu.cpp:2395
int talk(void *)
Definition d_a_npc_besu.cpp:2934
int CreateHeap()
Definition d_a_npc_besu.cpp:664
int nurse(void *)
Definition d_a_npc_besu.cpp:2833
void srchActors()
Definition d_a_npc_besu.cpp:1151
int Delete()
Definition d_a_npc_besu.cpp:754
void changeAnm(int *, int *)
Definition d_a_npc_besu.cpp:1529
u8 field_0xe44[0x0E48 - 0xE44]
Definition d_a_npc_besu.h:119
void changeBck(int *, int *)
Definition d_a_npc_besu.cpp:1552
int setAction(actionFunc)
Definition d_a_npc_besu.cpp:1645
BOOL chkNurse()
Definition d_a_npc_besu.cpp:973
daNpc_Besu_c(daNpcT_faceMotionAnmData_c const *i_faceMotionAnmData, daNpcT_motionAnmData_c const *i_motionAnmData, daNpcT_MotionSeqMngr_c::sequenceStepData_c const *i_faceMotionSequenceData, int i_faceMotionStepNum, daNpcT_MotionSeqMngr_c::sequenceStepData_c const *i_motionSequenceData, int i_motionStepNum, daNpcT_evtData_c const *i_evtData, char **i_arcNames)
Definition d_a_npc_besu.h:78
int(daNpc_Besu_c::*) actionFunc(void *)
Definition d_a_npc_besu.h:20
static char * mCutNameList[15]
Definition d_a_npc_besu.h:494
void setAttnPos()
Definition d_a_npc_besu.cpp:1317
u8 getPathID()
Definition d_a_npc_besu.h:111
int cutConversationAboutSaru(int)
Definition d_a_npc_besu.cpp:1678
BOOL checkRemoveJoint(int arg0)
Definition d_a_npc_besu.h:98
bool setCupAnm(int, int, f32)
Definition d_a_npc_besu.cpp:1491
int cutGetWoodSwd(int)
Definition d_a_npc_besu.cpp:2130
int cutConversationAboutWoodSwd(int)
Definition d_a_npc_besu.cpp:1884
int cutCacaricoConversation(int)
Definition d_a_npc_besu.cpp:2174
u8 field_0x112f
Definition d_a_npc_besu.h:135
int(daNpc_Besu_c::*) cutFunc(int)
Definition d_a_npc_besu.h:19
u8 getBitSW()
Definition d_a_npc_besu.h:112
int cutThankYou(int)
Definition d_a_npc_besu.cpp:2520
int field_0x1120
Definition d_a_npc_besu.h:129
u8 field_0x1131[0x1134 - 0x1131]
Definition d_a_npc_besu.h:137
bool afterSetMotionAnm(int, int, f32, int)
Definition d_a_npc_besu.cpp:1514
void beforeMove()
Definition d_a_npc_besu.cpp:1306
int giveHotWater(void *)
Definition d_a_npc_besu.cpp:2911
s32 getBackboneJointNo()
Definition d_a_npc_besu.h:96
void changeBtk(int *, int *)
Definition d_a_npc_besu.cpp:1602
int Execute()
Definition d_a_npc_besu.cpp:761
int Draw()
Definition d_a_npc_besu.cpp:765
int cutSwdTutorial(int)
Definition d_a_npc_besu.cpp:1965
int wait(void *)
Definition d_a_npc_besu.cpp:2556
void setAfterTalkMotion()
Definition d_a_npc_besu.cpp:1128
int chkAction(actionFunc)
Definition d_a_npc_besu.cpp:1641
int cutConversationAboutDeathMt(int)
Definition d_a_npc_besu.cpp:2346
int cutSurprise(int)
Definition d_a_npc_besu.cpp:2227
BOOL isDelete()
Definition d_a_npc_besu.cpp:835
actionFunc mNextAction
Definition d_a_npc_besu.h:125
mDoExt_McaMorfSO * mpCupModelMorf
Definition d_a_npc_besu.h:118
BOOL checkChangeJoint(int arg0)
Definition d_a_npc_besu.h:97
u8 field_0x1130
Definition d_a_npc_besu.h:136
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_besu.cpp:776
u8 getType()
Definition d_a_npc_besu.cpp:792
static cutFunc mCutList[15]
Definition d_a_npc_besu.h:512
int cutFindMonkey(int)
Definition d_a_npc_besu.cpp:2029
s32 getHeadJointNo()
Definition d_a_npc_besu.h:94
void action()
Definition d_a_npc_besu.cpp:1244
int field_0x1118
Definition d_a_npc_besu.h:127
int cutClothTry(int)
Definition d_a_npc_besu.cpp:2488
~daNpc_Besu_c()
Definition d_a_npc_besu.cpp:530
int cutConversationInHotel(int)
Definition d_a_npc_besu.cpp:2270
Definition f_op_actor.h:230
actor_place home
Definition f_op_actor.h:249
Definition m_Do_ext.h:331
STATIC_ASSERT(sizeof(daNpc_Besu_c)==0x1138)
int BOOL
Definition types.h:33
unsigned long u32
Definition types.h:12
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
u32 fopAcM_GetParam(const void *i_actor)
Definition f_op_actor_mng.h:192
s16 x
Definition c_sxyz.h:7
csXyz angle
Definition f_op_actor.h:206
u32 mCounter0
Definition c_counter.h:7
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_besu.h:143
daNpcT_HIOParam common
Definition d_a_npc_besu.h:144
f32 field_0x8c
Definition d_a_npc_besu.h:145