Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_npc_seirei.h
Go to the documentation of this file.
1#ifndef D_A_NPC_SEIREI_H
2#define D_A_NPC_SEIREI_H
3
4#include "d/actor/d_a_npc.h"
5
17 /* 0x8C */ f32 force_talk_dist; // 強制会話距離 - Force Talk Distance
18 /* 0x90 */ f32 talk_dist; // 会話距離 - Talk Distance
19};
20
24
26public:
28
29 static daNpc_Seirei_HIOParam const m;
30};
31
32class daNpc_Seirei_c : public daNpcT_c {
33public:
34 typedef int (daNpc_Seirei_c::*actionFunc)(void*);
35 typedef BOOL (daNpc_Seirei_c::*cutFunc)(int);
36
39 int CreateHeap();
40 int Delete();
41 int Execute();
42 int Draw();
43 static int createHeapCallBack(fopAc_ac_c*);
44 u8 getType();
45 BOOL isDelete();
46 void reset();
47 void setParam();
49 void srchActors();
50 BOOL evtTalk();
52 void action();
53 void beforeMove();
54 void setAttnPos();
55 int drawDbgInfo();
56 bool afterSetMotionAnm(int, int, f32, int);
60 void ctrlWaitAnm();
61 void setPrtcls();
64 int wait(void*);
65 int talk(void*);
67 daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
68 daNpcT_motionAnmData_c const* i_motionAnmData,
69 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
70 int i_faceMotionStepNum,
71 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData,
72 int i_motionStepNum,
73 daNpcT_evtData_c const* i_evtData,
74 char** i_arcNames)
75 : daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
76 i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
77 i_arcNames) {}
78
80 u16 nodeNo = home.angle.x;
81 if (nodeNo == 0xffff) {
82 return -1;
83 }
84
85 return nodeNo;
86 }
87 u32 getBitSW() { return (fopAcM_GetParam(this) & 0xFF000) >> 12; }
88 bool getDoBtnChkFlag() { return (fopAcM_GetParam(this) & 0x100) == 0; }
89
90 static char* mCutNameList[2];
91 static cutFunc mCutList[2];
92
93private:
95 /* 0xE44 */ u8 mType;
96 /* 0xE45 */ u8 arg0;
98 /* 0xE54 */ actionFunc mAction;
99 /* 0xE60 */ int field_0xe60;
100 /* 0xE64 */ u32 mPrtcls[7];
101 /* 0xE80 */ bool field_0xe80;
102 /* 0xE81 */ u8 field_0xe81[0xe84 - 0xe81];
103 /* 0xE84 */ u8 field_0xe84;
104};
105
107
108#endif /* D_A_NPC_SEIREI_H */
cPhs__Step
Definition c_phase.h:8
Definition d_a_npc.h:516
Definition d_a_npc_seirei.h:21
daNpc_Seirei_HIOParam param
Definition d_a_npc_seirei.h:22
Definition d_a_npc_seirei.h:25
static daNpc_Seirei_HIOParam const m
Definition d_a_npc_seirei.h:161
virtual ~daNpc_Seirei_Param_c()
Definition d_a_npc_seirei.h:27
Light Spirit Ordona.
Definition d_a_npc_seirei.h:32
static char * mCutNameList[2]
Definition d_a_npc_seirei.h:143
u8 getType()
Definition d_a_npc_seirei.cpp:308
void setPrtcls()
Definition d_a_npc_seirei.cpp:607
BOOL isDelete()
Definition d_a_npc_seirei.cpp:324
int Delete()
Definition d_a_npc_seirei.cpp:282
u32 getBitSW()
Definition d_a_npc_seirei.h:87
void ctrlWaitAnm()
Definition d_a_npc_seirei.cpp:570
int field_0xe60
Definition d_a_npc_seirei.h:99
void beforeMove()
Definition d_a_npc_seirei.cpp:449
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_seirei.cpp:304
BOOL evtCutProc()
Definition d_a_npc_seirei.cpp:422
u8 field_0xe81[0xe84 - 0xe81]
Definition d_a_npc_seirei.h:102
int wait(void *)
Definition d_a_npc_seirei.cpp:704
int Execute()
Definition d_a_npc_seirei.cpp:287
BOOL chkFirstMeeting()
Definition d_a_npc_seirei.cpp:633
void setAttnPos()
Definition d_a_npc_seirei.cpp:459
int talk(void *)
Definition d_a_npc_seirei.cpp:733
BOOL checkChangeEvt()
Definition d_a_npc_seirei.cpp:392
void reset()
Definition d_a_npc_seirei.cpp:328
actionFunc mAction
Definition d_a_npc_seirei.h:98
static cutFunc mCutList[2]
Definition d_a_npc_seirei.h:148
BOOL evtTalk()
Definition d_a_npc_seirei.cpp:400
void action()
Definition d_a_npc_seirei.cpp:439
cPhs__Step create()
Definition d_a_npc_seirei.cpp:207
int CreateHeap()
Definition d_a_npc_seirei.cpp:262
BOOL cutConversation(int)
Definition d_a_npc_seirei.cpp:648
int getFlowNodeNo()
Definition d_a_npc_seirei.h:79
actionFunc mNextAction
Definition d_a_npc_seirei.h:97
int(daNpc_Seirei_c::*) actionFunc(void *)
Definition d_a_npc_seirei.h:34
int drawDbgInfo()
Definition d_a_npc_seirei.cpp:480
bool getDoBtnChkFlag()
Definition d_a_npc_seirei.h:88
BOOL setAction(actionFunc)
Definition d_a_npc_seirei.cpp:553
u32 mPrtcls[7]
Definition d_a_npc_seirei.h:100
daNpc_Seirei_HIO_c * mHIO
Definition d_a_npc_seirei.h:94
int Draw()
Definition d_a_npc_seirei.cpp:291
u8 mType
Definition d_a_npc_seirei.h:95
bool field_0xe80
Definition d_a_npc_seirei.h:101
void srchActors()
Definition d_a_npc_seirei.cpp:396
bool afterSetMotionAnm(int, int, f32, int)
Definition d_a_npc_seirei.cpp:484
void setParam()
Definition d_a_npc_seirei.cpp:360
u8 arg0
Definition d_a_npc_seirei.h:96
~daNpc_Seirei_c()
Definition d_a_npc_seirei.cpp:153
u8 field_0xe84
Definition d_a_npc_seirei.h:103
BOOL(daNpc_Seirei_c::*) cutFunc(int)
Definition d_a_npc_seirei.h:35
daNpc_Seirei_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_seirei.h:66
BOOL selectAction()
Definition d_a_npc_seirei.cpp:543
BOOL chkAction(actionFunc)
Definition d_a_npc_seirei.cpp:549
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_Seirei_c)==0xe88)
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
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
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_seirei.h:15
f32 talk_dist
Definition d_a_npc_seirei.h:18
daNpcT_HIOParam common
Definition d_a_npc_seirei.h:16
f32 force_talk_dist
Definition d_a_npc_seirei.h:17