mirror of
https://github.com/zeldaret/tww.git
synced 2026-07-07 05:14:58 -04:00
247 lines
6.9 KiB
C++
247 lines
6.9 KiB
C++
#ifndef D_MENU_SAVE_H
|
|
#define D_MENU_SAVE_H
|
|
|
|
#include "d/d_drawlist.h"
|
|
#include "f_op/f_op_msg_mng.h"
|
|
#include "m_Do/m_Do_hostIO.h"
|
|
|
|
struct fopMsgM_pane_class;
|
|
|
|
class dDlst_MenuSave_c : public dDlst_base_c {
|
|
public:
|
|
~dDlst_MenuSave_c() {}
|
|
void draw();
|
|
|
|
/* 0x4 */ J2DScreen* Scr;
|
|
/* 0x8 */ JUTFont* font;
|
|
};
|
|
|
|
class dFile_error_c;
|
|
class STControl;
|
|
|
|
class dMenu_save_c {
|
|
public:
|
|
enum {
|
|
PROC_SAVE_QUESTION,
|
|
PROC_MEMCARD_CHECK,
|
|
PROC_OPEN_SAVE_MENU,
|
|
PROC_CLOSE_SAVE_MENU,
|
|
PROC_MEMCARD_ERR_MSG_WAIT_KEY,
|
|
PROC_MEMCARD_ERR_MSG_WAIT_KEY2,
|
|
PROC_MEMCARD_ERR_MSG_WAIT_KEY3,
|
|
PROC_MEMCARD_ERR_GO_IPL_SEL,
|
|
PROC_MEMCARD_ERR_GO_IPL_SEL2,
|
|
PROC_MEMCARD_FORMAT,
|
|
PROC_MEMCARD_ERR_MSG_WAIT_FORMAT_SEL,
|
|
PROC_MEMCARD_ERR_MSG_WAIT_FORMAT_SEL2,
|
|
PROC_MEMCARD_FORMAT_CHECK,
|
|
PROC_MEMCARD_MAKE_GAME_FILE_SEL,
|
|
PROC_MEMCARD_MAKE_GAME_FILE,
|
|
PROC_MEMCARD_MAKE_GAME_FILE_CHECK,
|
|
PROC_MEMCARD_DATA_LOAD_WAIT,
|
|
PROC_MEMCARD_DATA_LOAT_WAIT2,
|
|
PROC_MEMCARD_DATA_SAVE,
|
|
PROC_MEMCARD_DATA_SAVE_UP_MENU,
|
|
PROC_MEMCARD_DATA_SAVE_SEL,
|
|
PROC_MEMCARD_DATA_SAVE_DOWN_MENU,
|
|
PROC_MEMCARD_DATA_SAVE_WAIT,
|
|
PROC_MSG_WAIT,
|
|
PROC_MSG_WAIT2,
|
|
PROC_SAVE_END_WAIT,
|
|
PROC_SAVE_WAIT,
|
|
PROC_CAN_NOT_SAVE,
|
|
PROC_CAN_NOT_SAVE2,
|
|
PROC_GAME_CONTINUE,
|
|
PROC_GAME_CONTINUE2,
|
|
PROC_GAME_CONTINUE3,
|
|
#if VERSION >= VERSION_JPN
|
|
PROC_GAME_CONTINUE4,
|
|
#endif
|
|
PROC_ENDING_NO_SAVE,
|
|
PROC_ENDING_NO_SAVE2,
|
|
PROC_ENDING_NO_SAVE3,
|
|
PROC_ENDING_DATA_CHECK,
|
|
PROC_NO_SAVE,
|
|
PROC_NO_SAVE2,
|
|
};
|
|
|
|
u8* getDataBufPtr() { return dataBuf; }
|
|
u8 getEndStatus() { return endStatus; }
|
|
u8 getSaveStatus() { return saveStatus; }
|
|
void setErrorFlag(u8) {}
|
|
void setErrorType(u8) {}
|
|
void setUseType(u8 i_useType) { useType = i_useType; }
|
|
|
|
virtual ~dMenu_save_c() {}
|
|
void _create();
|
|
void _draw();
|
|
void _draw2();
|
|
void _move();
|
|
bool _open();
|
|
bool _close();
|
|
void _delete();
|
|
|
|
void initialize();
|
|
BOOL openNormal();
|
|
BOOL closeNormal();
|
|
BOOL openForCollect();
|
|
BOOL openForItem();
|
|
BOOL closeForCollect();
|
|
BOOL closeForItem();
|
|
BOOL openForGameover();
|
|
BOOL closeForGameover();
|
|
BOOL closeForGameover_1();
|
|
BOOL closeForGameover_2();
|
|
BOOL openForEnding();
|
|
BOOL openForEnding2();
|
|
BOOL closeForEnding();
|
|
void noSave();
|
|
void noSave2();
|
|
void saveQuestion();
|
|
void memCardCheck();
|
|
void openSaveMenu();
|
|
void closeSaveMenu();
|
|
void memCardErrMsgWaitKey();
|
|
void memCardErrMsgWaitKey2();
|
|
void memCardErrMsgWaitKey3();
|
|
void memCardErrGoIPLSel();
|
|
void memCardErrGoIPLSel2();
|
|
void memCardErrMsgWaitFormatSel();
|
|
void memCardErrMsgWaitFormatSel2();
|
|
void memCardFormat();
|
|
void memCardFormatCheck();
|
|
void memCardMakeGameFileSel();
|
|
void memCardMakeGameFile();
|
|
void memCardMakeGameFileCheck();
|
|
void memCardDataLoadWait();
|
|
void memCardDataLoadWait2();
|
|
void memCardDataSave();
|
|
void memCardDataSaveUpMenu();
|
|
void memCardDataSaveSel();
|
|
void memCardDataSaveDownMenu();
|
|
void dataWrite();
|
|
void memCardDataSaveWait();
|
|
void msgWait();
|
|
void msgWait2();
|
|
void saveEndWait();
|
|
void canNotSave();
|
|
void canNotSave2();
|
|
void gameContinue();
|
|
void gameContinue2();
|
|
void gameContinue3();
|
|
void gameContinue4();
|
|
void endingNoSave();
|
|
void endingNoSave2();
|
|
void endingNoSave3();
|
|
void endingDataCheck();
|
|
void saveWait();
|
|
BOOL YesNoSelect(int);
|
|
BOOL YesNoSelect2(int);
|
|
void CursorAlphaInit();
|
|
void CursorMove();
|
|
void CursorAnime();
|
|
BOOL openSave();
|
|
BOOL closeSave();
|
|
void screenSet();
|
|
void paneTransInit();
|
|
void displayInit();
|
|
void initializeEx();
|
|
BOOL menuUp();
|
|
BOOL menuDown();
|
|
BOOL PaneAlphaMsgTxt(s16, u8);
|
|
BOOL PaneTranceBase(s16, u8, f32, f32, u8, int);
|
|
BOOL PaneScaleAlphaWipe(s16, u8, f32, u8, int);
|
|
BOOL PaneAlphaMask(s16, u8, u8, int);
|
|
BOOL PaneTranceTitle(s16, u8, f32, f32, u8, int);
|
|
BOOL PaneRotate(s16, u8, fopMsgM_pane_class*, f32, f32, f32, u8);
|
|
BOOL PaneTranceMenu(s16, u8, fopMsgM_pane_class*, f32, f32, u8, int);
|
|
|
|
public:
|
|
/* 0x0004 */ JKRArchive* archive;
|
|
/* 0x0008 */ dDlst_MenuSave_c MenuSave;
|
|
/* 0x0014 */ fopMsgM_pane_class field_0x14[8];
|
|
/* 0x01D4 */ fopMsgM_pane_class field_0x1d4;
|
|
/* 0x020C */ fopMsgM_pane_class field_0x20c[5];
|
|
/* 0x0324 */ fopMsgM_pane_class field_0x324;
|
|
/* 0x035C */ fopMsgM_pane_class field_0x35c;
|
|
/* 0x0394 */ fopMsgM_pane_class field_0x394;
|
|
/* 0x03CC */ fopMsgM_pane_class field_0x3cc;
|
|
/* 0x0404 */ fopMsgM_pane_class field_0x404;
|
|
/* 0x043C */ fopMsgM_pane_class field_0x43c;
|
|
/* 0x0474 */ fopMsgM_pane_class field_0x474;
|
|
/* 0x04AC */ fopMsgM_pane_class field_0x4ac;
|
|
/* 0x04E4 */ fopMsgM_pane_class field_0x4e4;
|
|
#if VERSION == VERSION_PAL
|
|
/* 0x051C */ fopMsgM_pane_class field_0x51c_pal;
|
|
#endif
|
|
/* 0x051C */ char* field_0x51c[2];
|
|
/* 0x0524 */ dFile_error_c* dFe_c;
|
|
/* 0x0528 */ STControl* stick;
|
|
/* 0x052C */ u8 proc;
|
|
/* 0x052D */ u8 field_0x52d;
|
|
/* 0x052E */ u8 field_0x52e;
|
|
/* 0x052F */ u8 field_0x52f;
|
|
/* 0x0530 */ u8 field_0x530;
|
|
/* 0x0531 */ u8 saveStatus;
|
|
/* 0x0532 */ u8 field_0x532;
|
|
/* 0x0533 */ u8 field_0x533;
|
|
/* 0x0534 */ u8 field_0x534;
|
|
/* 0x0535 */ u8 field_0x535;
|
|
/* 0x0536 */ u8 field_0x536;
|
|
/* 0x0537 */ u8 useType;
|
|
/* 0x0538 */ u8 endStatus;
|
|
/* 0x0539 */ u8 field_0x539;
|
|
/* 0x053A */ u8 field_0x53a;
|
|
/* 0x053B */ u8 field_0x53b;
|
|
/* 0x053C */ u8 field_0x53c;
|
|
/* 0x053D */ u8 field_0x53d;
|
|
/* 0x0540 */ int field_0x540;
|
|
/* 0x0544 */ s16 field_0x544;
|
|
/* 0x0546 */ u8 field_0x546[0x0554 - 0x0546];
|
|
/* 0x0554 */ u8 dataBuf[5712];
|
|
}; // Size: 0x1BA4
|
|
|
|
class dMs_HIO_c : public JORReflexible {
|
|
public:
|
|
dMs_HIO_c();
|
|
virtual ~dMs_HIO_c() {}
|
|
|
|
/* 0x04 */ s8 id;
|
|
/* 0x05 */ u8 field_0x5;
|
|
/* 0x06 */ u8 field_0x6;
|
|
/* 0x07 */ u8 field_0x7;
|
|
/* 0x08 */ u8 field_0x8;
|
|
/* 0x09 */ u8 field_0x9;
|
|
/* 0x0A */ u8 field_0xa;
|
|
/* 0x0B */ u8 field_0xb;
|
|
/* 0x0C */ s16 field_0xc;
|
|
/* 0x0E */ s16 field_0xe;
|
|
/* 0x10 */ u8 field_0x10;
|
|
/* 0x11 */ u8 field_0x11;
|
|
/* 0x12 */ u8 field_0x12;
|
|
/* 0x13 */ u8 field_0x13;
|
|
/* 0x14 */ s16 field_0x14;
|
|
/* 0x16 */ s16 field_0x16;
|
|
/* 0x18 */ u8 field_0x18;
|
|
/* 0x19 */ u8 field_0x19;
|
|
/* 0x1A */ u8 field_0x1a;
|
|
/* 0x1B */ u8 field_0x1b;
|
|
/* 0x1C */ u8 field_0x1c;
|
|
/* 0x1E */ s16 field_0x1e;
|
|
/* 0x20 */ u8 field_0x20;
|
|
/* 0x21 */ u8 field_0x21;
|
|
/* 0x22 */ u8 field_0x22;
|
|
/* 0x23 */ u8 field_0x23;
|
|
/* 0x24 */ u8 field_0x24;
|
|
/* 0x25 */ u8 field_0x25;
|
|
/* 0x26 */ s16 field_0x26;
|
|
/* 0x28 */ u8 field_0x28;
|
|
/* 0x29 */ u8 field_0x29;
|
|
/* 0x2A */ u8 field_0x2a;
|
|
/* 0x2C */ s16 field_0x2c;
|
|
/* 0x2E */ u8 field_0x2e;
|
|
};
|
|
|
|
|
|
#endif /* D_MENU_SAVE_H */
|