Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_npc_tkj.h
Go to the documentation of this file.
1#ifndef D_A_NPC_TKJ_H
2#define D_A_NPC_TKJ_H
3
4#include "d/actor/d_a_npc.h"
5
9
11public:
12 virtual ~daNpc_Tkj_Param_c() {}
13
14 static const daNpc_Tkj_HIOParam m;
15};
16
17#if DEBUG
19public:
21
22 void listenPropertyEvent(const JORPropertyEvent*);
23
24 void genMessage(JORMContext*);
25
27};
28
29#define NPC_TKJ_HIO_CLASS daNpc_Tkj_HIO_c
30#else
31#define NPC_TKJ_HIO_CLASS daNpc_Tkj_Param_c
32#endif
33
42class daNpcTkj_c : public daNpcT_c {
43public:
44 typedef int (daNpcTkj_c::*ActionFunc)(void*);
45
46 int create();
47 int CreateHeap();
48 int Delete();
49 int Execute();
50 int Draw();
51 static int createHeapCallBack(fopAc_ac_c*);
52 static int ctrlJointCallBack(J3DJoint*, int);
53 int getType();
54 int getFlowNodeNo();
55 int isDelete();
56 void reset();
57 void srchActors();
58 int selectAction();
61 int wait(void*);
62 int talk(void*);
63 int cutLv7Start(int);
64
65 daNpcTkj_c(daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
66 daNpcT_motionAnmData_c const* i_motionAnmData,
67 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
68 int i_faceMotionStepNum,
69 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
70 daNpcT_evtData_c const* i_evtData, char** i_arcNames)
71 : daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
72 i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
73 i_arcNames)
74 {
75 OS_REPORT("|%06d:%x|daNpcTkj_c -> コンストラクト\n", g_Counter.mCounter0, this);
76 }
78 virtual ~daNpcTkj_c();
79 virtual BOOL checkChangeJoint(int i_jointNo) { return i_jointNo == 17; }
80 virtual BOOL checkRemoveJoint(int i_jointNo) { return i_jointNo == 19; }
81 virtual s32 getBackboneJointNo() { return 15; }
82 virtual s32 getNeckJointNo() { return 16; }
83 virtual s32 getHeadJointNo() { return 17; }
84 virtual u16 getEyeballMaterialNo() { return 2; }
85 virtual inline void setParam();
86 virtual BOOL evtTalk();
87 virtual BOOL evtCutProc();
88 virtual void setAfterTalkMotion();
89 virtual void action();
90 virtual inline void beforeMove();
91 virtual void setAttnPos();
92 virtual void setCollision();
93 virtual int drawDbgInfo();
94
95 int getPath() { return (fopAcM_GetParam(this) & 0xFF00) >> 8; }
96
97 static char* mCutNameList[2];
98 static int (daNpcTkj_c::*mCutList[])(int);
99
100private:
101 /* 0xE40 */ NPC_TKJ_HIO_CLASS* mpHIO;
102 /* 0xE44 */ dCcD_Cyl mCcCyl;
103 /* 0xF80 */ u8 mType;
105 /* 0xF90 */ ActionFunc mAction;
106 /* 0xF9C */ u8 field_0xf9c;
107 /* 0xFA0 */ int mItemNo;
108};
109
110STATIC_ASSERT(sizeof(daNpcTkj_c) == 0xfa4);
111
112#endif /* D_A_NPC_TKJ_H */
counter_class g_Counter
Definition c_counter.cpp:8
Definition d_cc_d.h:472
Definition d_a_npc.h:517
Oocca.
Definition d_a_npc_tkj.h:42
static int ctrlJointCallBack(J3DJoint *, int)
Definition d_a_npc_tkj.cpp:277
virtual void beforeMove()
Definition d_a_npc_tkj.cpp:679
int cutLv7Start(int)
Definition d_a_npc_tkj.cpp:543
virtual void setCollision()
Definition d_a_npc_tkj.cpp:411
dCcD_Cyl mCcCyl
Definition d_a_npc_tkj.h:102
int wait(void *)
Definition d_a_npc_tkj.cpp:466
int Delete()
Definition d_a_npc_tkj.cpp:253
int selectAction()
Definition d_a_npc_tkj.cpp:434
int talk(void *)
Definition d_a_npc_tkj.cpp:494
BOOL chkAction(ActionFunc)
Definition d_a_npc_tkj.cpp:447
int getPath()
Definition d_a_npc_tkj.h:95
virtual s32 getNeckJointNo()
Definition d_a_npc_tkj.h:82
int getFlowNodeNo()
Definition d_a_npc_tkj.cpp:300
daNpcTkj_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_tkj.h:65
virtual void action()
Definition d_a_npc_tkj.cpp:372
virtual BOOL checkChangeJoint(int i_jointNo)
Definition d_a_npc_tkj.h:79
int isDelete()
Definition d_a_npc_tkj.cpp:305
virtual void setParam()
Definition d_a_npc_tkj.cpp:644
int(daNpcTkj_c::*) ActionFunc(void *)
Definition d_a_npc_tkj.h:44
u8 mType
Definition d_a_npc_tkj.h:103
int getType()
Definition d_a_npc_tkj.cpp:289
static int(daNpcTkj_c::* mCutList[])(int)
Definition d_a_npc_tkj.h:72
virtual BOOL evtCutProc()
Definition d_a_npc_tkj.cpp:348
int Draw()
Definition d_a_npc_tkj.cpp:264
NPC_TKJ_HIO_CLASS * mpHIO
Definition d_a_npc_tkj.h:101
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_tkj.cpp:273
virtual BOOL evtTalk()
Definition d_a_npc_tkj.cpp:338
int mItemNo
Definition d_a_npc_tkj.h:107
int Execute()
Definition d_a_npc_tkj.cpp:260
virtual u16 getEyeballMaterialNo()
Definition d_a_npc_tkj.h:84
virtual s32 getBackboneJointNo()
Definition d_a_npc_tkj.h:81
u8 field_0xf9c
Definition d_a_npc_tkj.h:106
void reset()
Definition d_a_npc_tkj.cpp:313
virtual void setAfterTalkMotion()
Definition d_a_npc_tkj.cpp:325
virtual void setAttnPos()
Definition d_a_npc_tkj.cpp:382
void srchActors()
Definition d_a_npc_tkj.cpp:330
ActionFunc field_0xf84
Definition d_a_npc_tkj.h:104
ActionFunc mAction
Definition d_a_npc_tkj.h:105
static char * mCutNameList[2]
Definition d_a_npc_tkj.h:67
virtual s32 getHeadJointNo()
Definition d_a_npc_tkj.h:83
virtual BOOL checkRemoveJoint(int i_jointNo)
Definition d_a_npc_tkj.h:80
virtual int drawDbgInfo()
Definition d_a_npc_tkj.cpp:430
int CreateHeap()
Definition d_a_npc_tkj.cpp:214
virtual ~daNpcTkj_c()
Definition d_a_npc_tkj.cpp:137
int create()
Definition d_a_npc_tkj.cpp:153
int setAction(ActionFunc)
Definition d_a_npc_tkj.cpp:451
Definition d_a_npc_tkj.h:18
daNpc_Tkj_HIO_c()
Definition d_a_npc_tkj.cpp:124
void listenPropertyEvent(const JORPropertyEvent *)
Definition d_a_npc_tkj.cpp:128
void genMessage(JORMContext *)
Definition d_a_npc_tkj.cpp:132
daNpc_Tkj_HIOParam m
Definition d_a_npc_tkj.h:26
Definition d_a_npc_tkj.h:10
virtual ~daNpc_Tkj_Param_c()
Definition d_a_npc_tkj.h:12
static const daNpc_Tkj_HIOParam m
Definition d_a_npc_tkj.h:77
Definition f_op_actor.h:271
Definition m_Do_hostIO.h:26
STATIC_ASSERT(sizeof(daNpcTkj_c)==0xfa4)
u32 fopAcM_GetParam(const void *i_actor)
Definition f_op_actor_mng.h:172
u32 mCounter0
Definition c_counter.h:7
Definition d_a_npc.h:843
Definition d_a_npc.h:484
Definition d_a_npc.h:489
Definition d_a_npc.h:504
Definition d_a_npc_tkj.h:6
daNpcT_HIOParam common
Definition d_a_npc_tkj.h:7