mirror of
https://github.com/mwpenny/portal64-still-alive.git
synced 2024-10-19 10:17:36 -04:00
Merge pull request #591 from mwpenny/save-fix
Do not save partial savefile on first boot (fixes #583)
This commit is contained in:
commit
b0c02a33f7
|
@ -77,6 +77,12 @@ int savefileSramLoad(void* sramAddr, void* ramAddr, int size) {
|
|||
return 1;
|
||||
}
|
||||
|
||||
static void savefileUpdateSlot(int slotIndex, unsigned char testChamber, unsigned char subjectNumber, unsigned char slotOrder) {
|
||||
gSaveData.saveSlotMetadata[slotIndex].testChamber = testChamber;
|
||||
gSaveData.saveSlotMetadata[slotIndex].testSubjectNumber = subjectNumber;
|
||||
gSaveData.saveSlotMetadata[slotIndex].saveSlotOrder = slotOrder;
|
||||
}
|
||||
|
||||
void savefileNew() {
|
||||
zeroMemory(&gSaveData, sizeof(gSaveData));
|
||||
gSaveData.header.header = SAVEFILE_HEADER;
|
||||
|
@ -85,7 +91,7 @@ void savefileNew() {
|
|||
gSaveData.header.flags = 0;
|
||||
|
||||
for (int i = 0; i < MAX_SAVE_SLOTS; ++i) {
|
||||
savefileDeleteGame(i);
|
||||
savefileUpdateSlot(i, NO_TEST_CHAMBER, 0xFF, 0xFF);
|
||||
}
|
||||
|
||||
controllerSetDefaultSource();
|
||||
|
@ -162,9 +168,7 @@ void savefileDeleteGame(int slotIndex) {
|
|||
}
|
||||
}
|
||||
|
||||
gSaveData.saveSlotMetadata[slotIndex].testChamber = NO_TEST_CHAMBER;
|
||||
gSaveData.saveSlotMetadata[slotIndex].testSubjectNumber = 0xFF;
|
||||
gSaveData.saveSlotMetadata[slotIndex].saveSlotOrder = 0xFF;
|
||||
savefileUpdateSlot(slotIndex, NO_TEST_CHAMBER, 0xFF, 0xFF);
|
||||
|
||||
savefileSave();
|
||||
}
|
||||
|
@ -184,9 +188,7 @@ void savefileSaveGame(Checkpoint checkpoint, u16* screenshot, int testChamberDis
|
|||
}
|
||||
}
|
||||
|
||||
gSaveData.saveSlotMetadata[slotIndex].testChamber = testChamberDisplayNumber;
|
||||
gSaveData.saveSlotMetadata[slotIndex].testSubjectNumber = subjectNumber;
|
||||
gSaveData.saveSlotMetadata[slotIndex].saveSlotOrder = 0;
|
||||
savefileUpdateSlot(slotIndex, testChamberDisplayNumber, subjectNumber, 0);
|
||||
|
||||
savefileSave();
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue