Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_npc_len.h
Go to the documentation of this file.
1#ifndef D_A_NPC_LEN_H
2#define D_A_NPC_LEN_H
3
4#include "d/actor/d_a_npc.h"
5
8 /* 0x8C */ s16 field_0x8c;
9 /* 0x8E */ s16 field_0x8e;
10 /* 0x90 */ f32 field_0x90;
11};
12
14public:
15 virtual ~daNpc_Len_Param_c() {}
16
17 static const daNpc_Len_HIOParam m;
18};
19
20#if DEBUG
30
31#define NPC_LEN_HIO_CLASS daNpc_Len_HIO_c
32#else
33#define NPC_LEN_HIO_CLASS daNpc_Len_Param_c
34#endif
35
45class daNpc_Len_c : public daNpcT_c {
46public:
47 typedef int (daNpc_Len_c::*actionFunc)(void*);
48 typedef int (daNpc_Len_c::*cutFunc)(int);
49
51 int create();
52 int CreateHeap();
53 int Delete();
54 int Execute();
55 int Draw();
56 static int createHeapCallBack(fopAc_ac_c*);
57 static int ctrlJointCallBack(J3DJoint*, int);
58 u8 getType();
59 BOOL isDelete();
60 void reset();
61 void afterJntAnm(int);
62 void setParam();
64 void setAfterTalkMotion();
65 void srchActors();
66 BOOL evtTalk();
68 void action();
69 void beforeMove();
70 void setAttnPos();
71 void setCollision();
72 int drawDbgInfo();
73 int selectAction();
78 int cutHurry(int);
79 int cutTakeWoodStatue(int);
80 int wait(void*);
81 int patrol(void*);
82 int talk(void*);
84 daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
85 daNpcT_motionAnmData_c const* i_motionAnmData,
86 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
87 int i_faceMotionStepNum,
88 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
89 daNpcT_evtData_c const* i_evtData, char** i_arcNames)
90 : daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
91 i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
92 i_arcNames) {}
93 u16 getEyeballMaterialNo() { return 1; }
94 s32 getHeadJointNo() { return 4; }
95 s32 getNeckJointNo() { return 3; }
96 s32 getBackboneJointNo() { return 1; }
97 BOOL checkChangeJoint(int i_joint) { return i_joint == 4; }
98 BOOL checkRemoveJoint(int i_joint) { return i_joint == 9; }
99 s32 getFootLJointNo() { return 29; }
100 s32 getFootRJointNo() { return 32; }
101 BOOL chkXYItems() { return TRUE; }
102
103 static char* mCutNameList[4];
104 static cutFunc mCutList[4];
105
107 u16 nodeNo = home.angle.x;
108 if (nodeNo == 0xffff) {
109 return -1;
110 }
111 return nodeNo;
112 }
113 u8 getPathID() { return (fopAcM_GetParam(this) & 0xFF00) >> 8; }
114 u8 getBitSW() { return (fopAcM_GetParam(this) & 0xff0000) >> 16; }
115
116private:
117 /* 0xE40 */ NPC_LEN_HIO_CLASS* mpHIO;
118 /* 0xE44 */ dCcD_Cyl mCyl;
119 /* 0xF80 */ u8 mType;
121 /* 0xFA4 */ daNpcT_Path_c mPath;
123 /* 0xFD8 */ actionFunc mAction;
124 /* 0xFE4 */ int field_0xfe4;
125 /* 0xFE8 */ int field_0xfe8;
126 /* 0xFEC */ u8 field_0xfec;
127 /* 0xFED */ u8 field_0xfed;
128 /* 0xFEE */ u8 field_0xfee;
129 /* 0xFF0 */ int field_0xff0;
130};
131
132STATIC_ASSERT(sizeof(daNpc_Len_c) == 0xff4);
133
134#endif /* D_A_NPC_LEN_H */
Definition J3DJoint.h:63
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_len.h:21
void genMessage(JORMContext *)
Definition d_a_npc_len.cpp:62
daNpc_Len_HIOParam m
Definition d_a_npc_len.h:28
daNpc_Len_HIO_c()
Definition d_a_npc_len.cpp:54
void listenPropertyEvent(const JORPropertyEvent *)
Definition d_a_npc_len.cpp:58
Definition d_a_npc_len.h:13
static const daNpc_Len_HIOParam m
Definition d_a_npc_len.h:46
virtual ~daNpc_Len_Param_c()
Definition d_a_npc_len.h:15
Renado.
Definition d_a_npc_len.h:45
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_len.cpp:278
~daNpc_Len_c()
Definition d_a_npc_len.cpp:160
void afterJntAnm(int)
Definition d_a_npc_len.cpp:400
u8 getType()
Definition d_a_npc_len.cpp:295
static cutFunc mCutList[4]
Definition d_a_npc_len.h:153
u8 field_0xfed
Definition d_a_npc_len.h:127
BOOL checkChangeJoint(int i_joint)
Definition d_a_npc_len.h:97
int drawDbgInfo()
Definition d_a_npc_len.cpp:743
int(daNpc_Len_c::*) cutFunc(int)
Definition d_a_npc_len.h:48
int field_0xfe8
Definition d_a_npc_len.h:125
u8 mType
Definition d_a_npc_len.h:119
s32 getBackboneJointNo()
Definition d_a_npc_len.h:96
BOOL evtCutProc()
Definition d_a_npc_len.cpp:578
u8 field_0xfee
Definition d_a_npc_len.h:128
int talk(void *)
Definition d_a_npc_len.cpp:1205
BOOL chkAction(actionFunc)
Definition d_a_npc_len.cpp:761
u16 getEyeballMaterialNo()
Definition d_a_npc_len.h:93
int Delete()
Definition d_a_npc_len.cpp:260
s32 getNeckJointNo()
Definition d_a_npc_len.h:95
void action()
Definition d_a_npc_len.cpp:592
s32 getFootLJointNo()
Definition d_a_npc_len.h:99
int Draw()
Definition d_a_npc_len.cpp:270
int patrol(void *)
Definition d_a_npc_len.cpp:1121
int field_0xff0
Definition d_a_npc_len.h:129
BOOL checkStartDemo13StbEvt(fopAc_ac_c *, f32, f32, f32, f32, f32, f32, f32)
Definition d_a_npc_len.cpp:780
int CreateHeap()
Definition d_a_npc_len.cpp:218
dCcD_Cyl mCyl
Definition d_a_npc_len.h:118
int create()
Definition d_a_npc_len.cpp:168
u8 field_0xfec
Definition d_a_npc_len.h:126
int wait(void *)
Definition d_a_npc_len.cpp:999
static char * mCutNameList[4]
Definition d_a_npc_len.h:146
void srchActors()
Definition d_a_npc_len.cpp:546
daNpcT_ActorMngr_c mActorMngr[4]
Definition d_a_npc_len.h:120
static int ctrlJointCallBack(J3DJoint *, int)
Definition d_a_npc_len.cpp:282
int selectAction()
Definition d_a_npc_len.cpp:747
u8 getPathID()
Definition d_a_npc_len.h:113
int setAction(actionFunc)
Definition d_a_npc_len.cpp:765
actionFunc field_0xfcc
Definition d_a_npc_len.h:122
int field_0xfe4
Definition d_a_npc_len.h:124
void setParam()
Definition d_a_npc_len.cpp:413
s32 getHeadJointNo()
Definition d_a_npc_len.h:94
void beforeMove()
Definition d_a_npc_len.cpp:644
BOOL chkXYItems()
Definition d_a_npc_len.h:101
int cutTakeWoodStatue(int)
Definition d_a_npc_len.cpp:934
void setAttnPos()
Definition d_a_npc_len.cpp:657
int getFlowNodeNo()
Definition d_a_npc_len.h:106
BOOL isDelete()
Definition d_a_npc_len.cpp:319
void reset()
Definition d_a_npc_len.cpp:380
BOOL evtTalk()
Definition d_a_npc_len.cpp:569
BOOL checkChangeEvt()
Definition d_a_npc_len.cpp:482
BOOL checkRemoveJoint(int i_joint)
Definition d_a_npc_len.h:98
s32 getFootRJointNo()
Definition d_a_npc_len.h:100
NPC_LEN_HIO_CLASS * mpHIO
Definition d_a_npc_len.h:117
int cutHurry(int)
Definition d_a_npc_len.cpp:891
u8 getBitSW()
Definition d_a_npc_len.h:114
void setCollision()
Definition d_a_npc_len.cpp:705
int cutConversationInHotel(int)
Definition d_a_npc_len.cpp:795
daNpcT_Path_c mPath
Definition d_a_npc_len.h:121
void setAfterTalkMotion()
Definition d_a_npc_len.cpp:519
int Execute()
Definition d_a_npc_len.cpp:266
daNpc_Len_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_len.h:83
actionFunc mAction
Definition d_a_npc_len.h:123
int(daNpc_Len_c::*) actionFunc(void *)
Definition d_a_npc_len.h:47
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_Len_c)==0xff4)
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
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
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_len.h:6
s16 field_0x8c
Definition d_a_npc_len.h:8
f32 field_0x90
Definition d_a_npc_len.h:10
daNpcT_HIOParam common
Definition d_a_npc_len.h:7
s16 field_0x8e
Definition d_a_npc_len.h:9