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
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();
59 u8 getNpcType();
60 int isDelete();
61 void reset();
62 void afterJntAnm(int);
63 void setParam();
65 void setAfterTalkMotion();
66 void srchActors();
67 BOOL evtTalk();
69 void action();
70 void beforeMove();
71 void setAttnPos();
72 void setCollision();
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];
119
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 J3DJoint.h:66
Definition JORMContext.h:128
Definition d_cc_d.h:472
Definition d_shop_system.h:11
Definition d_a_npc.h:30
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:174
void genMessage(JORMContext *)
Definition d_a_npc_seira.cpp:178
daNpc_Seira_HIO_c()
Definition d_a_npc_seira.cpp:170
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:125
Sera.
Definition d_a_npc_seira.h:43
u8 getType()
Definition d_a_npc_seira.cpp:359
s32 getBackboneJointNo()
Definition d_a_npc_seira.h:113
void setAttnPos()
Definition d_a_npc_seira.cpp:654
int isDelete()
Definition d_a_npc_seira.cpp:431
int happy(void *)
Definition d_a_npc_seira.cpp:1097
void setAfterTalkMotion()
Definition d_a_npc_seira.cpp:531
int create()
Definition d_a_npc_seira.cpp:202
int selectAction()
Definition d_a_npc_seira.cpp:880
BOOL evtTalk()
Definition d_a_npc_seira.cpp:587
BOOL drawDbgInfo()
Definition d_a_npc_seira.cpp:734
int mEventTimer
Definition d_a_npc_seira.h:129
void changeBtp(int *, int *)
Definition d_a_npc_seira.cpp:843
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:312
bool afterSetMotionAnm(int, int, f32, int)
Definition d_a_npc_seira.cpp:784
int sad(void *)
Definition d_a_npc_seira.cpp:1182
bool setBottleAnm(int, int, f32, bool)
Definition d_a_npc_seira.cpp:757
int getFlowNodeNo()
Definition d_a_npc_seira.cpp:399
u8 mType
Definition d_a_npc_seira.h:125
int CreateHeap()
Definition d_a_npc_seira.cpp:256
int lookaround(void *)
Definition d_a_npc_seira.cpp:1209
void setCollision()
Definition d_a_npc_seira.cpp:695
int wait(void *)
Definition d_a_npc_seira.cpp:1026
void srchActors()
Definition d_a_npc_seira.cpp:556
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:1289
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:335
void action()
Definition d_a_npc_seira.cpp:623
BOOL checkChangeEvt()
Definition d_a_npc_seira.cpp:507
u8 mNpcType
Definition d_a_npc_seira.h:133
static int createHeapCallBack(fopAc_ac_c *)
Definition d_a_npc_seira.cpp:343
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:940
daNpcT_ActorMngr_c mActorMngr[3]
Definition d_a_npc_seira.h:126
void beforeMove()
Definition d_a_npc_seira.cpp:648
int(daNpc_Seira_c::*) cutFunc(int)
Definition d_a_npc_seira.h:45
void reset()
Definition d_a_npc_seira.cpp:435
static char * mCutNameList[2]
Definition d_a_npc_seira.h:113
void changeBck(int *, int *)
Definition d_a_npc_seira.cpp:812
s32 getHeadJointNo()
Definition d_a_npc_seira.h:111
int setAction(actionFunc)
Definition d_a_npc_seira.cpp:925
u8 field_0x10FF
Definition d_a_npc_seira.h:134
BOOL evtCutProc()
Definition d_a_npc_seira.cpp:606
void changeAnm(int *, int *)
Definition d_a_npc_seira.cpp:789
u8 checkBottle()
Definition d_a_npc_seira.cpp:408
int smile(void *)
Definition d_a_npc_seira.cpp:1262
int sit(void *)
Definition d_a_npc_seira.cpp:1056
static int ctrlJointCallBack(J3DJoint *, int)
Definition d_a_npc_seira.cpp:347
NPC_SEIRA_HIO_CLASS * mpHIO
Definition d_a_npc_seira.h:122
void setParam()
Definition d_a_npc_seira.cpp:459
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:183
int lookaround_wait(void *)
Definition d_a_npc_seira.cpp:1236
void drawOtherMdl()
Definition d_a_npc_seira.cpp:738
BOOL checkStageIsSeirasShop()
Definition d_a_npc_seira.cpp:1012
u8 field_0x10fd
Definition d_a_npc_seira.h:132
void changeBtk(int *, int *)
Definition d_a_npc_seira.cpp:870
int chkAction(actionFunc)
Definition d_a_npc_seira.cpp:921
int worry(void *)
Definition d_a_npc_seira.cpp:1131
int getShopItemType()
Definition d_a_npc_seira.cpp:1017
int Execute()
Definition d_a_npc_seira.cpp:318
u8 field_0x10fc
Definition d_a_npc_seira.h:131
u8 getNpcType()
Definition d_a_npc_seira.cpp:422
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:449
static cutFunc mCutList[2]
Definition d_a_npc_seira.h:118
int shop(void *)
Definition d_a_npc_seira.cpp:1334
Definition f_op_actor.h:243
Definition m_Do_ext.h:408
Definition m_Do_hostIO.h:26
STATIC_ASSERT(sizeof(daNpc_Seira_c)==0x1108)
int BOOL
Definition types.h:33
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
Definition JORReflexible.h:10
u32 mCounter0
Definition c_counter.h:7
Definition d_a_npc.h:842
Definition d_a_npc.h:483
Definition d_a_npc.h:488
Definition d_a_npc.h:503
Definition d_a_npc_seira.h:7
daNpcT_HIOParam common
Definition d_a_npc_seira.h:8