d_auction_screen mostly done (#1083)

This commit is contained in:
TakaRikka
2026-06-30 16:30:42 -07:00
committed by GitHub
parent 76b1b025d5
commit 2c0c3b9ed3
4 changed files with 618 additions and 91 deletions
+59 -22
View File
@@ -1,18 +1,30 @@
#ifndef D_AUCTION_SCREEN_H
#define D_AUCTION_SCREEN_H
#include "dolphin/types.h"
#include "f_pc/f_pc_base.h"
#include "f_op/f_op_msg.h"
#include "f_op/f_op_msg_mng.h"
#include "d/d_drawlist.h"
struct fopMsgM_pane_class;
class J2DPane;
class JKRArchive;
class J2DScreen;
class dAuction_screen_c {
class dAuction_screen_c : public dDlst_base_c {
public:
void clearTimer() {}
void draw() {}
void getArchive(JKRArchive*) {}
void clearTimer() {
field_0x470 = 0; // guess
}
// implementation is a guess
JKRArchive* getArchive(JKRArchive*) {
return archive;
}
virtual ~dAuction_screen_c() {}
void draw() {
_draw();
}
void screenSet();
void initPosSet(fopMsgM_pane_class*, f32, f32);
@@ -29,32 +41,57 @@ public:
void _create();
void _move();
void _draw();
void _open();
void _close();
bool _open();
bool _close();
/* 0x004 */ J2DScreen* scrn1;
/* 0x008 */ J2DScreen* scrn2;
/* 0x00C */ fopMsgM_pane_class field_0xc;
/* 0x044 */ fopMsgM_pane_class field_0x44[3];
/* 0x0EC */ fopMsgM_pane_class field_0xec[3];
/* 0x194 */ fopMsgM_pane_class field_0x194;
/* 0x1CC */ fopMsgM_pane_class field_0x1cc[6];
/* 0x31C */ fopMsgM_pane_class field_0x31c[4];
/* 0x3FC */ fopMsgM_pane_class field_0x3fc;
/* 0x434 */ fopMsgM_pane_class field_0x434;
/* 0x46C */ JKRArchive* archive;
/* 0x470 */ s16 field_0x470;
/* 0x472 */ s16 field_0x472;
/* 0x474 */ s16 field_0x474;
};
class dAs_c {
class JKRSolidHeap;
class dAs_c : public msg_class {
public:
void _create();
void _execute();
void _draw();
void _delete();
BOOL _create();
BOOL _execute();
BOOL _draw();
BOOL _delete();
/* 0x0FC */ JKRSolidHeap* heap;
/* 0x100 */ dAuction_screen_c* dAs_scrn;
/* 0x104 */ request_of_phase_process_class phase;
/* 0x10C */ u8 proc;
};
class dAs_HIO_c {
public:
dAs_HIO_c();
virtual ~dAs_HIO_c() {}
/* 0x4 */ s8 id;
};
void dAuction_screen_delete();
void dAuction_screen_slotShow();
void dAuction_screen_slotHide();
void dAuction_screen_gaugeHide();
void dAuction_screen_gaugeShow();
void dAuction_screen_gaugeUp();
void dAuction_screen_gaugeDown();
void dAuction_screen_talkStart();
void dAuction_screen_talkEnd();
BOOL dAuction_screen_delete();
BOOL dAuction_screen_slotShow();
BOOL dAuction_screen_slotHide();
BOOL dAuction_screen_gaugeHide();
BOOL dAuction_screen_gaugeShow();
BOOL dAuction_screen_gaugeUp();
BOOL dAuction_screen_gaugeDown();
BOOL dAuction_screen_talkStart();
BOOL dAuction_screen_talkEnd();
fpc_ProcID dAuction_screen_create();
#endif /* D_AUCTION_SCREEN_H */
+11
View File
@@ -339,7 +339,10 @@ public:
void setMessageRupee(s16 count) { mMessageRupee = count; }
void setAuctionRupee(s16 count) { mAuctionRupee = count; }
s16 getAuctionRupee() { return mAuctionRupee; }
void setAuctionGauge(s16 gauge) { mAuctionGauge = gauge; }
s16 getAuctionGauge() { return mAuctionGauge; }
int getItemRupeeCount() { return mItemRupeeCount; }
void setItemRupeeCount(s32 count) { mItemRupeeCount += count; }
@@ -968,10 +971,18 @@ inline void dComIfGp_setAuctionRupee(s16 count) {
g_dComIfG_gameInfo.play.setAuctionRupee(count);
}
inline s16 dComIfGp_getAuctionRupee() {
return g_dComIfG_gameInfo.play.getAuctionRupee();
}
inline void dComIfGp_setAuctionGauge(s16 gauge) {
g_dComIfG_gameInfo.play.setAuctionGauge(gauge);
}
inline s16 dComIfGp_getAuctionGauge() {
return g_dComIfG_gameInfo.play.getAuctionGauge();
}
inline void dComIfGs_setRupee(u16 rupee) {
g_dComIfG_gameInfo.save.getPlayer().getPlayerStatusA().setRupee(rupee);
}
+4
View File
@@ -876,4 +876,8 @@ void dMeter_swimLightAnime(sub_meter_class* i_Meter, s16 param_2);
void dMeter_arrowErase(fopMsgM_pane_class* param_1);
void dMeter_screenDataTimeSet(sub_meter_class* i_Meter);
bool dMeter_isAuctionFlag();
void dMeter_onAuctionFlag();
void dMeter_offAuctionFlag();
#endif /* D_METER_H */