forked from cafeberry/cafeberry
feat: 8th gen autosave on windows64
This commit is contained in:
@@ -3614,7 +3614,7 @@ int ClientConnection::HostDisconnectReturned(void *pParam,int iPad,C4JStorage::E
|
||||
}
|
||||
}
|
||||
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
// Give the player the option to save their game
|
||||
// does the save exist?
|
||||
bool bSaveExists;
|
||||
@@ -3646,7 +3646,7 @@ int ClientConnection::HostDisconnectReturned(void *pParam,int iPad,C4JStorage::E
|
||||
else
|
||||
#endif
|
||||
{
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
StorageManager.SetSaveDisabled(false);
|
||||
#endif
|
||||
MinecraftServer::getInstance()->setSaveOnExit( true );
|
||||
@@ -3665,7 +3665,7 @@ int ClientConnection::ExitGameAndSaveReturned(void *pParam,int iPad,C4JStorage::
|
||||
//INT saveOrCheckpointId = 0;
|
||||
//bool validSave = StorageManager.GetSaveUniqueNumber(&saveOrCheckpointId);
|
||||
//SentientManager.RecordLevelSaveOrCheckpoint(ProfileManager.GetPrimaryPad(), saveOrCheckpointId);
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
StorageManager.SetSaveDisabled(false);
|
||||
#endif
|
||||
MinecraftServer::getInstance()->setSaveOnExit( true );
|
||||
|
||||
@@ -766,6 +766,8 @@ void CMinecraftApp::InitGameSettings()
|
||||
// 4J-PB - adding in for Windows & PS3 to set the defaults for the joypad
|
||||
#if defined _WINDOWS64// || defined __PSVITA__
|
||||
C_4JProfile::PROFILESETTINGS *pProfileSettings=ProfileManager.GetDashboardProfileSettings(i);
|
||||
//str1k3r - Temporary
|
||||
app.SetGameHostOption(eGameHostOption_DisableSaving, 0);
|
||||
// clear this for now - it will come from reading the system values
|
||||
memset(pProfileSettings,0,sizeof(C_4JProfile::PROFILESETTINGS));
|
||||
SetDefaultOptions(pProfileSettings,i);
|
||||
@@ -2780,7 +2782,7 @@ void CMinecraftApp::HandleXuiActions(void)
|
||||
app.SetAutosaveTimerTime();
|
||||
SetAction(i,eAppAction_Idle);
|
||||
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
app.SetXuiServerAction(ProfileManager.GetPrimaryPad(),eXuiServerAction_AutoSaveGame);
|
||||
|
||||
if(app.GetGameHostOption(eGameHostOption_DisableSaving)) StorageManager.SetSaveDisabled(true);
|
||||
@@ -3567,7 +3569,7 @@ void CMinecraftApp::HandleXuiActions(void)
|
||||
SetAction(i,eAppAction_Idle);
|
||||
// Check the player really wants to do this
|
||||
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
// Show save option is saves ARE disabled
|
||||
if(ProfileManager.IsFullVersion() && StorageManager.GetSaveDisabled() && i==ProfileManager.GetPrimaryPad() && g_NetworkManager.IsHost() && GetGameStarted() )
|
||||
{
|
||||
@@ -5936,7 +5938,7 @@ int CMinecraftApp::ExitAndJoinFromInviteSaveDialogReturned(void *pParam,int iPad
|
||||
else
|
||||
#endif
|
||||
{
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
StorageManager.SetSaveDisabled(false);
|
||||
#endif
|
||||
MinecraftServer::getInstance()->setSaveOnExit( true );
|
||||
@@ -6139,7 +6141,7 @@ int CMinecraftApp::ExitAndJoinFromInviteDeclineSaveReturned(void *pParam,int iPa
|
||||
// results switched for this dialog
|
||||
if(result==C4JStorage::EMessage_ResultDecline)
|
||||
{
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
StorageManager.SetSaveDisabled(false);
|
||||
#endif
|
||||
MinecraftServer::getInstance()->setSaveOnExit( false );
|
||||
@@ -9460,7 +9462,7 @@ int CMinecraftApp::GetDLCInfoTexturesOffersCount()
|
||||
// AUTOSAVE
|
||||
void CMinecraftApp::SetAutosaveTimerTime(void)
|
||||
{
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
m_uiAutosaveTimer= GetTickCount()+1000*60;
|
||||
#else
|
||||
m_uiAutosaveTimer= GetTickCount()+GetGameSettings(ProfileManager.GetPrimaryPad(),eGameSetting_Autosave)*1000*60*15;
|
||||
|
||||
@@ -94,7 +94,7 @@ int IUIScene_PauseMenu::ExitGameSaveDialogReturned(void *pParam,int iPad,C4JStor
|
||||
}
|
||||
else
|
||||
{
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
StorageManager.SetSaveDisabled(false);
|
||||
#endif
|
||||
MinecraftServer::getInstance()->setSaveOnExit( true );
|
||||
@@ -133,7 +133,7 @@ int IUIScene_PauseMenu::ExitGameAndSaveReturned(void *pParam,int iPad,C4JStorage
|
||||
//INT saveOrCheckpointId = 0;
|
||||
//bool validSave = StorageManager.GetSaveUniqueNumber(&saveOrCheckpointId);
|
||||
//SentientManager.RecordLevelSaveOrCheckpoint(ProfileManager.GetPrimaryPad(), saveOrCheckpointId);
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
StorageManager.SetSaveDisabled(false);
|
||||
#endif
|
||||
if(pScene) pScene->SetIgnoreInput(true);
|
||||
@@ -178,7 +178,7 @@ int IUIScene_PauseMenu::ExitGameDeclineSaveReturned(void *pParam,int iPad,C4JSto
|
||||
// results switched for this dialog
|
||||
if(result==C4JStorage::EMessage_ResultDecline)
|
||||
{
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
// Don't do this here, as it will still try and save some things even though it shouldn't!
|
||||
//StorageManager.SetSaveDisabled(false);
|
||||
#endif
|
||||
@@ -381,7 +381,7 @@ int IUIScene_PauseMenu::SaveWorldThreadProc( LPVOID lpParameter )
|
||||
|
||||
if(!MinecraftServer::serverHalted() && !app.GetChangingSessionType() ) app.SetGameStarted(true);
|
||||
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
if(app.GetGameHostOption(eGameHostOption_DisableSaving)) StorageManager.SetSaveDisabled(true);
|
||||
#endif
|
||||
}
|
||||
@@ -647,7 +647,7 @@ void IUIScene_PauseMenu::_ExitWorld(LPVOID lpParameter)
|
||||
app.SetChangingSessionType(false);
|
||||
app.SetReallyChangingSessionType(false);
|
||||
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
// Make sure we don't think saving is disabled in the menus
|
||||
StorageManager.SetSaveDisabled(false);
|
||||
#endif
|
||||
@@ -659,7 +659,7 @@ int IUIScene_PauseMenu::SaveGameDialogReturned(void *pParam,int iPad,C4JStorage:
|
||||
// results switched for this dialog
|
||||
if(result==C4JStorage::EMessage_ResultDecline)
|
||||
{
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
UINT uiIDA[2];
|
||||
uiIDA[0]=IDS_CONFIRM_CANCEL;
|
||||
uiIDA[1]=IDS_CONFIRM_OK;
|
||||
|
||||
@@ -597,7 +597,7 @@ void UIScene_CreateWorldMenu::StartSharedLaunchFlow()
|
||||
}
|
||||
}
|
||||
}
|
||||
#if defined _XBOX_ONE || defined __ORBIS__
|
||||
#if defined _XBOX_ONE || defined __ORBIS__ || defined(_WINDOWS64)
|
||||
app.SetGameHostOption(eGameHostOption_DisableSaving, m_MoreOptionsParams.bDisableSaving?1:0);
|
||||
StorageManager.SetSaveDisabled(m_MoreOptionsParams.bDisableSaving);
|
||||
#endif
|
||||
|
||||
@@ -110,7 +110,7 @@ void UIScene_DeathMenu::handlePress(F64 controlId, F64 childId)
|
||||
}
|
||||
TelemetryManager->RecordLevelExit(m_iPad, eSen_LevelExitStatus_Failed);
|
||||
|
||||
#if defined (_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined (_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
if(g_NetworkManager.IsHost() && StorageManager.GetSaveDisabled())
|
||||
{
|
||||
uiIDA[0]=IDS_CONFIRM_CANCEL;
|
||||
|
||||
@@ -866,7 +866,7 @@ void UIScene_LoadMenu::StartSharedLaunchFlow()
|
||||
ui.RequestAlertMessage(IDS_WARNING_DLC_TRIALTEXTUREPACK_TITLE, IDS_USING_TRIAL_TEXUREPACK_WARNING, uiIDA, 2, m_iPad,&TrialTexturePackWarningReturned,this);
|
||||
#endif
|
||||
|
||||
#if defined _XBOX_ONE || defined __ORBIS__
|
||||
#if defined _XBOX_ONE || defined __ORBIS__ || defined(_WINDOWS64)
|
||||
StorageManager.SetSaveDisabled(true);
|
||||
#endif
|
||||
return;
|
||||
@@ -875,7 +875,7 @@ void UIScene_LoadMenu::StartSharedLaunchFlow()
|
||||
}
|
||||
app.SetGameHostOption(eGameHostOption_WasntSaveOwner, (!m_bIsSaveOwner));
|
||||
|
||||
#if defined _XBOX_ONE || defined __ORBIS__
|
||||
#if defined _XBOX_ONE || defined __ORBIS__ || defined(_WINDOWS64)
|
||||
app.SetGameHostOption(eGameHostOption_DisableSaving, m_MoreOptionsParams.bDisableSaving?1:0);
|
||||
StorageManager.SetSaveDisabled(m_MoreOptionsParams.bDisableSaving);
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@ UIScene_PauseMenu::UIScene_PauseMenu(int iPad, void *initData, UILayer *parentLa
|
||||
#else
|
||||
m_buttons[BUTTON_PAUSE_ACHIEVEMENTS].init(app.GetString(IDS_ACHIEVEMENTS),BUTTON_PAUSE_ACHIEVEMENTS);
|
||||
#endif
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
m_bTrialTexturePack = false;
|
||||
if(!Minecraft::GetInstance()->skins->isUsingDefaultSkin())
|
||||
{
|
||||
@@ -149,7 +149,7 @@ void UIScene_PauseMenu::tick()
|
||||
#endif
|
||||
|
||||
|
||||
#if defined _XBOX_ONE || defined __ORBIS__
|
||||
#if defined _XBOX_ONE || defined __ORBIS__ || defined _WINDOWS64
|
||||
if(!m_bTrialTexturePack && m_savesDisabled != (app.GetGameHostOption(eGameHostOption_DisableSaving) != 0) && ProfileManager.GetPrimaryPad() == m_iPad )
|
||||
{
|
||||
// We show the save button if saves are disabled as this lets us show a prompt to enable them (via purchasing a texture pack)
|
||||
@@ -239,7 +239,7 @@ void UIScene_PauseMenu::updateComponents()
|
||||
|
||||
void UIScene_PauseMenu::handlePreReload()
|
||||
{
|
||||
#if defined _XBOX_ONE || defined __ORBIS__
|
||||
#if defined _XBOX_ONE || defined __ORBIS__ || defined _WINDOWS64
|
||||
if(ProfileManager.GetPrimaryPad() == m_iPad)
|
||||
{
|
||||
// 4J-TomK - check for all possible labels being fed into BUTTON_PAUSE_SAVEGAME (Bug 163775)
|
||||
@@ -257,7 +257,7 @@ void UIScene_PauseMenu::handleReload()
|
||||
updateTooltips();
|
||||
updateControlsVisibility();
|
||||
|
||||
#if defined _XBOX_ONE || defined __ORBIS__
|
||||
#if defined _XBOX_ONE || defined __ORBIS__ || defined _WINDOWS64
|
||||
if(ProfileManager.GetPrimaryPad() == m_iPad)
|
||||
{
|
||||
// We show the save button if saves are disabled as this lets us show a prompt to enable them (via purchasing a texture pack)
|
||||
@@ -659,7 +659,7 @@ void UIScene_PauseMenu::handlePress(F64 controlId, F64 childId)
|
||||
playTime = (int)pMinecraft->localplayers[m_iPad]->getSessionTimer();
|
||||
}
|
||||
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
uiIDA[0]=IDS_CONFIRM_CANCEL;
|
||||
uiIDA[1]=IDS_CONFIRM_OK;
|
||||
|
||||
@@ -893,7 +893,7 @@ void UIScene_PauseMenu::PerformActionSaveGame()
|
||||
else
|
||||
#endif
|
||||
{
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
if(!m_savesDisabled)
|
||||
{
|
||||
UINT uiIDA[2];
|
||||
@@ -913,7 +913,7 @@ void UIScene_PauseMenu::PerformActionSaveGame()
|
||||
}
|
||||
else
|
||||
{
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
UINT uiIDA[2];
|
||||
uiIDA[0]=IDS_CONFIRM_CANCEL;
|
||||
uiIDA[1]=IDS_CONFIRM_OK;
|
||||
@@ -1402,7 +1402,7 @@ int UIScene_PauseMenu::ExitGameSaveDialogReturned(void *pParam,int iPad,C4JStora
|
||||
}
|
||||
else
|
||||
{
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
StorageManager.SetSaveDisabled(false);
|
||||
#endif
|
||||
MinecraftServer::getInstance()->setSaveOnExit( true );
|
||||
|
||||
@@ -68,7 +68,7 @@ UIScene_SettingsOptionsMenu::UIScene_SettingsOptionsMenu(int iPad, void *initDat
|
||||
m_sliderAutosave.setAllPossibleLabels(9,autosaveLabels);
|
||||
m_sliderAutosave.init(autosaveLabels[ucValue],eControl_Autosave,0,8,ucValue);
|
||||
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
removeControl(&m_sliderAutosave,true);
|
||||
#endif
|
||||
|
||||
@@ -291,7 +291,7 @@ void UIScene_SettingsOptionsMenu::handleReload()
|
||||
m_sliderAutosave.setAllPossibleLabels(9,autosaveLabels);
|
||||
m_sliderAutosave.init(autosaveLabels[ucValue],eControl_Autosave,0,8,ucValue);
|
||||
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
removeControl(&m_sliderAutosave,true);
|
||||
#endif
|
||||
|
||||
|
||||
@@ -998,7 +998,7 @@ void MinecraftServer::stopServer(bool didInit)
|
||||
if((m_bPrimaryPlayerSignedOut==false) && ProfileManager.IsSignedIn(ProfileManager.GetPrimaryPad()))
|
||||
#endif
|
||||
{
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
// Always save on exit! Except if saves are disabled.
|
||||
if(!saveOnExitAnswered()) m_saveOnExit = true;
|
||||
#endif
|
||||
@@ -1354,7 +1354,7 @@ void MinecraftServer::run(__int64 seed, void *lpParameter)
|
||||
switch(eAction)
|
||||
{
|
||||
case eXuiServerAction_AutoSaveGame:
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
{
|
||||
PIXBeginNamedEvent(0,"Autosave");
|
||||
|
||||
|
||||
@@ -983,7 +983,7 @@ void ServerLevel::save(bool force, ProgressListener *progressListener, bool bAut
|
||||
|
||||
if (progressListener != NULL) progressListener->progressStage(IDS_PROGRESS_SAVING_CHUNKS);
|
||||
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__)
|
||||
#if defined(_XBOX_ONE) || defined(__ORBIS__) || defined(_WINDOWS64)
|
||||
// Our autosave is a minimal save. All the chunks are saves by the constant save process
|
||||
if(bAutosave)
|
||||
{
|
||||
|
||||
@@ -5753,9 +5753,13 @@ Press{*CONTROLLER_VK_B*} if you already know about Fireworks.</value>
|
||||
|
||||
<data name="IDS_CORRUPT_OR_DAMAGED_SAVE_TEXT">
|
||||
<value>This save is corrupt or damaged. Would you like to delete it?</value>
|
||||
</data>
|
||||
</data>
|
||||
|
||||
<data name="IDS_CONFIRM_EXIT_GAME_CONFIRM_DISCONNECT_SAVE">
|
||||
<data name="IDS_CONFIRM_EXIT_GAME_CONFIRM_DISCONNECT">
|
||||
<value>Are you sure you want to exit to the main menu?</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_CONFIRM_EXIT_GAME_CONFIRM_DISCONNECT_SAVE">
|
||||
<value>Are you sure you want to exit to the main menu and disconnect all players from the game? Any unsaved progress will be lost.</value>
|
||||
</data>
|
||||
|
||||
|
||||
@@ -273,11 +273,20 @@ If you try to save while using the trial version, you will be given the option t
|
||||
<data name="IDS_GAMEOPTION_WORLD_SIZE">
|
||||
<value>Select a world size to vary the amount of the world that you can explore.</value>
|
||||
</data>
|
||||
<data name="IDS_DISABLE_SAVING">
|
||||
<data name="IDS_TITLE_ENABLE_AUTOSAVE">
|
||||
<value>Enable autosave</value>
|
||||
</data>
|
||||
<data name="IDS_CONFIRM_ENABLE_AUTOSAVE">
|
||||
<value>Would you like to enable the constant, automatic saving of the world?</value>
|
||||
</data>
|
||||
<data name="IDS_DISABLE_AUTOSAVE">
|
||||
<value>Disable Autosave</value>
|
||||
</data>
|
||||
<data name="IDS_TITLE_DISABLE_AUTOSAVE">
|
||||
<value>Disable autosave</value>
|
||||
</data>
|
||||
<data name="IDS_GAMEOPTION_DISABLE_SAVING">
|
||||
<value>Turn off the constant, automatic saving of the world. If you later choose to save it could take a long time.</value>
|
||||
<data name="IDS_CONFIRM_DISABLE_AUTOSAVE">
|
||||
<value>Are you sure you want to disable the constant, automatic saving of the world?</value>
|
||||
</data>
|
||||
|
||||
<data name="IDS_ERROR_NETWORK">
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user