2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-09 11:47:43 +00:00

Implement CAutoSave

This commit is contained in:
2020-09-12 18:13:38 -07:00
parent 93e85e64f6
commit b68af83fb3
5 changed files with 130 additions and 65 deletions

View File

@@ -66,12 +66,12 @@ private:
TLockedToken<CStringTable> x38_strgMemoryCard;
TLockedToken<CGuiFrame> x44_frmeGenericMenu;
CGuiFrame* x50_loadedFrame = nullptr;
CGuiTextPane* x54_textpane_message;
CGuiTableGroup* x58_tablegroup_choices;
CGuiTextPane* x5c_textpane_choice0;
CGuiTextPane* x60_textpane_choice1;
CGuiTextPane* x64_textpane_choice2;
CGuiTextPane* x68_textpane_choice3;
CGuiTextPane* x54_textpane_message{};
CGuiTableGroup* x58_tablegroup_choices{};
CGuiTextPane* x5c_textpane_choice0{};
CGuiTextPane* x60_textpane_choice1{};
CGuiTextPane* x64_textpane_choice2{};
CGuiTextPane* x68_textpane_choice3{};
std::unique_ptr<CMemoryCardDriver> x6c_cardDriver;
std::vector<TLockedToken<CSaveWorld>> x70_saveWorlds;
CIOWin::EMessageReturn x80_iowRet = CIOWin::EMessageReturn::Normal;
@@ -93,7 +93,7 @@ public:
CIOWin::EMessageReturn Update(float dt);
void SetInGame(bool v) { x93_inGame = v; }
bool PumpLoad();
EUIType SelectUIType() const;
[[nodiscard]] EUIType SelectUIType() const;
void SetUIText();
void SetUIColors();
void Draw() const;
@@ -105,9 +105,9 @@ public:
void StartGame(int idx);
void SaveNESState();
void EraseGame(int idx);
const CGameState::GameFileStateInfo* GetGameData(int idx) const;
EUIType GetUIType() const { return x10_uiType; }
bool IsSavingDisabled() const { return x92_savingDisabled; }
[[nodiscard]] const CGameState::GameFileStateInfo* GetGameData(int idx) const;
[[nodiscard]] EUIType GetUIType() const { return x10_uiType; }
[[nodiscard]] bool IsSavingDisabled() const { return x92_savingDisabled; }
explicit CSaveGameScreen(ESaveContext saveCtx, u64 serial);
};