From 54e0747577c7c965d5aa991811b79f46caccf340 Mon Sep 17 00:00:00 2001 From: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com> Date: Sat, 7 Nov 2020 14:44:47 +1100 Subject: [PATCH] Fix crematorium visualizer crash (#2513) * Fix crematorium visualizer crash * Also morgue Co-authored-by: Metal Gear Sloth --- .../Components/Morgue/CrematoriumVisualizer.cs | 14 ++++++++------ .../Components/Morgue/MorgueVisualizer.cs | 14 ++++++++------ 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/Content.Client/GameObjects/Components/Morgue/CrematoriumVisualizer.cs b/Content.Client/GameObjects/Components/Morgue/CrematoriumVisualizer.cs index b7b5b9d8c8..861cb577a0 100644 --- a/Content.Client/GameObjects/Components/Morgue/CrematoriumVisualizer.cs +++ b/Content.Client/GameObjects/Components/Morgue/CrematoriumVisualizer.cs @@ -44,12 +44,14 @@ namespace Content.Client.GameObjects.Components.Storage if (!component.Owner.TryGetComponent(out ISpriteComponent? sprite)) return; - sprite.LayerSetState( - CrematoriumVisualLayers.Base, - component.GetData(MorgueVisuals.Open) - ? _stateOpen - : _stateClosed - ); + if (component.TryGetData(MorgueVisuals.Open, out bool open)) + { + sprite.LayerSetState(CrematoriumVisualLayers.Base, open ? _stateOpen : _stateClosed); + } + else + { + sprite.LayerSetState(CrematoriumVisualLayers.Base, _stateClosed); + } var lightState = ""; if (component.TryGetData(MorgueVisuals.HasContents, out bool hasContents) && hasContents) lightState = _lightContents; diff --git a/Content.Client/GameObjects/Components/Morgue/MorgueVisualizer.cs b/Content.Client/GameObjects/Components/Morgue/MorgueVisualizer.cs index 9f0a10305e..25747c1a36 100644 --- a/Content.Client/GameObjects/Components/Morgue/MorgueVisualizer.cs +++ b/Content.Client/GameObjects/Components/Morgue/MorgueVisualizer.cs @@ -49,12 +49,14 @@ namespace Content.Client.GameObjects.Components.Storage if (!component.Owner.TryGetComponent(out ISpriteComponent? sprite)) return; - sprite.LayerSetState( - MorgueVisualLayers.Base, - component.GetData(MorgueVisuals.Open) - ? _stateOpen - : _stateClosed - ); + if (component.TryGetData(MorgueVisuals.Open, out bool open)) + { + sprite.LayerSetState(MorgueVisualLayers.Base, open ? _stateOpen : _stateClosed); + } + else + { + sprite.LayerSetState(MorgueVisualLayers.Base, _stateClosed); + } var lightState = ""; if (component.TryGetData(MorgueVisuals.HasContents, out bool hasContents) && hasContents) lightState = _lightContents;