Cleanup warnings in IconSmoothSystem (#37337)

Cleanup warnings in IconSmoothSystem
This commit is contained in:
Tayrtahn
2025-05-11 09:40:38 -04:00
committed by GitHub
parent 8bed0f4b62
commit 722137ddb7
2 changed files with 40 additions and 39 deletions

View File

@@ -19,15 +19,15 @@ public sealed partial class IconSmoothSystem
if (!TryComp<SpriteComponent>(uid, out var sprite)) if (!TryComp<SpriteComponent>(uid, out var sprite))
return; return;
sprite.LayerSetOffset(EdgeLayer.South, new Vector2(0, -1f)); _sprite.LayerSetOffset((uid, sprite), EdgeLayer.South, new Vector2(0, -1f));
sprite.LayerSetOffset(EdgeLayer.East, new Vector2(1f, 0f)); _sprite.LayerSetOffset((uid, sprite), EdgeLayer.East, new Vector2(1, 0f));
sprite.LayerSetOffset(EdgeLayer.North, new Vector2(0, 1f)); _sprite.LayerSetOffset((uid, sprite), EdgeLayer.North, new Vector2(0, 1f));
sprite.LayerSetOffset(EdgeLayer.West, new Vector2(-1f, 0f)); _sprite.LayerSetOffset((uid, sprite), EdgeLayer.West, new Vector2(-1, 0f));
sprite.LayerSetVisible(EdgeLayer.South, false); _sprite.LayerSetVisible((uid, sprite), EdgeLayer.South, false);
sprite.LayerSetVisible(EdgeLayer.East, false); _sprite.LayerSetVisible((uid, sprite), EdgeLayer.East, false);
sprite.LayerSetVisible(EdgeLayer.North, false); _sprite.LayerSetVisible((uid, sprite), EdgeLayer.North, false);
sprite.LayerSetVisible(EdgeLayer.West, false); _sprite.LayerSetVisible((uid, sprite), EdgeLayer.West, false);
} }
private void OnEdgeShutdown(EntityUid uid, SmoothEdgeComponent component, ComponentShutdown args) private void OnEdgeShutdown(EntityUid uid, SmoothEdgeComponent component, ComponentShutdown args)
@@ -35,10 +35,10 @@ public sealed partial class IconSmoothSystem
if (!TryComp<SpriteComponent>(uid, out var sprite)) if (!TryComp<SpriteComponent>(uid, out var sprite))
return; return;
sprite.LayerMapRemove(EdgeLayer.South); _sprite.LayerMapRemove((uid, sprite), EdgeLayer.South);
sprite.LayerMapRemove(EdgeLayer.East); _sprite.LayerMapRemove((uid, sprite), EdgeLayer.East);
sprite.LayerMapRemove(EdgeLayer.North); _sprite.LayerMapRemove((uid, sprite), EdgeLayer.North);
sprite.LayerMapRemove(EdgeLayer.West); _sprite.LayerMapRemove((uid, sprite), EdgeLayer.West);
} }
private void CalculateEdge(EntityUid uid, DirectionFlag directions, SpriteComponent? sprite = null, SmoothEdgeComponent? component = null) private void CalculateEdge(EntityUid uid, DirectionFlag directions, SpriteComponent? sprite = null, SmoothEdgeComponent? component = null)
@@ -48,16 +48,16 @@ public sealed partial class IconSmoothSystem
for (var i = 0; i < 4; i++) for (var i = 0; i < 4; i++)
{ {
var dir = (DirectionFlag) Math.Pow(2, i); var dir = (DirectionFlag)Math.Pow(2, i);
var edge = GetEdge(dir); var edge = GetEdge(dir);
if ((dir & directions) != 0x0) if ((dir & directions) != 0x0)
{ {
sprite.LayerSetVisible(edge, false); _sprite.LayerSetVisible((uid, sprite), edge, false);
continue; continue;
} }
sprite.LayerSetVisible(edge, true); _sprite.LayerSetVisible((uid, sprite), edge, true);
} }
} }

View File

@@ -17,6 +17,7 @@ namespace Content.Client.IconSmoothing
public sealed partial class IconSmoothSystem : EntitySystem public sealed partial class IconSmoothSystem : EntitySystem
{ {
[Dependency] private readonly SharedMapSystem _mapSystem = default!; [Dependency] private readonly SharedMapSystem _mapSystem = default!;
[Dependency] private readonly SpriteSystem _sprite = default!;
private readonly Queue<EntityUid> _dirtyEntities = new(); private readonly Queue<EntityUid> _dirtyEntities = new();
private readonly Queue<EntityUid> _anchorChangedEntities = new(); private readonly Queue<EntityUid> _anchorChangedEntities = new();
@@ -57,7 +58,7 @@ namespace Content.Client.IconSmoothing
if (component.Mode != IconSmoothingMode.Corners || !TryComp(uid, out SpriteComponent? sprite)) if (component.Mode != IconSmoothingMode.Corners || !TryComp(uid, out SpriteComponent? sprite))
return; return;
SetCornerLayers(sprite, component); SetCornerLayers((uid, sprite), component);
if (component.Shader != null) if (component.Shader != null)
{ {
@@ -74,25 +75,25 @@ namespace Content.Client.IconSmoothing
return; return;
component.StateBase = newState; component.StateBase = newState;
SetCornerLayers(sprite, component); SetCornerLayers((uid, sprite), component);
} }
private void SetCornerLayers(SpriteComponent sprite, IconSmoothComponent component) private void SetCornerLayers(Entity<SpriteComponent?> sprite, IconSmoothComponent component)
{ {
sprite.LayerMapRemove(CornerLayers.SE); _sprite.LayerMapRemove(sprite, CornerLayers.SE);
sprite.LayerMapRemove(CornerLayers.NE); _sprite.LayerMapRemove(sprite, CornerLayers.NE);
sprite.LayerMapRemove(CornerLayers.NW); _sprite.LayerMapRemove(sprite, CornerLayers.NW);
sprite.LayerMapRemove(CornerLayers.SW); _sprite.LayerMapRemove(sprite, CornerLayers.SW);
var state0 = $"{component.StateBase}0"; var state0 = $"{component.StateBase}0";
sprite.LayerMapSet(CornerLayers.SE, sprite.AddLayerState(state0)); _sprite.LayerMapSet(sprite, CornerLayers.SE, _sprite.AddRsiLayer(sprite, state0));
sprite.LayerSetDirOffset(CornerLayers.SE, DirectionOffset.None); _sprite.LayerSetDirOffset(sprite, CornerLayers.SE, DirectionOffset.None);
sprite.LayerMapSet(CornerLayers.NE, sprite.AddLayerState(state0)); _sprite.LayerMapSet(sprite, CornerLayers.NE, _sprite.AddRsiLayer(sprite, state0));
sprite.LayerSetDirOffset(CornerLayers.NE, DirectionOffset.CounterClockwise); _sprite.LayerSetDirOffset(sprite, CornerLayers.NE, DirectionOffset.CounterClockwise);
sprite.LayerMapSet(CornerLayers.NW, sprite.AddLayerState(state0)); _sprite.LayerMapSet(sprite, CornerLayers.NW, _sprite.AddRsiLayer(sprite, state0));
sprite.LayerSetDirOffset(CornerLayers.NW, DirectionOffset.Flip); _sprite.LayerSetDirOffset(sprite, CornerLayers.NW, DirectionOffset.Flip);
sprite.LayerMapSet(CornerLayers.SW, sprite.AddLayerState(state0)); _sprite.LayerMapSet(sprite, CornerLayers.SW, _sprite.AddRsiLayer(sprite, state0));
sprite.LayerSetDirOffset(CornerLayers.SW, DirectionOffset.Clockwise); _sprite.LayerSetDirOffset(sprite, CornerLayers.SW, DirectionOffset.Clockwise);
} }
private void OnShutdown(EntityUid uid, IconSmoothComponent component, ComponentShutdown args) private void OnShutdown(EntityUid uid, IconSmoothComponent component, ComponentShutdown args)
@@ -298,7 +299,7 @@ namespace Content.Client.IconSmoothing
{ {
if (gridEntity == null) if (gridEntity == null)
{ {
sprite.Comp.LayerSetState(0, $"{smooth.StateBase}0"); _sprite.LayerSetRsiState(sprite.AsNullable(), 0, $"{smooth.StateBase}0");
return; return;
} }
@@ -324,11 +325,11 @@ namespace Content.Client.IconSmoothing
if (matching) if (matching)
{ {
sprite.Comp.LayerSetState(0, $"{smooth.StateBase}1"); _sprite.LayerSetRsiState(sprite.AsNullable(), 0, $"{smooth.StateBase}1");
} }
else else
{ {
sprite.Comp.LayerSetState(0, $"{smooth.StateBase}0"); _sprite.LayerSetRsiState(sprite.AsNullable(), 0, $"{smooth.StateBase}0");
} }
} }
@@ -338,7 +339,7 @@ namespace Content.Client.IconSmoothing
if (gridEntity == null) if (gridEntity == null)
{ {
sprite.Comp.LayerSetState(0, $"{smooth.StateBase}{(int)dirs}"); _sprite.LayerSetRsiState(sprite.AsNullable(), 0, $"{smooth.StateBase}{(int)dirs}");
return; return;
} }
@@ -355,7 +356,7 @@ namespace Content.Client.IconSmoothing
if (MatchingEntity(smooth, _mapSystem.GetAnchoredEntitiesEnumerator(gridUid, grid, pos.Offset(Direction.West)), smoothQuery)) if (MatchingEntity(smooth, _mapSystem.GetAnchoredEntitiesEnumerator(gridUid, grid, pos.Offset(Direction.West)), smoothQuery))
dirs |= CardinalConnectDirs.West; dirs |= CardinalConnectDirs.West;
sprite.Comp.LayerSetState(0, $"{smooth.StateBase}{(int)dirs}"); _sprite.LayerSetRsiState(sprite.AsNullable(), 0, $"{smooth.StateBase}{(int)dirs}");
var directions = DirectionFlag.None; var directions = DirectionFlag.None;
@@ -399,10 +400,10 @@ namespace Content.Client.IconSmoothing
// At the very least each event currently only queues a sprite for updating. // At the very least each event currently only queues a sprite for updating.
// Oh god sprite component is a mess. // Oh god sprite component is a mess.
var sprite = spriteEnt.Comp; var sprite = spriteEnt.Comp;
sprite.LayerSetState(CornerLayers.NE, $"{smooth.StateBase}{(int)cornerNE}"); _sprite.LayerSetRsiState(spriteEnt.AsNullable(), CornerLayers.NE, $"{smooth.StateBase}{(int)cornerNE}");
sprite.LayerSetState(CornerLayers.SE, $"{smooth.StateBase}{(int)cornerSE}"); _sprite.LayerSetRsiState(spriteEnt.AsNullable(), CornerLayers.SE, $"{smooth.StateBase}{(int)cornerSE}");
sprite.LayerSetState(CornerLayers.SW, $"{smooth.StateBase}{(int)cornerSW}"); _sprite.LayerSetRsiState(spriteEnt.AsNullable(), CornerLayers.SW, $"{smooth.StateBase}{(int)cornerSW}");
sprite.LayerSetState(CornerLayers.NW, $"{smooth.StateBase}{(int)cornerNW}"); _sprite.LayerSetRsiState(spriteEnt.AsNullable(), CornerLayers.NW, $"{smooth.StateBase}{(int)cornerNW}");
var directions = DirectionFlag.None; var directions = DirectionFlag.None;