From 8279bfe9bf1dfaf383472f0c5a601b5a1593ea5e Mon Sep 17 00:00:00 2001 From: Liza Carvelli Date: Sun, 26 Feb 2023 17:43:20 +0100 Subject: [PATCH] Fix config changes to trap/coffer locations not being applied when saving --- Pal.Client/Floors/FrameworkService.cs | 6 ++++++ Pal.Client/Rendering/RenderAdapter.cs | 3 +++ 2 files changed, 9 insertions(+) diff --git a/Pal.Client/Floors/FrameworkService.cs b/Pal.Client/Floors/FrameworkService.cs index 4e6216f..1045591 100644 --- a/Pal.Client/Floors/FrameworkService.cs +++ b/Pal.Client/Floors/FrameworkService.cs @@ -110,6 +110,12 @@ namespace Pal.Client.Floors if (!_territoryState.IsInDeepDungeon() || !_floorService.IsReady(_territoryState.LastTerritory)) return; + if (_renderAdapter.RequireRedraw) + { + recreateLayout = true; + _renderAdapter.RequireRedraw = false; + } + ETerritoryType territoryType = (ETerritoryType)_territoryState.LastTerritory; MemoryTerritory memoryTerritory = _floorService.GetTerritoryIfReady(territoryType)!; if (_configuration.Mode == EMode.Online && memoryTerritory.SyncState == ESyncState.NotAttempted) diff --git a/Pal.Client/Rendering/RenderAdapter.cs b/Pal.Client/Rendering/RenderAdapter.cs index dfc2287..6659f24 100644 --- a/Pal.Client/Rendering/RenderAdapter.cs +++ b/Pal.Client/Rendering/RenderAdapter.cs @@ -27,6 +27,8 @@ namespace Pal.Client.Rendering _implementation = Recreate(null); } + public bool RequireRedraw { get; set; } + private IRenderer Recreate(ERenderer? currentRenderer) { ERenderer targetRenderer = _configuration.Renderer.SelectedRenderer; @@ -46,6 +48,7 @@ namespace Pal.Client.Rendering public void ConfigUpdated() { _implementation = Recreate(_implementation.GetConfigValue()); + RequireRedraw = true; } public void Dispose()