From aee942468ebb681e2fd153ffe2333d3ece597cb0 Mon Sep 17 00:00:00 2001 From: Ottermandias Date: Wed, 15 Nov 2023 18:34:24 +0100 Subject: [PATCH] Only allow redrawing furniture inside. --- Penumbra/Interop/Services/RedrawService.cs | 26 ++-------------------- 1 file changed, 2 insertions(+), 24 deletions(-) diff --git a/Penumbra/Interop/Services/RedrawService.cs b/Penumbra/Interop/Services/RedrawService.cs index ddabacd0..49d688af 100644 --- a/Penumbra/Interop/Services/RedrawService.cs +++ b/Penumbra/Interop/Services/RedrawService.cs @@ -235,12 +235,6 @@ public sealed unsafe partial class RedrawService : IDisposable for (var i = 0; i < _queue.Count; ++i) { var idx = _queue[i]; - if (idx == FurnitureIdx) - { - EnableFurniture(); - continue; - } - if (idx == ~FurnitureIdx) { DisableFurniture(); @@ -380,6 +374,8 @@ public sealed unsafe partial class RedrawService : IDisposable var currentTerritory = housingManager->CurrentTerritory; if (currentTerritory == null) return; + if (!housingManager->IsInside()) + return; foreach (var f in currentTerritory->FurnitureSpan.PointerEnumerator()) { @@ -389,22 +385,4 @@ public sealed unsafe partial class RedrawService : IDisposable gameObject->DisableDraw(); } } - - private void EnableFurniture() - { - var housingManager = HousingManager.Instance(); - if (housingManager == null) - return; - var currentTerritory = housingManager->CurrentTerritory; - if (currentTerritory == null) - return; - - foreach (var f in currentTerritory->FurnitureSpan.PointerEnumerator()) - { - var gameObject = f->Index >= 0 ? currentTerritory->HousingObjectManager.ObjectsSpan[f->Index].Value : null; - if (gameObject == null) - continue; - gameObject->EnableDraw(); - } - } }