diff --git a/Source/GameBaseFramework/Private/GameFramework/SaveGame/GBFSaveGame.cpp b/Source/GameBaseFramework/Private/GameFramework/SaveGame/GBFSaveGame.cpp index b10f1dbe..d9f80941 100644 --- a/Source/GameBaseFramework/Private/GameFramework/SaveGame/GBFSaveGame.cpp +++ b/Source/GameBaseFramework/Private/GameFramework/SaveGame/GBFSaveGame.cpp @@ -108,7 +108,8 @@ void UGBFSaveGame::RegisterSavable( TScriptInterface< IGBFSaveGameSystemSavableI } else { - SavablesData.Emplace_GetRef( savable, FSoftClassPath( savable.GetObject()->GetClass() ), TArray< uint8 >() ); + auto & savable_data = SavablesData.Emplace_GetRef( savable, FSoftClassPath( savable.GetObject()->GetClass() ), TArray< uint8 >() ); + TryLoadSavable( savable_data ); } } diff --git a/Source/GameBaseFramework/Private/GameFramework/SaveGame/GBFSaveGameSubsystem.cpp b/Source/GameBaseFramework/Private/GameFramework/SaveGame/GBFSaveGameSubsystem.cpp index c1eeebe1..2db7546f 100644 --- a/Source/GameBaseFramework/Private/GameFramework/SaveGame/GBFSaveGameSubsystem.cpp +++ b/Source/GameBaseFramework/Private/GameFramework/SaveGame/GBFSaveGameSubsystem.cpp @@ -184,7 +184,7 @@ void UGBFSaveGameSubsystem::RegisterSavable( const TScriptInterface< IGBFSaveGam } else { - PendingSavables.Add( savable ); + PendingSavables.AddUnique( savable ); } }