Hook into file delete and clear notes

This commit is contained in:
Garrett Cox 2022-09-03 15:46:33 -05:00
parent b92b1eaee6
commit 77a5d03019
3 changed files with 7 additions and 1 deletions

View File

@ -32,4 +32,5 @@ namespace Ship {
DEFINE_HOOK(GfxInit, void());
DEFINE_HOOK(ExitGame, void());
DEFINE_HOOK(LoadFile, void(uint32_t fileNum));
DEFINE_HOOK(DeleteFile, void(uint32_t fileNum));
}

View File

@ -930,7 +930,11 @@ void InitItemTracker() {
buttonsPressed = cont_pad;
});
Ship::RegisterHook<Ship::LoadFile>([](uint32_t fileNum) {
const char* initialTrackerNotes = CVar_GetString(("gItemTrackerNotes" + std::to_string(gSaveContext.fileNum)).c_str(), "");
const char* initialTrackerNotes = CVar_GetString(("gItemTrackerNotes" + std::to_string(fileNum)).c_str(), "");
strcpy(itemTrackerNotes.Data, initialTrackerNotes);
});
Ship::RegisterHook<Ship::DeleteFile>([](uint32_t fileNum) {
CVar_SetString(("gItemTrackerNotes" + std::to_string(fileNum)).c_str(), "");
SohImGui::RequestCvarSaveOnNextTick();
});
}

View File

@ -1592,6 +1592,7 @@ extern "C" void Save_CopyFile(int from, int to) {
extern "C" void Save_DeleteFile(int fileNum) {
SaveManager::Instance->DeleteZeldaFile(fileNum);
Ship::ExecuteHooks<Ship::DeleteFile>(fileNum);
}
extern "C" bool Save_Exist(int fileNum) {