diff --git a/Aetheria.State.Verify/Program.cs b/Aetheria.State.Verify/Program.cs index 9f21de9a0..5a0191415 100644 --- a/Aetheria.State.Verify/Program.cs +++ b/Aetheria.State.Verify/Program.cs @@ -4160,7 +4160,10 @@ static void RequireRuntimeInputScreenUsesEveSurface(string root) "AetheriaRuntimeEveCommandKind.SetActionBarEnabled", "AetheriaClient", ".OpenAsync(", - "PlayerSettingsAsync()", + ".Aetheria()", + ".Settings", + ".Player", + ".Latest()", "action.ApplyBindingOverride", "new InputAction(\"Aetheria Input Capture\")", "AetheriaRuntimeInputSettingsSurfaceBuilder.IsSupportedCapturePath(", @@ -4194,6 +4197,8 @@ static void RequireRuntimeInputScreenUsesEveSurface(string root) "new EveUiToolkitSurfaceLowerer()", "host.AddComponent", "AetheriaRuntimeStateCommitLog.QueuePlayerSettings", + "PlayerSettingsAsync()", + "VerseHostSettingsAsync()", "ActionGameManager.CommitRuntimeInputBindingOverride", "ActionGameManager.CommitRuntimeActionBarInput", "BeginCapture(request.Payload)", @@ -4487,7 +4492,9 @@ static void RequireSectorMapZoneDetailsUseEveSurface(string root) ".Details", ".Zone(zoneIndex)", "OpenRuntimeCatalog()", - "PlayerSettingsAsync()", + ".Settings", + ".Player", + ".Latest()", "AetheriaClient", ".OpenLocalAsync(", "AetheriaRuntimeZoneDetailsSurfaceCommands.TryRead(request, out var command)", @@ -9858,7 +9865,9 @@ static void RequireMainMenuVerseHostProjection(string root) var requiredMainMenuSymbols = new[] { "LatestVerseHostSettings(AetheriaRuntimeStateBootReport stateBoot)", - "VerseHostSettingsAsync()", + ".Settings", + ".VerseHost", + ".Latest()", "AetheriaRuntimeMainMenuSurfaceBuilder.ProjectRoot(", "AetheriaRuntimeMainMenuSurfaceBuilder.BuildRoot(" }; @@ -11412,7 +11421,8 @@ static void RequireUnityObserverDoesNotTickLocalSimulation(string root) !mapRenderer.Contains(".Viewports", StringComparison.Ordinal) || !mapRenderer.Contains(".Objects(viewport)", StringComparison.Ordinal) || !mapRenderer.Contains(".RenderSplats(viewport)", StringComparison.Ordinal) || - !mapRenderer.Contains("PlayerSettingsAsync()", StringComparison.Ordinal) || + !mapRenderer.Contains(".Settings", StringComparison.Ordinal) || + !mapRenderer.Contains(".Player", StringComparison.Ordinal) || !sectorRenderer.Contains("private AetheriaClient _client", StringComparison.Ordinal) || !sectorRenderer.Contains(".Aetheria()", StringComparison.Ordinal) || !sectorRenderer.Contains(".SectorMap", StringComparison.Ordinal) || @@ -11420,7 +11430,8 @@ static void RequireUnityObserverDoesNotTickLocalSimulation(string root) !sectorRenderer.Contains(".Details", StringComparison.Ordinal) || !sectorRenderer.Contains(".Zone(zoneIndex)", StringComparison.Ordinal) || !sectorRenderer.Contains("OpenRuntimeCatalog()", StringComparison.Ordinal) || - !sectorRenderer.Contains("PlayerSettingsAsync()", StringComparison.Ordinal) || + !sectorRenderer.Contains(".Settings", StringComparison.Ordinal) || + !sectorRenderer.Contains(".Player", StringComparison.Ordinal) || !sectorMap.Contains("private AetheriaClient _client", StringComparison.Ordinal) || !sectorMap.Contains(".Aetheria()", StringComparison.Ordinal) || !sectorMap.Contains(".SectorMap", StringComparison.Ordinal) || @@ -12871,7 +12882,10 @@ static void RequireRuntimeStateReaderOwnsUnityStateAcquisition(string root) "public static AetheriaClient ResolveClient(string stateFilePath, string runtimeId = \"\")", "public static AetheriaClient CurrentClientForStateFile(string stateFilePath)", "AetheriaClient", - "PlayerSettingsAsync()", + ".Aetheria()", + ".Settings", + ".Player", + ".Latest()", "OpenAsync(", "pullOnOpen: true", "ApplyPlayerSettings(settings, stored)" diff --git a/Assets/Scripts/Gameplay/AetheriaUnityRuntimeClientProvider.cs b/Assets/Scripts/Gameplay/AetheriaUnityRuntimeClientProvider.cs index 9936e56c0..ce8462de7 100644 --- a/Assets/Scripts/Gameplay/AetheriaUnityRuntimeClientProvider.cs +++ b/Assets/Scripts/Gameplay/AetheriaUnityRuntimeClientProvider.cs @@ -64,9 +64,10 @@ public static class AetheriaUnityRuntimeClientProvider try { var stored = ResolveClient(AetheriaUnityRuntimePaths.RuntimeStateFilePath) - .PlayerSettingsAsync() - .GetAwaiter() - .GetResult(); + .Aetheria() + .Settings + .Player + .Latest(); if (stored == null) return settings; @@ -99,7 +100,7 @@ public static class AetheriaUnityRuntimeClientProvider private static void ApplyPlayerSettings( RuntimePlayerSettings settings, - AetheriaRuntimePlayerSettingsSnapshot stored) + AetheriaRuntimePlayerSettingsDocument stored) { if (!string.IsNullOrWhiteSpace(stored.PlayerName)) settings.Name = stored.PlayerName; diff --git a/Assets/Scripts/UI/HUD/SchematicDisplay.cs b/Assets/Scripts/UI/HUD/SchematicDisplay.cs index a7154d020..31388e099 100644 --- a/Assets/Scripts/UI/HUD/SchematicDisplay.cs +++ b/Assets/Scripts/UI/HUD/SchematicDisplay.cs @@ -72,7 +72,7 @@ public class SchematicDisplay : MonoBehaviour private AetheriaClient _client; private string _clientStatePath = ""; private AetheriaRuntimeCatalogSnapshot _catalog; - private AetheriaRuntimePlayerSettingsSnapshot _playerSettings; + private AetheriaRuntimePlayerSettingsDocument _playerSettings; private AetheriaRuntimeDaemonRenderSettings? _renderSettings; private AetheriaRuntimeCurrentEntityDocument _currentEntityDocument; private float _currentEntityDocumentReadTime = float.NegativeInfinity; @@ -339,7 +339,7 @@ public class SchematicDisplay : MonoBehaviour return _catalog; } - private AetheriaRuntimePlayerSettingsSnapshot ResolvePlayerSettings() + private AetheriaRuntimePlayerSettingsDocument ResolvePlayerSettings() { if (_playerSettings != null) return _playerSettings; @@ -347,9 +347,10 @@ public class SchematicDisplay : MonoBehaviour try { _playerSettings = ResolveClient() - .PlayerSettingsAsync() - .GetAwaiter() - .GetResult(); + .Aetheria() + .Settings + .Player + .Latest(); } catch (Exception ex) { diff --git a/Assets/Scripts/UI/InputScreen/InputDisplayLayout.cs b/Assets/Scripts/UI/InputScreen/InputDisplayLayout.cs index 42a210f37..8283039e8 100644 --- a/Assets/Scripts/UI/InputScreen/InputDisplayLayout.cs +++ b/Assets/Scripts/UI/InputScreen/InputDisplayLayout.cs @@ -16,7 +16,7 @@ public class InputDisplayLayout : MonoBehaviour private AetheriaInput _ownedInput; private AetheriaClient _client; private string _clientStatePath = ""; - private AetheriaRuntimePlayerSettingsSnapshot _playerSettings; + private AetheriaRuntimePlayerSettingsDocument _playerSettings; private InputAction _captureAction; private InputActionAsset _input; private string _captureActionName = ""; @@ -399,7 +399,7 @@ public class InputDisplayLayout : MonoBehaviour _playerSettings = null; } - private AetheriaRuntimePlayerSettingsSnapshot ResolvePlayerSettings() + private AetheriaRuntimePlayerSettingsDocument ResolvePlayerSettings() { if (_playerSettings != null) return _playerSettings; @@ -407,9 +407,10 @@ public class InputDisplayLayout : MonoBehaviour try { _playerSettings = ResolveClient() - .PlayerSettingsAsync() - .GetAwaiter() - .GetResult(); + .Aetheria() + .Settings + .Player + .Latest(); } catch (Exception ex) { diff --git a/Assets/Scripts/UI/MainMenu.cs b/Assets/Scripts/UI/MainMenu.cs index 042115e30..14cae9e43 100644 --- a/Assets/Scripts/UI/MainMenu.cs +++ b/Assets/Scripts/UI/MainMenu.cs @@ -176,7 +176,7 @@ public class MainMenu : MonoBehaviour } } - private AetheriaRuntimePlayerSettingsSnapshot LatestPlayerSettings(AetheriaRuntimeStateBootReport stateBoot) + private AetheriaRuntimePlayerSettingsDocument LatestPlayerSettings(AetheriaRuntimeStateBootReport stateBoot) { if (!stateBoot.SupportsLocalStateFileRead || !stateBoot.StateFileExists) return null; @@ -184,9 +184,10 @@ public class MainMenu : MonoBehaviour try { return ResolveClient(stateBoot) - .PlayerSettingsAsync() - .GetAwaiter() - .GetResult(); + .Aetheria() + .Settings + .Player + .Latest(); } catch (Exception ex) { @@ -195,7 +196,7 @@ public class MainMenu : MonoBehaviour } } - private AetheriaRuntimeVerseHostSettingsSnapshot LatestVerseHostSettings(AetheriaRuntimeStateBootReport stateBoot) + private AetheriaRuntimeVerseHostSettingsDocument LatestVerseHostSettings(AetheriaRuntimeStateBootReport stateBoot) { if (!stateBoot.SupportsLocalStateFileRead || !stateBoot.StateFileExists) return null; @@ -203,9 +204,10 @@ public class MainMenu : MonoBehaviour try { return ResolveClient(stateBoot) - .VerseHostSettingsAsync() - .GetAwaiter() - .GetResult(); + .Aetheria() + .Settings + .VerseHost + .Latest(); } catch (Exception ex) { diff --git a/Assets/Scripts/UI/Menu/InventoryMenu.cs b/Assets/Scripts/UI/Menu/InventoryMenu.cs index d36bfdec5..518b1eaa4 100644 --- a/Assets/Scripts/UI/Menu/InventoryMenu.cs +++ b/Assets/Scripts/UI/Menu/InventoryMenu.cs @@ -34,7 +34,7 @@ public class InventoryMenu : MonoBehaviour private AetheriaClient _client; private string _clientStatePath = ""; private AetheriaRuntimeCatalogSnapshot _catalog; - private AetheriaRuntimePlayerSettingsSnapshot _playerSettings; + private AetheriaRuntimePlayerSettingsDocument _playerSettings; private AetheriaUnityActionBarPresentation _actionBarPresentation; private AetheriaUnityObservedFacadeIndex _observedFacadeIndex; private readonly AetheriaEveUnitySurfaceChrome _shipSettingsSurfaceChrome = PanelChrome(360f, 420f); @@ -1048,7 +1048,7 @@ public class InventoryMenu : MonoBehaviour return _catalog; } - private AetheriaRuntimePlayerSettingsSnapshot ResolvePlayerSettings() + private AetheriaRuntimePlayerSettingsDocument ResolvePlayerSettings() { if (_playerSettings != null) return _playerSettings; @@ -1056,9 +1056,10 @@ public class InventoryMenu : MonoBehaviour try { _playerSettings = ResolveClient() - .PlayerSettingsAsync() - .GetAwaiter() - .GetResult(); + .Aetheria() + .Settings + .Player + .Latest(); } catch (Exception ex) { diff --git a/Assets/Scripts/UI/Menu/InventoryPanel.cs b/Assets/Scripts/UI/Menu/InventoryPanel.cs index 51ffba1f3..abba097b8 100644 --- a/Assets/Scripts/UI/Menu/InventoryPanel.cs +++ b/Assets/Scripts/UI/Menu/InventoryPanel.cs @@ -104,7 +104,7 @@ public class InventoryPanel : MonoBehaviour, IPointerClickHandler private AetheriaClient _client; private string _clientStatePath = ""; private AetheriaRuntimeCatalogSnapshot _catalog; - private AetheriaRuntimePlayerSettingsSnapshot _playerSettings; + private AetheriaRuntimePlayerSettingsDocument _playerSettings; private AetheriaRuntimeStationRefitEntityOption[] _dropdownStationRefitEntities = Array.Empty(); private AetheriaRuntimeStationLoadoutRestoreOption[] _dropdownStationRefitLoadouts = @@ -1540,7 +1540,7 @@ private void Update() return _catalog; } - private AetheriaRuntimePlayerSettingsSnapshot ResolvePlayerSettings() + private AetheriaRuntimePlayerSettingsDocument ResolvePlayerSettings() { if (_playerSettings != null) return _playerSettings; @@ -1548,9 +1548,10 @@ private void Update() try { _playerSettings = ResolveClient() - .PlayerSettingsAsync() - .GetAwaiter() - .GetResult(); + .Aetheria() + .Settings + .Player + .Latest(); } catch (Exception ex) { diff --git a/Assets/Scripts/UI/Menu/MapRenderer.cs b/Assets/Scripts/UI/Menu/MapRenderer.cs index 69044399f..59ab0bb6e 100644 --- a/Assets/Scripts/UI/Menu/MapRenderer.cs +++ b/Assets/Scripts/UI/Menu/MapRenderer.cs @@ -326,9 +326,10 @@ public class MapRenderer : MonoBehaviour try { return ResolveClient() - .PlayerSettingsAsync() - .GetAwaiter() - .GetResult() + .Aetheria() + .Settings + .Player + .Latest() ?.ShowAsteroidsInMinimap ?? false; } catch (Exception ex) diff --git a/Assets/Scripts/UI/Menu/SectorRenderer.cs b/Assets/Scripts/UI/Menu/SectorRenderer.cs index d9e5aaa1b..60476e4da 100644 --- a/Assets/Scripts/UI/Menu/SectorRenderer.cs +++ b/Assets/Scripts/UI/Menu/SectorRenderer.cs @@ -49,7 +49,7 @@ public class SectorRenderer : MonoBehaviour, IBeginDragHandler, IDragHandler, IS private AetheriaClient _client; private string _clientStatePath = ""; private AetheriaRuntimeCatalogSnapshot _catalog; - private AetheriaRuntimePlayerSettingsSnapshot _playerSettings; + private AetheriaRuntimePlayerSettingsDocument _playerSettings; private readonly AetheriaEveUnitySurfaceChrome _zoneDetailsSurfaceChrome = new AetheriaEveUnitySurfaceChrome { RootAlignItems = Align.FlexEnd, @@ -237,7 +237,7 @@ public class SectorRenderer : MonoBehaviour, IBeginDragHandler, IDragHandler, IS return _catalog; } - private AetheriaRuntimePlayerSettingsSnapshot ResolvePlayerSettings() + private AetheriaRuntimePlayerSettingsDocument ResolvePlayerSettings() { if (_playerSettings != null) return _playerSettings; @@ -245,9 +245,10 @@ public class SectorRenderer : MonoBehaviour, IBeginDragHandler, IDragHandler, IS try { _playerSettings = ResolveClient() - .PlayerSettingsAsync() - .GetAwaiter() - .GetResult(); + .Aetheria() + .Settings + .Player + .Latest(); } catch (Exception ex) { diff --git a/Assets/Scripts/UI/Menu/TradeMenu.cs b/Assets/Scripts/UI/Menu/TradeMenu.cs index 826f2b2b0..7278658e1 100644 --- a/Assets/Scripts/UI/Menu/TradeMenu.cs +++ b/Assets/Scripts/UI/Menu/TradeMenu.cs @@ -39,7 +39,7 @@ public class TradeMenu : MonoBehaviour private AetheriaClient _client; private string _clientStatePath = ""; private AetheriaRuntimeCatalogSnapshot _catalog; - private AetheriaRuntimePlayerSettingsSnapshot _playerSettings; + private AetheriaRuntimePlayerSettingsDocument _playerSettings; private readonly AetheriaEveUnitySurfaceChrome _cargoSelectorSurfaceChrome = PanelChrome(360f, 420f, Align.FlexEnd); private readonly AetheriaEveUnitySurfaceChrome _filterSurfaceChrome = PanelChrome(420f, 520f, Align.FlexStart); private readonly AetheriaEveUnitySurfaceChrome _rowActionSurfaceChrome = PanelChrome(320f, 360f, Align.FlexStart); @@ -660,7 +660,7 @@ public class TradeMenu : MonoBehaviour return _catalog; } - private AetheriaRuntimePlayerSettingsSnapshot ResolvePlayerSettings() + private AetheriaRuntimePlayerSettingsDocument ResolvePlayerSettings() { if (_playerSettings != null) return _playerSettings; @@ -668,9 +668,10 @@ public class TradeMenu : MonoBehaviour try { _playerSettings = ResolveClient() - .PlayerSettingsAsync() - .GetAwaiter() - .GetResult(); + .Aetheria() + .Settings + .Player + .Latest(); } catch (Exception ex) { diff --git a/Assets/Scripts/Zone Display/VolumeCloudRenderer.cs b/Assets/Scripts/Zone Display/VolumeCloudRenderer.cs index 0e1dddd06..dec5b64a7 100644 --- a/Assets/Scripts/Zone Display/VolumeCloudRenderer.cs +++ b/Assets/Scripts/Zone Display/VolumeCloudRenderer.cs @@ -56,7 +56,7 @@ public class VolumeCloudRenderer : EffectBase private bool firstFrame = true; private AetheriaClient _client; private string _clientStatePath = ""; - private AetheriaRuntimePlayerSettingsSnapshot _playerSettings; + private AetheriaRuntimePlayerSettingsDocument _playerSettings; [SerializeField] private Shader cloudShader; @@ -95,7 +95,7 @@ public class VolumeCloudRenderer : EffectBase : fallback; } - private AetheriaRuntimePlayerSettingsSnapshot ResolvePlayerSettings() + private AetheriaRuntimePlayerSettingsDocument ResolvePlayerSettings() { if (_playerSettings != null) return _playerSettings; @@ -103,9 +103,10 @@ public class VolumeCloudRenderer : EffectBase try { _playerSettings = ResolveClient() - .PlayerSettingsAsync() - .GetAwaiter() - .GetResult(); + .Aetheria() + .Settings + .Player + .Latest(); } catch (Exception ex) { diff --git a/Packages/org.gamecult.aetheria.state/Runtime/AetheriaRuntimeMainMenuSurfaceBuilder.cs b/Packages/org.gamecult.aetheria.state/Runtime/AetheriaRuntimeMainMenuSurfaceBuilder.cs index e7e6e3bf6..d758f7bab 100644 --- a/Packages/org.gamecult.aetheria.state/Runtime/AetheriaRuntimeMainMenuSurfaceBuilder.cs +++ b/Packages/org.gamecult.aetheria.state/Runtime/AetheriaRuntimeMainMenuSurfaceBuilder.cs @@ -92,7 +92,7 @@ namespace GameCult.Aetheria.State.Verse { public static AetheriaRuntimeMainMenuSurfaceState ProjectRoot( AetheriaRuntimeStateBootReport stateBoot, - AetheriaRuntimePlayerSettingsSnapshot playerSettings, + AetheriaRuntimePlayerSettingsDocument playerSettings, bool canOpenRuntimeInputScreen, bool inGame, string updatedAtUtc) @@ -109,8 +109,8 @@ namespace GameCult.Aetheria.State.Verse false, "", -1, - playerSettings?.BindingOverrides?.Count ?? 0, - playerSettings?.ActionBarInputs?.Count ?? 0, + playerSettings?.BindingOverrides?.Length ?? 0, + playerSettings?.ActionBarInputs?.Length ?? 0, canOpenRuntimeInputScreen, updatedAtUtc); } @@ -118,8 +118,8 @@ namespace GameCult.Aetheria.State.Verse public static AetheriaRuntimeMainMenuSurfaceState ProjectRoot( AetheriaRuntimeStateBootReport stateBoot, AetheriaRuntimeDaemonFrameDocument daemonFrame, - AetheriaRuntimeVerseHostSettingsSnapshot verseHost, - AetheriaRuntimePlayerSettingsSnapshot playerSettings, + AetheriaRuntimeVerseHostSettingsDocument verseHost, + AetheriaRuntimePlayerSettingsDocument playerSettings, bool canOpenRuntimeInputScreen, bool inGame, string updatedAtUtc) @@ -136,8 +136,8 @@ namespace GameCult.Aetheria.State.Verse daemonFrame != null, daemonFrame?.Run?.RunId ?? "", daemonFrame?.FrameId ?? -1, - playerSettings?.BindingOverrides?.Count ?? 0, - playerSettings?.ActionBarInputs?.Count ?? 0, + playerSettings?.BindingOverrides?.Length ?? 0, + playerSettings?.ActionBarInputs?.Length ?? 0, canOpenRuntimeInputScreen, updatedAtUtc); } @@ -145,8 +145,8 @@ namespace GameCult.Aetheria.State.Verse public static AetheriaRuntimeMainMenuSurfaceState ProjectRoot( AetheriaRuntimeStateBootReport stateBoot, AetheriaRuntimeSectorMapDocument sectorMap, - AetheriaRuntimeVerseHostSettingsSnapshot verseHost, - AetheriaRuntimePlayerSettingsSnapshot playerSettings, + AetheriaRuntimeVerseHostSettingsDocument verseHost, + AetheriaRuntimePlayerSettingsDocument playerSettings, bool canOpenRuntimeInputScreen, bool inGame, string updatedAtUtc) @@ -163,14 +163,14 @@ namespace GameCult.Aetheria.State.Verse sectorMap != null, sectorMap?.RunId ?? "", sectorMap?.FrameId ?? -1, - playerSettings?.BindingOverrides?.Count ?? 0, - playerSettings?.ActionBarInputs?.Count ?? 0, + playerSettings?.BindingOverrides?.Length ?? 0, + playerSettings?.ActionBarInputs?.Length ?? 0, canOpenRuntimeInputScreen, updatedAtUtc); } public static AetheriaRuntimePlayerSettingsSurfaceState ProjectPlayerSettings( - AetheriaRuntimePlayerSettingsSnapshot playerSettings, + AetheriaRuntimePlayerSettingsDocument playerSettings, string updatedAtUtc) { return new AetheriaRuntimePlayerSettingsSurfaceState( @@ -186,7 +186,7 @@ namespace GameCult.Aetheria.State.Verse public static AetheriaRuntimeClientTargetSurfaceState ProjectVerseSettings( AetheriaRuntimeStateBootReport stateBoot, - AetheriaRuntimeVerseHostSettingsSnapshot verseHost, + AetheriaRuntimeVerseHostSettingsDocument verseHost, string updatedAtUtc) { return new AetheriaRuntimeClientTargetSurfaceState(