Document src/save.c
This commit is contained in:
+2
-2
@@ -2224,10 +2224,10 @@ static u32 Cmd_SaveGame(struct BerryCrushGame * game, u8 *args)
|
||||
DrawDialogueFrame(0, FALSE);
|
||||
AddTextPrinterParameterized2(0, FONT_2, gText_SavingDontTurnOffThePower2, 0, NULL, TEXT_COLOR_DARK_GRAY, TEXT_COLOR_WHITE, TEXT_COLOR_LIGHT_GRAY);
|
||||
CopyWindowToVram(0, COPYWIN_FULL);
|
||||
CreateTask(Task_LinkSave, 0);
|
||||
CreateTask(Task_LinkFullSave, 0);
|
||||
break;
|
||||
case 3:
|
||||
if (FuncIsActiveTask(Task_LinkSave))
|
||||
if (FuncIsActiveTask(Task_LinkFullSave))
|
||||
return 0;
|
||||
break;
|
||||
case 4:
|
||||
|
||||
+4
-4
@@ -47,11 +47,11 @@ static bool32 CEReaderTool_SaveTrainerTower_r(struct EReaderTrainerTowerSet * tt
|
||||
memset(buffer, 0, 0x1000);
|
||||
memcpy(buffer, ttdata, SEC30_SIZE);
|
||||
buffer[1] = sub_815D654();
|
||||
if (TryWriteSpecialSaveSection(SECTOR_TTOWER(0), buffer) != TRUE)
|
||||
if (TryWriteSpecialSaveSector(SECTOR_ID_TRAINER_TOWER_1, buffer) != TRUE)
|
||||
return FALSE;
|
||||
memset(buffer, 0, 0x1000);
|
||||
memcpy(buffer, (u8 *)ttdata + SEC30_SIZE, SEC31_SIZE);
|
||||
if (TryWriteSpecialSaveSection(SECTOR_TTOWER(1), buffer) != TRUE)
|
||||
if (TryWriteSpecialSaveSector(SECTOR_ID_TRAINER_TOWER_2, buffer) != TRUE)
|
||||
return FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
@@ -66,11 +66,11 @@ bool32 CEReaderTool_SaveTrainerTower(struct EReaderTrainerTowerSet * ttdata)
|
||||
|
||||
static bool32 CEReaderTool_LoadTrainerTower_r(struct EReaderTrainerTowerSet * ttdata, void *buffer)
|
||||
{
|
||||
if (TryCopySpecialSaveSection(SECTOR_TTOWER(0), buffer) != 1)
|
||||
if (TryReadSpecialSaveSector(SECTOR_ID_TRAINER_TOWER_1, buffer) != 1)
|
||||
return FALSE;
|
||||
memcpy(ttdata + 0x000, buffer, SEC30_SIZE);
|
||||
|
||||
if (TryCopySpecialSaveSection(SECTOR_TTOWER(1), buffer) != 1)
|
||||
if (TryReadSpecialSaveSector(SECTOR_ID_TRAINER_TOWER_2, buffer) != 1)
|
||||
return FALSE;
|
||||
memcpy((u8 *)ttdata + SEC30_SIZE, buffer, SEC31_SIZE);
|
||||
|
||||
|
||||
@@ -1431,12 +1431,12 @@ static void sub_8155A78(void)
|
||||
case 2:
|
||||
if (!IsDma3ManagerBusyWithBgCopy())
|
||||
{
|
||||
CreateTask(Task_LinkSave, 0);
|
||||
CreateTask(Task_LinkFullSave, 0);
|
||||
gUnknown_203F440->state++;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (!FuncIsActiveTask(Task_LinkSave))
|
||||
if (!FuncIsActiveTask(Task_LinkFullSave))
|
||||
gUnknown_203F440->state++;
|
||||
break;
|
||||
default:
|
||||
|
||||
+2
-2
@@ -429,7 +429,7 @@ static void Task_Hof_InitTeamSaveData(u8 taskId)
|
||||
}
|
||||
else
|
||||
{
|
||||
if (Save_LoadGameData(SAVE_HALL_OF_FAME) != TRUE)
|
||||
if (LoadGameSave(SAVE_HALL_OF_FAME) != SAVE_STATUS_OK)
|
||||
memset(gDecompressionBuffer, 0, 0x2000);
|
||||
}
|
||||
|
||||
@@ -759,7 +759,7 @@ static void Task_HofPC_CopySaveData(u8 taskId)
|
||||
struct HallofFameTeam* savedTeams;
|
||||
|
||||
CreateTopBarWindowLoadPalette(0, 30, 0, 0x0C, 0x226);
|
||||
if (Save_LoadGameData(SAVE_HALL_OF_FAME) != SAVE_STATUS_OK)
|
||||
if (LoadGameSave(SAVE_HALL_OF_FAME) != SAVE_STATUS_OK)
|
||||
{
|
||||
gTasks[taskId].func = Task_HofPC_PrintDataIsCorrupted;
|
||||
}
|
||||
|
||||
+1
-1
@@ -872,7 +872,7 @@ void c2_copyright_1(void)
|
||||
{
|
||||
ResetMenuAndMonGlobals();
|
||||
Save_ResetSaveCounters();
|
||||
Save_LoadGameData(SAVE_NORMAL);
|
||||
LoadGameSave(SAVE_NORMAL);
|
||||
if (gSaveFileStatus == SAVE_STATUS_EMPTY || gSaveFileStatus == SAVE_STATUS_INVALID)
|
||||
Sav2_ClearSetDefault();
|
||||
SetPokemonCryStereo(gSaveBlock2Ptr->optionsSound);
|
||||
|
||||
+2
-2
@@ -1620,12 +1620,12 @@ static bool32 SavePokeJump(void)
|
||||
case 2:
|
||||
if (AreLinkQueuesEmpty())
|
||||
{
|
||||
CreateTask(Task_LinkSave, 6);
|
||||
CreateTask(Task_LinkFullSave, 6);
|
||||
sPokemonJump->mainState++;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
if (!FuncIsActiveTask(Task_LinkSave))
|
||||
if (!FuncIsActiveTask(Task_LinkFullSave))
|
||||
{
|
||||
ClearMessageWindow();
|
||||
sPokemonJump->mainState++;
|
||||
|
||||
+1
-1
@@ -809,7 +809,7 @@ static void QuestLog_StartFinalScene(void)
|
||||
{
|
||||
ResetSpecialVars();
|
||||
Save_ResetSaveCounters();
|
||||
Save_LoadGameData(SAVE_NORMAL);
|
||||
LoadGameSave(SAVE_NORMAL);
|
||||
SetMainCallback2(CB2_EnterFieldFromQuestLog);
|
||||
gFieldCallback2 = FieldCB2_FinalScene;
|
||||
FreeAllWindowBuffers();
|
||||
|
||||
@@ -18,7 +18,7 @@ void ResetSaveHeap(void)
|
||||
SetSaveBlocksPointers();
|
||||
ResetMenuAndMonGlobals();
|
||||
Save_ResetSaveCounters();
|
||||
Save_LoadGameData(SAVE_NORMAL);
|
||||
LoadGameSave(SAVE_NORMAL);
|
||||
if (gSaveFileStatus == SAVE_STATUS_EMPTY || gSaveFileStatus == SAVE_STATUS_INVALID)
|
||||
Sav2_ClearSetDefault();
|
||||
SetPokemonCryStereo(gSaveBlock2Ptr->optionsSound);
|
||||
|
||||
+365
-354
File diff suppressed because it is too large
Load Diff
@@ -74,12 +74,12 @@ bool32 RunSaveFailedScreen(void)
|
||||
case 5:
|
||||
if (TryWipeDamagedSectors() == TRUE)
|
||||
{
|
||||
gSaveSucceeded = SAVE_STATUS_OK;
|
||||
gSaveAttemptStatus = SAVE_STATUS_OK;
|
||||
PrintTextOnSaveFailedScreen(gText_SaveFailedScreen_SaveCompleted);
|
||||
}
|
||||
else
|
||||
{
|
||||
gSaveSucceeded = SAVE_STATUS_ERROR;
|
||||
gSaveAttemptStatus = SAVE_STATUS_ERROR;
|
||||
PrintTextOnSaveFailedScreen(gText_SaveFailedScreen_BackupMemoryDamaged);
|
||||
}
|
||||
sSaveFailedScreenState = 6;
|
||||
|
||||
+5
-5
@@ -798,7 +798,7 @@ static u8 SaveDialogCB_DoSave(void)
|
||||
|
||||
static u8 SaveDialogCB_PrintSaveResult(void)
|
||||
{
|
||||
if (gSaveSucceeded == TRUE)
|
||||
if (gSaveAttemptStatus == SAVE_STATUS_OK)
|
||||
PrintSaveTextWithFollowupFunc(gText_PlayerSavedTheGame, SaveDialogCB_WaitPrintSuccessAndPlaySE);
|
||||
else
|
||||
PrintSaveTextWithFollowupFunc(gText_SaveError_PleaseExchangeBackupMemory, SaveDialogCB_WaitPrintErrorAndPlaySE);
|
||||
@@ -921,11 +921,11 @@ static void task50_after_link_battle_save(u8 taskId)
|
||||
break;
|
||||
case 1:
|
||||
SetContinueGameWarpStatusToDynamicWarp();
|
||||
sub_80DA45C();
|
||||
WriteSaveBlock2();
|
||||
data[0] = 2;
|
||||
break;
|
||||
case 2:
|
||||
if (sub_80DA4A0())
|
||||
if (WriteSaveBlock1Sector())
|
||||
{
|
||||
ClearContinueGameWarpStatus2();
|
||||
data[0] = 3;
|
||||
@@ -941,11 +941,11 @@ static void task50_after_link_battle_save(u8 taskId)
|
||||
DestroyTask(taskId);
|
||||
break;
|
||||
case 5:
|
||||
CreateTask(Task_LinkSave, 5);
|
||||
CreateTask(Task_LinkFullSave, 5);
|
||||
data[0] = 6;
|
||||
break;
|
||||
case 6:
|
||||
if (!FuncIsActiveTask(Task_LinkSave))
|
||||
if (!FuncIsActiveTask(Task_LinkFullSave))
|
||||
data[0] = 3;
|
||||
break;
|
||||
}
|
||||
|
||||
+1
-1
@@ -698,7 +698,7 @@ static void SetTitleScreenScene_Cry(s16 * data)
|
||||
SetSaveBlocksPointers();
|
||||
ResetMenuAndMonGlobals();
|
||||
Save_ResetSaveCounters();
|
||||
Save_LoadGameData(SAVE_NORMAL);
|
||||
LoadGameSave(SAVE_NORMAL);
|
||||
if (gSaveFileStatus == SAVE_STATUS_EMPTY || gSaveFileStatus == SAVE_STATUS_INVALID)
|
||||
Sav2_ClearSetDefault();
|
||||
SetPokemonCryStereo(gSaveBlock2Ptr->optionsSound);
|
||||
|
||||
+4
-4
@@ -2587,7 +2587,7 @@ static void CB2_HandleTradeEnded(void)
|
||||
MEvent_RecordIdOfWonderCardSenderByEventType(2, gLinkPlayers[GetMultiplayerId() ^ 1].trainerId);
|
||||
}
|
||||
SetContinueGameWarpStatusToDynamicWarp();
|
||||
SaveGame_AfterLinkTrade();
|
||||
LinkFullSave_Init();
|
||||
gMain.state++;
|
||||
sTradeData->timer = 0;
|
||||
break;
|
||||
@@ -2598,7 +2598,7 @@ static void CB2_HandleTradeEnded(void)
|
||||
}
|
||||
break;
|
||||
case 52:
|
||||
if (AfterLinkTradeSaveFailed())
|
||||
if (LinkFullSave_WriteSector())
|
||||
{
|
||||
ClearContinueGameWarpStatus2();
|
||||
gMain.state = 4;
|
||||
@@ -2610,7 +2610,7 @@ static void CB2_HandleTradeEnded(void)
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
ClearSaveAfterLinkTradeSaveFailure();
|
||||
LinkFullSave_ReplaceLastSector();
|
||||
gMain.state = 40;
|
||||
sTradeData->timer = 0;
|
||||
break;
|
||||
@@ -2642,7 +2642,7 @@ static void CB2_HandleTradeEnded(void)
|
||||
case 42:
|
||||
if (IsLinkTaskFinished())
|
||||
{
|
||||
sub_80DA434();
|
||||
LinkFullSave_SetLastSectorSignature();
|
||||
gMain.state = 5;
|
||||
}
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user