Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_npc_seira.h
Go to the documentation of this file.
1#ifndef D_A_NPC_SEIRA_H
2#define D_A_NPC_SEIRA_H
3
4#include "d/actor/d_a_npc.h"
5#include "d/d_shop_system.h"
6
10
12public:
14
15 static const daNpc_Seira_HIOParam m;
16};
17
18#if DEBUG
20public:
22
23 void listenPropertyEvent(const JORPropertyEvent*);
24
25 void genMessage(JORMContext*);
26
28};
29
30#define NPC_SEIRA_HIO_CLASS daNpc_Seira_HIO_c
31#else
32#define NPC_SEIRA_HIO_CLASS daNpc_Seira_Param_c
33#endif
34
44public:
45 typedef int (daNpc_Seira_c::*cutFunc)(int);
46 typedef int (daNpc_Seira_c::*actionFunc)(void*);
47
49 int create();
50 int CreateHeap();
51 int Delete();
52 int Execute();
53 int Draw();
54 static int createHeapCallBack(fopAc_ac_c*);
55 static int ctrlJointCallBack(J3DJoint*, int);
56 u8 getType();
57 int getFlowNodeNo();
58 u8 checkBottle();
59 u8 getNpcType();
60 int isDelete();
61 void reset();
62 void afterJntAnm(int);
63 void setParam();
64 BOOL checkChangeEvt();
65 void setAfterTalkMotion();
66 void srchActors();
67 BOOL evtTalk();
68 BOOL evtCutProc();
69 void action();
70 void beforeMove();
71 void setAttnPos();
72 void setCollision();
73 BOOL drawDbgInfo();
74 void drawOtherMdl();
75 bool setBottleAnm(int, int, f32, bool);
76 bool afterSetMotionAnm(int, int, f32, int);
77 void changeAnm(int*, int*);
78 void changeBck(int*, int*);
79 void changeBtp(int*, int*);
80 void changeBtk(int*, int*);
81 int selectAction();
86 int getShopItemType();
87 int wait(void*);
88 int sit(void*);
89 int happy(void*);
90 int worry(void*);
91 int sad(void*);
92 int lookaround(void*);
93 int lookaround_wait(void*);
94 int smile(void*);
95 int talk(void*);
96 int shop(void*);
98 daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData,
99 daNpcT_motionAnmData_c const* i_motionAnmData,
100 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData,
101 int i_faceMotionStepNum,
102 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum,
103 daNpcT_evtData_c const* i_evtData, char** i_arcNames)
104 : dShopSystem_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData,
105 i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData,
106 i_arcNames) {
107 // "|%06d:%x|daNpc_Seira_c -> Construct\n"
108 OS_REPORT("|%06d:%x|daNpc_Seira_c -> コンストラクト\n", g_Counter.mCounter0, this);
109 }
110 u16 getEyeballMaterialNo() { return 2; }
111 s32 getHeadJointNo() { return 4; }
112 s32 getNeckJointNo() { return 3; }
113 s32 getBackboneJointNo() { return true; }
114 BOOL checkChangeJoint(int val) { return val == 4; }
115 BOOL checkRemoveJoint(int val) { return val == 8; }
116
117 static char* mCutNameList[2];
118 static cutFunc mCutList[2];
120private:
122 /* 0x0F80 */ NPC_SEIRA_HIO_CLASS* mpHIO;
123 /* 0x0F80 */ dCcD_Cyl mCyl1;
124 /* 0x10C0 */ u8 mChkBottle;
125 /* 0x10C1 */ u8 mType;
128 /* 0x10E8 */ actionFunc mActFunc_0;
129 /* 0x10F4 */ int mEventTimer;
130 /* 0x10F8 */ int mShopProcess;
131 /* 0x10FC */ u8 field_0x10fc;
132 /* 0x10FD */ u8 field_0x10fd;
133 /* 0x10FE */ u8 mNpcType;
134 /* 0x10FF */ u8 field_0x10FF;
135 /* 0x1100 */ u8 mEvtBit;
136 /* 0x1101 */ u8 field_0x1101[0x1104 - 0x1101];
137 /* 0x1104 */ u8 field_0x1104;
138};
139
140STATIC_ASSERT(sizeof(daNpc_Seira_c) == 0x1108);
141
142
143#endif /* D_A_NPC_SEIRA_H */
counter_class g_Counter
Definition c_counter.cpp:8
Definition d_cc_d.h:472
Definition d_shop_system.h:11
Definition d_a_npc.h:31
Definition d_a_npc_seira.h:19
daNpc_Seira_HIOParam m
Definition d_a_npc_seira.h:27
void listenPropertyEvent(const JORPropertyEvent *)
Definition d_a_npc_seira.cpp:175
void genMessage(JORMContext *)
Definition d_a_npc_seira.cpp:179
daNpc_Seira_HIO_c()
Definition d_a_npc_seira.cpp:171
Definition d_a_npc_seira.h:11
virtual ~daNpc_Seira_Param_c()
Definition d_a_npc_seira.h:13
static const daNpc_Seira_HIOParam m
Definition d_a_npc_seira.h:126
Sera.
Definition d_a_npc_seira.h:43
u8 getType()
Definition d_a_npc_seira.cpp:360
s32 getBackboneJointNo()
Definition d_a_npc_seira.h:113
void setAttnPos()
Definition d_a_npc_seira.cpp:655
int isDelete()
Definition d_a_npc_seira.cpp:432
int happy(void *)
Definition d_a_npc_seira.cpp:1098
void setAfterTalkMotion()
Definition d_a_npc_seira.cpp:532
int create()
Definition d_a_npc_seira.cpp:203
int selectAction()
Definition d_a_npc_seira.cpp:881
BOOL evtTalk()
Definition d_a_npc_seira.cpp:588
BOOL drawDbgInfo()
Definition d_a_npc_seira.cpp:735
int mEventTimer
Definition d_a_npc_seira.h:129
void changeBtp(int *, int *)
Definition d_a_npc_seira.cpp:844
BOOL checkChangeJoint(int val)
Definition d_a_npc_seira.h:114
int mShopProcess
Definition d_a_npc_seira.h:130
int Delete()
Definition d_a_npc_seira.cpp:313
bool afterSetMotionAnm(int, int, f32, int)
Definition d_a_npc_seira.cpp:785
int sad(void *)
Definition d_a_npc_seira.cpp:1183
bool setBottleAnm(int, int, f32, bool)
Definition d_a_npc_seira.cpp:758
int getFlowNodeNo()
Definition d_a_npc_seira.cpp:400
u8 mType
Definition d_a_npc_seira.h:125
int CreateHeap()
Definition d_a_npc_seira.cpp:257
int lookaround(void *)
Definition d_a_npc_seira.cpp:1210
void setCollision()
Definition d_a_npc_seira.cpp:696
int wait(void *)
Definition d_a_npc_seira.cpp:1027
void srchActors()
Definition d_a_npc_seira.cpp:557
daNpc_Seira_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_seira.h:97
int talk(void *)
Definition d_a_npc_seira.cpp:1290
actionFunc mNextAction
Definition d_a_npc_seira.h:127
u16 getEyeballMaterialNo()
Definition d_a_npc_seira.h:110
int Draw()
Definition d_a_npc_seira.cpp:336
void action()
Definition d_a_npc_seira.cpp:624
BOOL checkChangeEvt()
Definition d_a_npc_seira.cpp:508
u8 mNpcType
Definition d_a_npc_seira.h:133
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_seira.cpp:344
u8 mEvtBit
Definition d_a_npc_seira.h:135
BOOL checkRemoveJoint(int val)
Definition d_a_npc_seira.h:115
int cutConversationAboutSaru(int)
Definition d_a_npc_seira.cpp:941
daNpcT_ActorMngr_c mActorMngr[3]
Definition d_a_npc_seira.h:126
void beforeMove()
Definition d_a_npc_seira.cpp:649
int(daNpc_Seira_c::*) cutFunc(int)
Definition d_a_npc_seira.h:45
void reset()
Definition d_a_npc_seira.cpp:436
static char * mCutNameList[2]
Definition d_a_npc_seira.h:114
void changeBck(int *, int *)
Definition d_a_npc_seira.cpp:813
s32 getHeadJointNo()
Definition d_a_npc_seira.h:111
int setAction(actionFunc)
Definition d_a_npc_seira.cpp:926
u8 field_0x10FF
Definition d_a_npc_seira.h:134
BOOL evtCutProc()
Definition d_a_npc_seira.cpp:607
void changeAnm(int *, int *)
Definition d_a_npc_seira.cpp:790
u8 checkBottle()
Definition d_a_npc_seira.cpp:409
int smile(void *)
Definition d_a_npc_seira.cpp:1263
int sit(void *)
Definition d_a_npc_seira.cpp:1057
static int ctrlJointCallBack(J3DJoint *, int)
Definition d_a_npc_seira.cpp:348
NPC_SEIRA_HIO_CLASS * mpHIO
Definition d_a_npc_seira.h:122
void setParam()
Definition d_a_npc_seira.cpp:460
dCcD_Cyl mCyl1
Definition d_a_npc_seira.h:123
int(daNpc_Seira_c::*) actionFunc(void *)
Definition d_a_npc_seira.h:46
u8 field_0x1101[0x1104 - 0x1101]
Definition d_a_npc_seira.h:136
~daNpc_Seira_c()
Definition d_a_npc_seira.cpp:184
int lookaround_wait(void *)
Definition d_a_npc_seira.cpp:1237
void drawOtherMdl()
Definition d_a_npc_seira.cpp:739
BOOL checkStageIsSeirasShop()
Definition d_a_npc_seira.cpp:1013
u8 field_0x10fd
Definition d_a_npc_seira.h:132
void changeBtk(int *, int *)
Definition d_a_npc_seira.cpp:871
int chkAction(actionFunc)
Definition d_a_npc_seira.cpp:922
int worry(void *)
Definition d_a_npc_seira.cpp:1132
int getShopItemType()
Definition d_a_npc_seira.cpp:1018
int Execute()
Definition d_a_npc_seira.cpp:319
u8 field_0x10fc
Definition d_a_npc_seira.h:131
u8 getNpcType()
Definition d_a_npc_seira.cpp:423
s32 getNeckJointNo()
Definition d_a_npc_seira.h:112
u8 field_0x1104
Definition d_a_npc_seira.h:137
mDoExt_McaMorfSO * mpSeiraMorf
Definition d_a_npc_seira.h:121
actionFunc mActFunc_0
Definition d_a_npc_seira.h:128
u8 mChkBottle
Definition d_a_npc_seira.h:124
void afterJntAnm(int)
Definition d_a_npc_seira.cpp:450
static cutFunc mCutList[2]
Definition d_a_npc_seira.h:119
int shop(void *)
Definition d_a_npc_seira.cpp:1335
Definition f_op_actor.h:271
Definition m_Do_ext.h:408
Definition m_Do_hostIO.h:26
STATIC_ASSERT(sizeof(daNpc_Seira_c)==0x1108)
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_seira.h:7
daNpcT_HIOParam common
Definition d_a_npc_seira.h:8