mirror of
https://github.com/mwpenny/portal64-still-alive.git
synced 2024-10-20 10:37:37 -04:00
Fix savefiles
This commit is contained in:
parent
4d66641be7
commit
0ed4fa8244
|
@ -244,4 +244,32 @@ int levelGetChamberNumber(int levelIndex, int roomIndex){
|
|||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
int chamberNumberGetLevel(int chamberIndex) {
|
||||
switch (chamberIndex) {
|
||||
case 0:
|
||||
case 1:
|
||||
return 0;
|
||||
case 2:
|
||||
case 3:
|
||||
return 1;
|
||||
case 4:
|
||||
case 5:
|
||||
return 2;
|
||||
case 6:
|
||||
case 7:
|
||||
return 3;
|
||||
case 8:
|
||||
return 4;
|
||||
case 9:
|
||||
return 5;
|
||||
case 10:
|
||||
return 6;
|
||||
case 11:
|
||||
case 12:
|
||||
return 7;
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
|
@ -29,6 +29,7 @@ Gfx* levelMaterialRevert(int index);
|
|||
int levelQuadIndex(struct CollisionObject* pointer);
|
||||
|
||||
int levelGetChamberNumber(int levelIndex, int roomIndex);
|
||||
int chamberNumberGetLevel(int chamberIndex);
|
||||
|
||||
struct Location* levelGetLocation(short index);
|
||||
|
||||
|
|
|
@ -31,12 +31,12 @@ void loadGamePopulate(struct LoadGameMenu* loadGame) {
|
|||
enum MenuDirection loadGameUpdate(struct LoadGameMenu* loadGame) {
|
||||
if (controllerGetButtonDown(0, A_BUTTON) && loadGame->savefileList->numberOfSaves) {
|
||||
Checkpoint* save = stackMalloc(MAX_CHECKPOINT_SIZE);
|
||||
int level;
|
||||
int testChamber;
|
||||
int testSubject;
|
||||
savefileLoadGame(savefileGetSlot(loadGame->savefileList), save, &level, &testSubject);
|
||||
savefileLoadGame(savefileGetSlot(loadGame->savefileList), save, &testChamber, &testSubject);
|
||||
gCurrentTestSubject = testSubject;
|
||||
|
||||
levelQueueLoad(level, NULL, NULL);
|
||||
levelQueueLoad(chamberNumberGetLevel(testChamber), NULL, NULL);
|
||||
checkpointUse(save);
|
||||
|
||||
stackMallocFree(save);
|
||||
|
|
Loading…
Reference in a new issue