mirror of
https://github.com/zeldaret/ss
synced 2026-08-09 18:57:50 -04:00
78 lines
1.8 KiB
C++
78 lines
1.8 KiB
C++
#ifndef D_LYT_SAVE_MGR_H
|
|
#define D_LYT_SAVE_MGR_H
|
|
|
|
#include "d/d_base.h"
|
|
#include "d/lyt/d_lyt_save_msg_window.h"
|
|
#include "s/s_State.hpp"
|
|
|
|
class dLytSaveMgr_c : public dBase_c {
|
|
public:
|
|
dLytSaveMgr_c();
|
|
virtual ~dLytSaveMgr_c();
|
|
|
|
virtual int create() override;
|
|
virtual int doDelete() override;
|
|
virtual int execute() override;
|
|
virtual int draw() override;
|
|
|
|
static dLytSaveMgr_c *GetInstance() {
|
|
return sInstance;
|
|
}
|
|
|
|
|
|
void init();
|
|
|
|
enum FadeInPrompt_e {
|
|
PROMPT_SAVEOBJ_NORMAL,
|
|
PROMPT_SAVEOBJ_TOSKY,
|
|
PROMPT_SAVEOBJ_DUNGEON,
|
|
PROMPT_SAVE_NORMAL,
|
|
PROMPT_HERO_MODE,
|
|
PROMPT_HERO_MODE_CONFIRM,
|
|
|
|
PROMPT_MAX,
|
|
|
|
PROMPT_SAVEOBJ_NUM = PROMPT_SAVEOBJ_DUNGEON + 1,
|
|
};
|
|
|
|
bool setPrompt(s32 prompt, bool setTempflag2);
|
|
bool setSaveobjPrompt(s32 prompt, u8 saveobjId, bool setTempflag2);
|
|
bool unused_weakfnorder();
|
|
bool isBusy() const;
|
|
|
|
enum Action_e {
|
|
ACTION_0,
|
|
ACTION_1,
|
|
ACTION_2,
|
|
ACTION_3,
|
|
ACTION_MAX,
|
|
};
|
|
|
|
bool isFinishedFadingIn() const {
|
|
return mIsFinishedFadingIn;
|
|
}
|
|
|
|
private:
|
|
static dLytSaveMgr_c *sInstance;
|
|
|
|
STATE_FUNC_DECLARE(dLytSaveMgr_c, Init);
|
|
STATE_FUNC_DECLARE(dLytSaveMgr_c, FadeOut);
|
|
STATE_FUNC_DECLARE(dLytSaveMgr_c, Select);
|
|
STATE_FUNC_DECLARE(dLytSaveMgr_c, FadeIn);
|
|
|
|
/* 0x0068 */ UI_STATE_MGR_DECLARE(dLytSaveMgr_c);
|
|
/* 0x00A4 */ dLytSaveMsgWindow_c mWindow;
|
|
/* 0x1184 */ s32 mSavePrompt;
|
|
/* 0x1188 */ s32 mStep;
|
|
/* 0x118C */ s32 mChosenAction;
|
|
|
|
/* 0x1190 */ u8 _0x1190[0x119A - 0x1190];
|
|
|
|
/* 0x119A */ u8 mSaveobjId;
|
|
/* 0x119B */ bool mFadeOutRequested;
|
|
/* 0x119C */ bool mIsFinishedFadingIn;
|
|
/* 0x119D */ bool mShouldSetTempflag2;
|
|
};
|
|
|
|
#endif
|