potato battery visualizer exception fix (#12862)
This commit is contained in:
@@ -15,17 +15,21 @@ public sealed class PowerCellSystem : SharedPowerCellSystem
|
|||||||
|
|
||||||
private void OnPowerCellVisualsChange(EntityUid uid, PowerCellVisualsComponent component, ref AppearanceChangeEvent args)
|
private void OnPowerCellVisualsChange(EntityUid uid, PowerCellVisualsComponent component, ref AppearanceChangeEvent args)
|
||||||
{
|
{
|
||||||
if (args.Sprite == null) return;
|
if (args.Sprite == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (!args.Sprite.TryGetLayer((int) PowerCellVisualLayers.Unshaded, out var unshadedLayer))
|
||||||
|
return;
|
||||||
|
|
||||||
if (args.Component.TryGetData(PowerCellVisuals.ChargeLevel, out byte level))
|
if (args.Component.TryGetData(PowerCellVisuals.ChargeLevel, out byte level))
|
||||||
{
|
{
|
||||||
if (level == 0)
|
if (level == 0)
|
||||||
{
|
{
|
||||||
args.Sprite.LayerSetVisible(PowerCellVisualLayers.Unshaded, false);
|
unshadedLayer.Visible = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
args.Sprite.LayerSetVisible(PowerCellVisualLayers.Unshaded, true);
|
unshadedLayer.Visible = true;
|
||||||
args.Sprite.LayerSetState(PowerCellVisualLayers.Unshaded, $"o{level}");
|
args.Sprite.LayerSetState(PowerCellVisualLayers.Unshaded, $"o{level}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user