fix withdraw functionality

This commit is contained in:
TakaRikka
2026-06-11 23:07:28 -07:00
parent 7f503c9d8f
commit c99241a662
2 changed files with 55 additions and 4 deletions
+11 -2
View File
@@ -172,6 +172,15 @@ public:
int event041(mesg_flow_node_event*, fopAc_ac_c*);
int event042(mesg_flow_node_event*, fopAc_ac_c*);
#if TARGET_PC
// HD additions
u16 query054(mesg_flow_node_branch*, fopAc_ac_c*, int);
u16 query055(mesg_flow_node_branch*, fopAc_ac_c*, int);
int event043(mesg_flow_node_event*, fopAc_ac_c*);
int event044(mesg_flow_node_event*, fopAc_ac_c*);
int event045(mesg_flow_node_event*, fopAc_ac_c*);
#endif
void initWord(fopAc_ac_c*, const char*, u8, int, fopAc_ac_c**);
#if DEBUG
@@ -185,8 +194,8 @@ public:
void setMsg(u32 msg) { mMsg = msg; }
bool checkEndFlow() { return (u32)field_0x26 == 1; }
static queryFunc mQueryList[53];
static eventFunc mEventList[43];
static queryFunc mQueryList[DUSK_IF_ELSE(55, 53)];
static eventFunc mEventList[DUSK_IF_ELSE(46, 43)];
private:
/* 0x04 */ u8* mFlow_p;
+44 -2
View File
@@ -745,7 +745,7 @@ int dMsgFlow_c::getParam(u8* params) {
return *(BE(int)*)params;
}
queryFunc dMsgFlow_c::mQueryList[53] = {
queryFunc dMsgFlow_c::mQueryList[DUSK_IF_ELSE(55, 53)] = {
&dMsgFlow_c::query005, &dMsgFlow_c::query001, &dMsgFlow_c::query002, &dMsgFlow_c::query003,
&dMsgFlow_c::query006, &dMsgFlow_c::query007, &dMsgFlow_c::query004, &dMsgFlow_c::query008,
&dMsgFlow_c::query009, &dMsgFlow_c::query010, &dMsgFlow_c::query011, &dMsgFlow_c::query012,
@@ -760,6 +760,11 @@ queryFunc dMsgFlow_c::mQueryList[53] = {
&dMsgFlow_c::query045, &dMsgFlow_c::query046, &dMsgFlow_c::query047, &dMsgFlow_c::query048,
&dMsgFlow_c::query049, &dMsgFlow_c::query050, &dMsgFlow_c::query051, &dMsgFlow_c::query052,
&dMsgFlow_c::query053,
#if TARGET_PC
&dMsgFlow_c::query054,
&dMsgFlow_c::query055,
#endif
};
#if DEBUG
@@ -1730,7 +1735,7 @@ u16 dMsgFlow_c::query053(mesg_flow_node_branch* i_flowNode_p, fopAc_ac_c* i_spea
return ret;
}
eventFunc dMsgFlow_c::mEventList[43] = {
eventFunc dMsgFlow_c::mEventList[DUSK_IF_ELSE(46, 43)] = {
&dMsgFlow_c::event000, &dMsgFlow_c::event001, &dMsgFlow_c::event002, &dMsgFlow_c::event003,
&dMsgFlow_c::event004, &dMsgFlow_c::event005, &dMsgFlow_c::event006, &dMsgFlow_c::event007,
&dMsgFlow_c::event008, &dMsgFlow_c::event009, &dMsgFlow_c::event010, &dMsgFlow_c::event011,
@@ -1742,6 +1747,12 @@ eventFunc dMsgFlow_c::mEventList[43] = {
&dMsgFlow_c::event032, &dMsgFlow_c::event033, &dMsgFlow_c::event034, &dMsgFlow_c::event035,
&dMsgFlow_c::event036, &dMsgFlow_c::event037, &dMsgFlow_c::event038, &dMsgFlow_c::event039,
&dMsgFlow_c::event040, &dMsgFlow_c::event041, &dMsgFlow_c::event042,
#if TARGET_PC
&dMsgFlow_c::event043,
&dMsgFlow_c::event044,
&dMsgFlow_c::event045,
#endif
};
int dMsgFlow_c::event000(mesg_flow_node_event* i_flowNode_p, fopAc_ac_c* i_speaker_p) {
@@ -2587,3 +2598,34 @@ int dMsgFlow_c::event041(mesg_flow_node_event* i_flowNode_p, fopAc_ac_c* i_speak
int dMsgFlow_c::event042(mesg_flow_node_event* i_flowNode_p, fopAc_ac_c* i_speaker_p) {
return 1;
}
#if TARGET_PC
// HD additions
u16 dMsgFlow_c::query054(mesg_flow_node_branch* i_flowNode_p, fopAc_ac_c* i_speaker_p, int param_2) {
// stub
return 1;
}
u16 dMsgFlow_c::query055(mesg_flow_node_branch* i_flowNode_p, fopAc_ac_c* i_speaker_p, int param_2) {
// stub
return 1;
}
int dMsgFlow_c::event043(mesg_flow_node_event* i_flowNode_p, fopAc_ac_c* i_speaker_p) {
// stub
return 1;
}
int dMsgFlow_c::event044(mesg_flow_node_event* i_flowNode_p, fopAc_ac_c* i_speaker_p) {
// stub
// runs when choosing to "withdraw" from cave of shadows
// for now just have it reset to title, similar to original
JUTGamePad::C3ButtonReset::sResetSwitchPushing = true;
return 1;
}
int dMsgFlow_c::event045(mesg_flow_node_event* i_flowNode_p, fopAc_ac_c* i_speaker_p) {
// stub
return 1;
}
#endif