Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_npc_zanb.h
Go to the documentation of this file.
1#ifndef D_A_NPC_ZANB_H
2#define D_A_NPC_ZANB_H
3
4#include "d/actor/d_a_npc.h"
5
18
20public:
22
23 static daNpc_zanB_HIOParam const m;
24};
25
26#if DEBUG
35#define NPC_ZANB_HIO_CLASS daNpc_zanB_HIO_c
36#else
37#define NPC_ZANB_HIO_CLASS daNpc_zanB_Param_c
38#endif
39
40class daNpc_zanB_c : public daNpcT_c {
41public:
42 typedef int (daNpc_zanB_c::*actionFunc)(void*);
43 typedef int (daNpc_zanB_c::*cutFunc)(int);
44
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 u8 getType();
54 BOOL isDelete();
55 void reset();
56 void afterJntAnm(int);
58 void setParam();
59 void setAfterTalkMotion();
60 void srchActors();
61 BOOL evtTalk();
63 void action();
64 void beforeMove();
65 void setAttnPos();
66 void setCollision();
67 int drawDbgInfo();
68 void drawGhost();
72 int wait(void*);
73 int talk(void*);
74 int test(void*);
76 daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
77 daNpcT_motionAnmData_c const* i_motionAnmData,
78 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
79 int i_faceMotionStepNum,
80 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
81 daNpcT_evtData_c const* i_evtData, char** i_arcNames)
82 : daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
83 i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
84 i_arcNames) {
85 OS_REPORT("|%06d:%x|daNpc_zanB_c -> コンストラクト\n", g_Counter.mCounter0, this);
86 }
87 u16 getEyeballMaterialNo() { return 4; }
88 s32 getHeadJointNo() { return 3; }
89 s32 getNeckJointNo() { return 2; }
90 s32 getBackboneJointNo() { return 1; }
91 BOOL checkChangeJoint(int i_joint) { return i_joint == 3; }
92 BOOL checkRemoveJoint(int i_joint) { return i_joint == 0x12; }
93
95 u16 nodeNo = home.angle.x;
96 if (nodeNo == 0xFFFF) {
97 return -1;
98 }
99 return nodeNo;
100 }
101
102 static char* mCutNameList[1];
103 static cutFunc mCutList[1];
104
105private:
106 /* 0xE40 */ NPC_ZANB_HIO_CLASS* mHIO;
107 /* 0xE44 */ dCcD_Cyl mCyl;
108 /* 0xF80 */ u8 mType;
110 /* 0xF90 */ actionFunc mAction;
111 /* 0xF9C */ u8 field_0xf9c;
112};
113
114STATIC_ASSERT(sizeof(daNpc_zanB_c) == 0xfa0);
115
116#endif /* D_A_NPC_ZANB_H */
counter_class g_Counter
Definition c_counter.cpp:8
cPhs__Step
Definition c_phase.h:8
Definition J3DJoint.h:63
Definition JORMContext.h:120
Definition d_cc_d.h:461
Definition d_a_npc.h:516
Definition d_a_npc_zanb.h:27
void genMessage(JORMContext *)
void listenPropertyEvent(const JORPropertyEvent *)
daNpc_zanB_HIOParam m
Definition d_a_npc_zanb.h:33
Definition d_a_npc_zanb.h:19
static daNpc_zanB_HIOParam const m
Definition d_a_npc_zanb.h:95
virtual ~daNpc_zanB_Param_c()
Definition d_a_npc_zanb.h:21
Zant Boss (Unused?)
Definition d_a_npc_zanb.h:40
NPC_ZANB_HIO_CLASS * mHIO
Definition d_a_npc_zanb.h:106
BOOL chkAction(actionFunc)
Definition d_a_npc_zanb.cpp:538
void setCollision()
Definition d_a_npc_zanb.cpp:464
void beforeMove()
Definition d_a_npc_zanb.cpp:424
cPhs__Step create()
Definition d_a_npc_zanb.cpp:141
int Delete()
Definition d_a_npc_zanb.cpp:240
int(daNpc_zanB_c::*) cutFunc(int)
Definition d_a_npc_zanb.h:43
void srchActors()
Definition d_a_npc_zanb.cpp:379
void afterJntAnm(int)
Definition d_a_npc_zanb.cpp:314
BOOL isDelete()
Definition d_a_npc_zanb.cpp:293
int drawDbgInfo()
Definition d_a_npc_zanb.cpp:511
s32 getNeckJointNo()
Definition d_a_npc_zanb.h:89
static char * mCutNameList[1]
Definition d_a_npc_zanb.h:75
actionFunc mAction
Definition d_a_npc_zanb.h:110
void setParam()
Definition d_a_npc_zanb.cpp:341
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_zanb.cpp:267
~daNpc_zanB_c()
Definition d_a_npc_zanb.cpp:79
int test(void *)
Definition d_a_npc_zanb.cpp:664
int talk(void *)
Definition d_a_npc_zanb.cpp:622
u8 field_0xf9c
Definition d_a_npc_zanb.h:111
s32 getHeadJointNo()
Definition d_a_npc_zanb.h:88
BOOL checkChangeJoint(int i_joint)
Definition d_a_npc_zanb.h:91
static cutFunc mCutList[1]
Definition d_a_npc_zanb.h:77
void action()
Definition d_a_npc_zanb.cpp:409
int getFlowNodeNo()
Definition d_a_npc_zanb.h:94
static int ctrlJointCallBack(J3DJoint *, int)
Definition d_a_npc_zanb.cpp:271
BOOL evtTalk()
Definition d_a_npc_zanb.cpp:383
BOOL evtCutProc()
Definition d_a_npc_zanb.cpp:393
void setAfterTalkMotion()
Definition d_a_npc_zanb.cpp:374
int Execute()
Definition d_a_npc_zanb.cpp:247
u8 mType
Definition d_a_npc_zanb.h:108
void reset()
Definition d_a_npc_zanb.cpp:297
BOOL checkChangeEvt()
Definition d_a_npc_zanb.cpp:324
BOOL checkRemoveJoint(int i_joint)
Definition d_a_npc_zanb.h:92
void drawGhost()
Definition d_a_npc_zanb.cpp:515
BOOL setAction(actionFunc)
Definition d_a_npc_zanb.cpp:542
BOOL selectAction()
Definition d_a_npc_zanb.cpp:522
int wait(void *)
Definition d_a_npc_zanb.cpp:559
u16 getEyeballMaterialNo()
Definition d_a_npc_zanb.h:87
int CreateHeap()
Definition d_a_npc_zanb.cpp:211
int Draw()
Definition d_a_npc_zanb.cpp:251
s32 getBackboneJointNo()
Definition d_a_npc_zanb.h:90
u8 getType()
Definition d_a_npc_zanb.cpp:283
int(daNpc_zanB_c::*) actionFunc(void *)
Definition d_a_npc_zanb.h:42
daNpc_zanB_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_zanb.h:75
actionFunc mNextAction
Definition d_a_npc_zanb.h:109
void setAttnPos()
Definition d_a_npc_zanb.cpp:430
dCcD_Cyl mCyl
Definition d_a_npc_zanb.h:107
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_zanB_c)==0xfa0)
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
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_zanb.h:15
daNpcT_HIOParam common
Definition d_a_npc_zanb.h:16