Files
ft/CodexOutput/upserver/KVGameplayLoopTests/diff-QuitAct.cs.txt

28 lines
1.1 KiB
Plaintext

--- Client/Assets/Scripts/Stages/QuitAct.cs (reviewed baseline)
+++ Client/Assets/Scripts/Stages/QuitAct.cs
@@ -34,6 +34,9 @@
public override async Task<bool> StartAsync()
{
+#if UNITY_EDITOR && !SERVICE_HOST
+ if(game.PlayerDataStorage.PlayerKVGameplayLoop.Enabled) _=game.PlayerDataStorage.PlayerKVGameplayLoop.CloseAsync();
+#endif
if(userService is PlayFabUserService closingKVUser) _=closingKVUser.CloseKVForValidationAsync();
// Invalidate identity before any await can allow old login/HTTP callbacks to resume.
if (QuitStage.Logout)
@@ -51,6 +54,10 @@
catch (System.Exception ex) { Debug.LogException(ex); }
// Observation is bounded; the process registry still owns any unfinished close.
+#if UNITY_EDITOR && !SERVICE_HOST
+ if(game.PlayerDataStorage.PlayerKVGameplayLoop.Enabled) await PlayerDataStorage.PlayerKVShutdownRegistry.Process.ObserveAsync(5000);
+ else
+#endif
if(userService is PlayFabUserService kvUser) await kvUser.ObserveKVQuitAsync();
adsService.Release();