Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_shop_system.h
Go to the documentation of this file.
1#ifndef D_SHOP_D_SHOP_SYSTEM_H
2#define D_SHOP_D_SHOP_SYSTEM_H
3
4#include "d/actor/d_a_npc.h"
6#include "d/d_shop_camera.h"
7
9class STControl;
10
11class dShopSystem_c : public daNpcT_c {
12public:
13 enum {
14 /* 0x0 */ SEQ_WAIT,
15 /* 0x1 */ SEQ_START,
16 /* 0x2 */ SEQ_SELECT_WAIT,
18 /* 0x4 */ SEQ_SELECT,
19 /* 0x5 */ SEQ_MOVING,
20 /* 0x6 */ SEQ_DECIDE,
21 /* 0x7 */ SEQ_CHOOSE,
22 /* 0x8 */ SEQ_DECIDE_YES,
23 /* 0x9 */ SEQ_DECIDE_NO,
24 /* 0xA */ SEQ_FINISH,
25 };
26
27 enum {
29 };
30
32 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_3, int param_4,
33 daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_5, int param_6, daNpcT_evtData_c const* param_7,
34 char** param_8) : daNpcT_c(param_1,param_2,param_3,param_4,param_5,param_6,param_7,param_8) {
35 OS_REPORT("|%06d:%x|dShopSystem_c -> コンストラクト\n", g_Counter.mCounter0, this);
37 }
38
39 void initShopSystem();
40 void onFlag(int);
41 void offFlag(int);
42 BOOL isFlag(int);
43 void onSoldOutItemFlag(int);
44 void offSoldOutItemFlag(int);
47 int chooseItem3(u8);
48 int chooseItem5(u8);
49 int chooseItem4(u8);
50 int moveCursor(int, u8);
51 int moveCursor0(int, u8);
52 int moveCursor1(int, u8);
53 int drawCursor();
54 int itemRotate();
55 int itemZoom(cXyz*);
68 int shop_init(bool);
70 void createShopItem(int);
71 void setSeq(u8);
72 void setSoldOutFlag();
73 void setSoldOut();
74 void setSoldOutItemHide();
75 void deleteObject();
76 bool searchItemActor();
77 int getFlowNodeNum();
78 void setSellItemMax(u8);
82 bool dpdMove();
83
84 virtual ~dShopSystem_c();
85 virtual bool getResName2(int) { return false; }
86 virtual int beforeStartSeqAction(dMsgFlow_c*, int) { return 1; }
87 virtual int beforeSelectSeqAction(dMsgFlow_c*, int) { return 1; }
88
89 bool chkSpMode() { return mSpMode == 1; }
90 void onSpMode() { mSpMode = 1; }
91 void offSpMode() { mSpMode = 0; }
92 u8 getEventParamU8(int param_0) { return (mEventParam >> (3 - param_0) * 8) & 0xFF; }
93 void setEventParam(u32 param) { mEventParam = param; }
94 void setMasterType(u8 master_type) { mMasterType = master_type; }
97
99 u8 rv = 0;
100 if (mSeq == 2 || mSeq == 3 || mSeq == 4 || mSeq == 5) {
101 rv = 1;
102 }
103 return rv;
104 }
105
106public:
107 /* 0xE40 */ STControl* mpStick;
111 /* 0xF54 */ u32 mEventParam;
112 /* 0xF58 */ int field_0xf58;
113 /* 0xF5C */ int field_0xf5c;
114 /* 0xF60 */ int field_0xf60;
115 /* 0xF64 */ int field_0xf64;
116 /* 0xF68 */ s16 field_0xf68;
117 /* 0xF6A */ u16 mFlag;
118 /* 0xF6C */ u16 field_0xf6c;
119 /* 0xF6E */ u8 mCursorPos;
120 /* 0xF6F */ u8 mLastCursorPos;
121 /* 0xF70 */ u8 mSeq;
122 /* 0xF71 */ u8 field_0xf71;
123 /* 0xF72 */ u8 mWaitTimer;
124 /* 0xF73 */ u8 mSoldOutFlag;
126 /* 0xF75 */ u8 mSpMode;
127 /* 0xF76 */ u8 field_0xf76;
128 /* 0xF77 */ u8 mMasterType;
129 /* 0xF78 */ u8 field_0xf78;
130 /* 0xF79 */ u8 field_0xf79;
131 /* 0xF7A */ u8 field_0xf7a;
132};
133
135
136#endif /* D_SHOP_D_SHOP_SYSTEM_H */
counter_class g_Counter
Definition c_counter.cpp:8
Definition d_lib.h:16
Definition d_shop_camera.h:7
Definition d_msg_flow.h:49
Definition d_select_cursor.h:26
Definition d_shop_item_ctrl.h:6
Definition d_shop_system.h:11
void onSpMode()
Definition d_shop_system.h:90
u8 mSeq
Definition d_shop_system.h:121
int shop_process(fopAc_ac_c *, dMsgFlow_c *)
Definition d_shop_system.cpp:1267
int seq_start(fopAc_ac_c *, dMsgFlow_c *)
Definition d_shop_system.cpp:860
void setSoldOut()
Definition d_shop_system.cpp:1336
int checkController(u8, dMsgFlow_c *)
Definition d_shop_system.cpp:217
bool searchItemActor()
Definition d_shop_system.cpp:1400
BOOL isFlag(int)
Definition d_shop_system.cpp:201
virtual ~dShopSystem_c()
Definition d_shop_system.cpp:176
u8 mSoldOutFlag
Definition d_shop_system.h:124
int chooseItem5(u8)
Definition d_shop_system.cpp:406
u8 mSoldOutItemFlags
Definition d_shop_system.h:125
int chooseItem4(u8)
Definition d_shop_system.cpp:520
u8 getEventParamU8(int param_0)
Definition d_shop_system.h:92
void offSpMode()
Definition d_shop_system.h:91
int seq_select_wait(fopAc_ac_c *, dMsgFlow_c *)
Definition d_shop_system.cpp:928
u8 field_0xf71
Definition d_shop_system.h:122
STControl * mpStick
Definition d_shop_system.h:107
void offFlag(int)
Definition d_shop_system.cpp:197
u8 field_0xf79
Definition d_shop_system.h:130
int seq_finish(fopAc_ac_c *, dMsgFlow_c *)
Definition d_shop_system.cpp:1237
int field_0xf5c
Definition d_shop_system.h:113
int chooseItem3(u8)
Definition d_shop_system.cpp:269
u8 mSpMode
Definition d_shop_system.h:126
u8 field_0xf78
Definition d_shop_system.h:129
dSelect_cursor_c * mpDrawCursor
Definition d_shop_system.h:108
BOOL checkShopOpen()
Definition d_shop_system.cpp:1556
bool checkRightTrigger(STControl *)
Definition d_shop_system.cpp:1574
bool seq_event(fopAc_ac_c *, dMsgFlow_c *)
Definition d_shop_system.cpp:1248
int seq_select_start(fopAc_ac_c *, dMsgFlow_c *)
Definition d_shop_system.cpp:937
virtual int beforeStartSeqAction(dMsgFlow_c *, int)
Definition d_shop_system.h:86
u16 mFlag
Definition d_shop_system.h:117
BOOL isSoldOutItemFlag(int)
Definition d_shop_system.cpp:213
int field_0xf58
Definition d_shop_system.h:112
bool dpdMove()
Definition d_shop_system.cpp:1578
bool chkSpMode()
Definition d_shop_system.h:89
u8 field_0xf7a
Definition d_shop_system.h:131
void createShopItem(int)
Definition d_shop_system.cpp:1297
void onFlag(int)
Definition d_shop_system.cpp:193
void setSoldOutFlag()
Definition d_shop_system.cpp:1332
void deleteObject()
Definition d_shop_system.cpp:1388
@ SEQ_WAIT
Definition d_shop_system.h:14
@ SEQ_MOVING
Definition d_shop_system.h:19
@ SEQ_SELECT_START
Definition d_shop_system.h:17
@ SEQ_DECIDE_NO
Definition d_shop_system.h:23
@ SEQ_SELECT
Definition d_shop_system.h:18
@ SEQ_SELECT_WAIT
Definition d_shop_system.h:16
@ SEQ_CHOOSE
Definition d_shop_system.h:21
@ SEQ_START
Definition d_shop_system.h:15
@ SEQ_DECIDE_YES
Definition d_shop_system.h:22
@ SEQ_FINISH
Definition d_shop_system.h:24
@ SEQ_DECIDE
Definition d_shop_system.h:20
void setSellItemMax(u8)
Definition d_shop_system.cpp:1552
u8 mLastCursorPos
Definition d_shop_system.h:120
int seq_select(fopAc_ac_c *, dMsgFlow_c *)
Definition d_shop_system.cpp:987
u8 mWaitTimer
Definition d_shop_system.h:123
virtual bool getResName2(int)
Definition d_shop_system.h:85
int seq_moving(fopAc_ac_c *, dMsgFlow_c *)
Definition d_shop_system.cpp:1092
void initShopSystem()
Definition d_shop_system.cpp:109
ShopCam_action_c mShopCamAction
Definition d_shop_system.h:110
int seq_choose(fopAc_ac_c *, dMsgFlow_c *)
Definition d_shop_system.cpp:1163
int getFlowNodeNum()
Definition d_shop_system.cpp:1537
dShopItemCtrl_c mItemCtrl
Definition d_shop_system.h:109
u8 mCursorPos
Definition d_shop_system.h:119
int field_0xf64
Definition d_shop_system.h:115
u32 mEventParam
Definition d_shop_system.h:111
bool checkLeftTrigger(STControl *)
Definition d_shop_system.cpp:1570
int itemRotate()
Definition d_shop_system.cpp:687
void setSeq(u8)
Definition d_shop_system.cpp:1327
void offSoldOutItemFlag(int)
Definition d_shop_system.cpp:209
u8 getCursorPos()
Definition d_shop_system.h:95
s16 field_0xf68
Definition d_shop_system.h:116
int seq_wait(fopAc_ac_c *, dMsgFlow_c *)
Definition d_shop_system.cpp:852
int itemZoom(cXyz *)
Definition d_shop_system.cpp:720
int seq_decide_no(fopAc_ac_c *, dMsgFlow_c *)
Definition d_shop_system.cpp:1228
void onSoldOutItemFlag(int)
Definition d_shop_system.cpp:205
int shop_init(bool)
Definition d_shop_system.cpp:1252
void setMasterType(u8 master_type)
Definition d_shop_system.h:94
void setSoldOutItemHide()
Definition d_shop_system.cpp:1376
u8 field_0xf76
Definition d_shop_system.h:127
u8 chkExplainItem()
Definition d_shop_system.h:98
@ ITEM_MAX_e
Definition d_shop_system.h:28
dShopItemCtrl_c * getShopItemCtrlP()
Definition d_shop_system.h:96
u16 field_0xf6c
Definition d_shop_system.h:118
int seq_decide_yes(fopAc_ac_c *, dMsgFlow_c *)
Definition d_shop_system.cpp:1187
void setEventParam(u32 param)
Definition d_shop_system.h:93
dShopSystem_c(daNpcT_faceMotionAnmData_c const *param_1, daNpcT_motionAnmData_c const *param_2, daNpcT_MotionSeqMngr_c::sequenceStepData_c const *param_3, int param_4, daNpcT_MotionSeqMngr_c::sequenceStepData_c const *param_5, int param_6, daNpcT_evtData_c const *param_7, char **param_8)
Definition d_shop_system.h:31
virtual int beforeSelectSeqAction(dMsgFlow_c *, int)
Definition d_shop_system.h:87
int drawCursor()
Definition d_shop_system.cpp:669
int moveCursor0(int, u8)
Definition d_shop_system.cpp:574
int moveCursor1(int, u8)
Definition d_shop_system.cpp:628
int field_0xf60
Definition d_shop_system.h:114
u8 mMasterType
Definition d_shop_system.h:128
int moveCursor(int, u8)
Definition d_shop_system.cpp:562
int seq_decide(fopAc_ac_c *, dMsgFlow_c *)
Definition d_shop_system.cpp:1136
Definition d_a_npc.h:516
Definition f_op_actor.h:230
int(dShopSystem_c::* processFunc)(fopAc_ac_c *, dMsgFlow_c *)
Definition d_shop_system.h:134
int BOOL
Definition types.h:33
unsigned long u32
Definition types.h:12
signed short int s16
Definition types.h:9
unsigned short int u16
Definition types.h:10
unsigned char u8
Definition types.h:8
Definition c_xyz.h:7
u32 mCounter0
Definition c_counter.h:7
Definition d_a_npc.h:483
Definition d_a_npc.h:488
Definition d_a_npc.h:503