From 818d0474494cc87299ef4bcaa981d07225e70f58 Mon Sep 17 00:00:00 2001 From: Tayrtahn Date: Sun, 18 May 2025 21:09:47 -0400 Subject: [PATCH] Cleanup more `SpriteComponent` warnings (part 5) (#37590) * 1 warning in KudzuVisualizerSystem * 2 warnings in ChameleonProjectorSystem * 1 warning in MarkerSystem * 2 warnings in ItemSystem * 1 warning in GhostToggleSelfVisibility * 1 warning in FoamVisualizerSystem * 1 warning in ClickableTest * 1 warning in ThrownItemVisualizerSystem * 2 warnings in InfantSystem * 1 warning in ChasmFallingVisualsSystem * 1 warning in PotencyVisualsSystem * 2 warnings in OrbitVisualsSystem * 2 warnings in BeamSystem * 1 warning in JitteringSystem * 1 warning in CardboardBoxSystem * 2 warnings in StationAiSystem * 2 warnings in FirelockSystem * 2 warnings in CargoSystem.Telepad * 1 warning in StasisBedSystem * 2 warnings in WeldableVisualizerSystem * 2 warnings in DeliveryVisualizerSystem * 1 warning in TimerTriggerVisualizerSystem * 1 warning in StorageFillVisualizerSystem * 2 warnings in RadiationCollectorSystem * 2 warnings in BorgSwitchableTypeSystem * 1 warning in TurnstileSystem * 1 warning in SurveillanceCameraVisualsSystem * 1 warning in BurnStateVisualizerSystem * 2 warnings in CableVisualizerSystem * 1 warning in JetpackSystem --- Content.Client/Beam/BeamSystem.cs | 6 ++++-- Content.Client/Bed/StasisBedSystem.cs | 2 +- Content.Client/Botany/PotencyVisualsSystem.cs | 2 +- .../CardboardBox/CardboardBoxSystem.cs | 3 ++- .../Cargo/Systems/CargoSystem.Telepad.cs | 5 +++-- .../Chasm/ChasmFallingVisualsSystem.cs | 3 ++- .../Visualizers/FoamVisualizerSystem.cs | 3 ++- .../Delivery/DeliveryVisualizerSystem.cs | 5 ++--- Content.Client/Doors/FirelockSystem.cs | 7 ++++--- Content.Client/Doors/TurnstileSystem.cs | 7 ++++--- .../Ghost/GhostToggleSelfVisibility.cs | 3 ++- Content.Client/Items/Systems/ItemSystem.cs | 7 ++++--- Content.Client/Jittering/JitteringSystem.cs | 7 ++++--- Content.Client/Kudzu/KudzuVisualizerSystem.cs | 4 ++-- Content.Client/Markers/MarkerSystem.cs | 4 +++- .../Movement/Systems/JetpackSystem.cs | 4 +++- .../Nutrition/EntitySystems/InfantSystem.cs | 6 ++++-- Content.Client/Orbit/OrbitVisualsSystem.cs | 8 +++++--- .../Systems/ChameleonProjectorSystem.cs | 5 +++-- .../Visualizers/CableVisualizerSystem.cs | 5 +++-- .../Borgs/BorgSwitchableTypeSystem.cs | 5 +++-- .../Silicons/StationAi/StationAiSystem.cs | 5 +++-- .../Visualizers/RadiationCollectorSystem.cs | 19 ++++++++++--------- .../Smoking/BurnStateVisualizerSystem.cs | 2 +- .../StorageFillVisualizerSystem.cs | 2 +- .../SurveillanceCameraVisualsSystem.cs | 6 ++++-- .../Throwing/ThrownItemVisualizerSystem.cs | 5 +++-- .../Visualizers/WeldableVisualizerSystem.cs | 4 ++-- .../Trigger/TimerTriggerVisualizerSystem.cs | 10 ++++++---- .../Tests/ClickableTest.cs | 3 ++- 30 files changed, 93 insertions(+), 64 deletions(-) diff --git a/Content.Client/Beam/BeamSystem.cs b/Content.Client/Beam/BeamSystem.cs index 4749d4d29b..66975d53a7 100644 --- a/Content.Client/Beam/BeamSystem.cs +++ b/Content.Client/Beam/BeamSystem.cs @@ -7,6 +7,8 @@ namespace Content.Client.Beam; public sealed class BeamSystem : SharedBeamSystem { + [Dependency] private readonly SpriteSystem _sprite = default!; + public override void Initialize() { base.Initialize(); @@ -21,11 +23,11 @@ public sealed class BeamSystem : SharedBeamSystem if (TryComp(beam, out var sprites)) { - sprites.Rotation = args.UserAngle; + _sprite.SetRotation((beam, sprites), args.UserAngle); if (args.BodyState != null) { - sprites.LayerSetState(0, args.BodyState); + _sprite.LayerSetRsiState((beam, sprites), 0, args.BodyState); sprites.LayerSetShader(0, args.Shader); } } diff --git a/Content.Client/Bed/StasisBedSystem.cs b/Content.Client/Bed/StasisBedSystem.cs index 66ec2f3245..6065ec839f 100644 --- a/Content.Client/Bed/StasisBedSystem.cs +++ b/Content.Client/Bed/StasisBedSystem.cs @@ -10,7 +10,7 @@ public sealed class StasisBedSystem : VisualizerSystem(uid, StasisBedVisuals.IsOn, out var isOn, args.Component)) { - args.Sprite.LayerSetVisible(StasisBedVisualLayers.IsOn, isOn); + SpriteSystem.LayerSetVisible((uid, args.Sprite), StasisBedVisualLayers.IsOn, isOn); } } } diff --git a/Content.Client/Botany/PotencyVisualsSystem.cs b/Content.Client/Botany/PotencyVisualsSystem.cs index cd64a17f32..93b2b7e7c7 100644 --- a/Content.Client/Botany/PotencyVisualsSystem.cs +++ b/Content.Client/Botany/PotencyVisualsSystem.cs @@ -15,7 +15,7 @@ public sealed class PotencyVisualsSystem : VisualizerSystem(uid, ProduceVisuals.Potency, out var potency, args.Component)) { var scale = MathHelper.Lerp(component.MinimumScale, component.MaximumScale, potency / 100); - args.Sprite.Scale = new Vector2(scale, scale); + SpriteSystem.SetScale((uid, args.Sprite), new Vector2(scale, scale)); } } } diff --git a/Content.Client/CardboardBox/CardboardBoxSystem.cs b/Content.Client/CardboardBox/CardboardBoxSystem.cs index 925013db10..e52ce03a76 100644 --- a/Content.Client/CardboardBox/CardboardBoxSystem.cs +++ b/Content.Client/CardboardBox/CardboardBoxSystem.cs @@ -13,6 +13,7 @@ public sealed class CardboardBoxSystem : SharedCardboardBoxSystem [Dependency] private readonly EntityLookupSystem _entityLookup = default!; [Dependency] private readonly TransformSystem _transform = default!; [Dependency] private readonly ExamineSystemShared _examine = default!; + [Dependency] private readonly SpriteSystem _sprite = default!; private EntityQuery _bodyQuery; @@ -74,7 +75,7 @@ public sealed class CardboardBoxSystem : SharedCardboardBoxSystem if (!xformQuery.TryGetComponent(ent, out var entTransform) || !TryComp(ent, out var sprite)) continue; - sprite.Offset = new Vector2(0, 1); + _sprite.SetOffset((ent, sprite), new Vector2(0, 1)); _transform.SetParent(ent, entTransform, mob); } diff --git a/Content.Client/Cargo/Systems/CargoSystem.Telepad.cs b/Content.Client/Cargo/Systems/CargoSystem.Telepad.cs index 99f9b34387..85b2dbfb83 100644 --- a/Content.Client/Cargo/Systems/CargoSystem.Telepad.cs +++ b/Content.Client/Cargo/Systems/CargoSystem.Telepad.cs @@ -10,6 +10,7 @@ namespace Content.Client.Cargo.Systems; public sealed partial class CargoSystem { [Dependency] private readonly SharedAppearanceSystem _appearance = default!; + [Dependency] private readonly SpriteSystem _sprite = default!; private static readonly Animation CargoTelepadBeamAnimation = new() { @@ -80,12 +81,12 @@ public sealed partial class CargoSystem _player.Play((uid, player), CargoTelepadBeamAnimation, TelepadBeamKey); break; case CargoTelepadState.Unpowered: - sprite.LayerSetVisible(CargoTelepadLayers.Beam, false); + _sprite.LayerSetVisible((uid, sprite), CargoTelepadLayers.Beam, false); _player.Stop(uid, player, TelepadBeamKey); _player.Stop(uid, player, TelepadIdleKey); break; default: - sprite.LayerSetVisible(CargoTelepadLayers.Beam, true); + _sprite.LayerSetVisible((uid, sprite), CargoTelepadLayers.Beam, true); if (_player.HasRunningAnimation(uid, player, TelepadIdleKey) || _player.HasRunningAnimation(uid, player, TelepadBeamKey)) diff --git a/Content.Client/Chasm/ChasmFallingVisualsSystem.cs b/Content.Client/Chasm/ChasmFallingVisualsSystem.cs index 204b90a8d8..767a9b747d 100644 --- a/Content.Client/Chasm/ChasmFallingVisualsSystem.cs +++ b/Content.Client/Chasm/ChasmFallingVisualsSystem.cs @@ -11,6 +11,7 @@ namespace Content.Client.Chasm; public sealed class ChasmFallingVisualsSystem : EntitySystem { [Dependency] private readonly AnimationPlayerSystem _anim = default!; + [Dependency] private readonly SpriteSystem _sprite = default!; private readonly string _chasmFallAnimationKey = "chasm_fall"; @@ -46,7 +47,7 @@ public sealed class ChasmFallingVisualsSystem : EntitySystem if (!TryComp(uid, out var sprite)) return; - sprite.Scale = component.OriginalScale; + _sprite.SetScale((uid, sprite), component.OriginalScale); if (!TryComp(uid, out var player)) return; diff --git a/Content.Client/Chemistry/Visualizers/FoamVisualizerSystem.cs b/Content.Client/Chemistry/Visualizers/FoamVisualizerSystem.cs index 2f895718c7..00a29563c1 100644 --- a/Content.Client/Chemistry/Visualizers/FoamVisualizerSystem.cs +++ b/Content.Client/Chemistry/Visualizers/FoamVisualizerSystem.cs @@ -11,6 +11,7 @@ namespace Content.Client.Chemistry.Visualizers; public sealed class FoamVisualizerSystem : VisualizerSystem { [Dependency] private readonly IGameTiming _timing = default!; + [Dependency] private readonly SpriteSystem _sprite = default!; public override void Initialize() { @@ -71,7 +72,7 @@ public sealed class FoamVisualizerSystem : VisualizerSystem(uid, out var sprite)) - sprite.Visible = false; + _sprite.SetVisible((uid, sprite), false); } } diff --git a/Content.Client/Delivery/DeliveryVisualizerSystem.cs b/Content.Client/Delivery/DeliveryVisualizerSystem.cs index 68149e248d..846688149f 100644 --- a/Content.Client/Delivery/DeliveryVisualizerSystem.cs +++ b/Content.Client/Delivery/DeliveryVisualizerSystem.cs @@ -9,7 +9,6 @@ public sealed class DeliveryVisualizerSystem : VisualizerSystem UnknownIcon = "JobIconUnknown"; @@ -25,11 +24,11 @@ public sealed class DeliveryVisualizerSystem : VisualizerSystem(job, out var icon)) { - args.Sprite.LayerSetTexture(DeliveryVisualLayers.JobStamp, _sprite.Frame0(_prototype.Index("JobIconUnknown"))); + SpriteSystem.LayerSetTexture((uid, args.Sprite), DeliveryVisualLayers.JobStamp, SpriteSystem.Frame0(_prototype.Index("JobIconUnknown"))); return; } - args.Sprite.LayerSetTexture(DeliveryVisualLayers.JobStamp, _sprite.Frame0(icon.Icon)); + SpriteSystem.LayerSetTexture((uid, args.Sprite), DeliveryVisualLayers.JobStamp, SpriteSystem.Frame0(icon.Icon)); } } diff --git a/Content.Client/Doors/FirelockSystem.cs b/Content.Client/Doors/FirelockSystem.cs index 5d357c0c09..6960f14f32 100644 --- a/Content.Client/Doors/FirelockSystem.cs +++ b/Content.Client/Doors/FirelockSystem.cs @@ -8,6 +8,7 @@ namespace Content.Client.Doors; public sealed class FirelockSystem : SharedFirelockSystem { [Dependency] private readonly SharedAppearanceSystem _appearanceSystem = default!; + [Dependency] private readonly SpriteSystem _sprite = default!; public override void Initialize() { @@ -18,7 +19,7 @@ public sealed class FirelockSystem : SharedFirelockSystem protected override void OnComponentStartup(Entity ent, ref ComponentStartup args) { base.OnComponentStartup(ent, ref args); - if(!TryComp(ent.Owner, out var door)) + if (!TryComp(ent.Owner, out var door)) return; door.ClosedSpriteStates.Add((DoorVisualLayers.BaseUnlit, ent.Comp.WarningLightSpriteState)); @@ -57,7 +58,7 @@ public sealed class FirelockSystem : SharedFirelockSystem || state == DoorState.Denying || (_appearanceSystem.TryGetData(uid, DoorVisuals.ClosedLights, out var closedLights, args.Component) && closedLights); - args.Sprite.LayerSetVisible(DoorVisualLayers.BaseUnlit, unlitVisible && !boltedVisible); - args.Sprite.LayerSetVisible(DoorVisualLayers.BaseBolted, boltedVisible); + _sprite.LayerSetVisible((uid, args.Sprite), DoorVisualLayers.BaseUnlit, unlitVisible && !boltedVisible); + _sprite.LayerSetVisible((uid, args.Sprite), DoorVisualLayers.BaseBolted, boltedVisible); } } diff --git a/Content.Client/Doors/TurnstileSystem.cs b/Content.Client/Doors/TurnstileSystem.cs index 6e76ce6aa0..4c1f79f047 100644 --- a/Content.Client/Doors/TurnstileSystem.cs +++ b/Content.Client/Doors/TurnstileSystem.cs @@ -13,8 +13,9 @@ namespace Content.Client.Doors; public sealed class TurnstileSystem : SharedTurnstileSystem { [Dependency] private readonly AnimationPlayerSystem _animationPlayer = default!; + [Dependency] private readonly SpriteSystem _sprite = default!; - private static EntProtoId _examineArrow = "TurnstileArrow"; + private static readonly EntProtoId ExamineArrow = "TurnstileArrow"; private const string AnimationKey = "Turnstile"; @@ -33,12 +34,12 @@ public sealed class TurnstileSystem : SharedTurnstileSystem if (!TryComp(ent, out var sprite)) return; - sprite.LayerSetState(TurnstileVisualLayers.Base, new RSI.StateId(ent.Comp.DefaultState)); + _sprite.LayerSetRsiState((ent.Owner, sprite), TurnstileVisualLayers.Base, new RSI.StateId(ent.Comp.DefaultState)); } private void OnExamined(Entity ent, ref ExaminedEvent args) { - Spawn(_examineArrow, new EntityCoordinates(ent, 0, 0)); + Spawn(ExamineArrow, new EntityCoordinates(ent, 0, 0)); } protected override void PlayAnimation(EntityUid uid, string stateId) diff --git a/Content.Client/Ghost/GhostToggleSelfVisibility.cs b/Content.Client/Ghost/GhostToggleSelfVisibility.cs index 321bd9d32a..bc4531ce92 100644 --- a/Content.Client/Ghost/GhostToggleSelfVisibility.cs +++ b/Content.Client/Ghost/GhostToggleSelfVisibility.cs @@ -25,6 +25,7 @@ public sealed class GhostToggleSelfVisibility : IConsoleCommand if (!entityManager.TryGetComponent(attachedEntity, out SpriteComponent? spriteComponent)) return; - spriteComponent.Visible = !spriteComponent.Visible; + var spriteSys = entityManager.System(); + spriteSys.SetVisible((attachedEntity.Value, spriteComponent), !spriteComponent.Visible); } } diff --git a/Content.Client/Items/Systems/ItemSystem.cs b/Content.Client/Items/Systems/ItemSystem.cs index 2b5a41c6ce..a8e168c55e 100644 --- a/Content.Client/Items/Systems/ItemSystem.cs +++ b/Content.Client/Items/Systems/ItemSystem.cs @@ -13,6 +13,7 @@ namespace Content.Client.Items.Systems; public sealed class ItemSystem : SharedItemSystem { [Dependency] private readonly IResourceCache _resCache = default!; + [Dependency] private readonly SpriteSystem _sprite = default!; public override void Initialize() { @@ -27,12 +28,12 @@ public sealed class ItemSystem : SharedItemSystem private void OnUnequipped(EntityUid uid, SpriteComponent component, GotUnequippedEvent args) { - component.Visible = true; + _sprite.SetVisible((uid, component), true); } private void OnEquipped(EntityUid uid, SpriteComponent component, GotEquippedEvent args) { - component.Visible = false; + _sprite.SetVisible((uid, component), false); } #region InhandVisuals @@ -58,7 +59,7 @@ public sealed class ItemSystem : SharedItemSystem if (!item.InhandVisuals.TryGetValue(args.Location, out var layers)) { // get defaults - if (!TryGetDefaultVisuals(uid, item, defaultKey, out layers)) + if (!TryGetDefaultVisuals(uid, item, defaultKey, out layers)) return; } diff --git a/Content.Client/Jittering/JitteringSystem.cs b/Content.Client/Jittering/JitteringSystem.cs index 4448c60462..36f1843d5d 100644 --- a/Content.Client/Jittering/JitteringSystem.cs +++ b/Content.Client/Jittering/JitteringSystem.cs @@ -10,6 +10,7 @@ namespace Content.Client.Jittering { [Dependency] private readonly IRobustRandom _random = default!; [Dependency] private readonly AnimationPlayerSystem _animationPlayer = default!; + [Dependency] private readonly SpriteSystem _sprite = default!; private readonly float[] _sign = { -1, 1 }; private readonly string _jitterAnimationKey = "jittering"; @@ -40,12 +41,12 @@ namespace Content.Client.Jittering _animationPlayer.Stop(uid, animationPlayer, _jitterAnimationKey); if (TryComp(uid, out SpriteComponent? sprite)) - sprite.Offset = jittering.StartOffset; + _sprite.SetOffset((uid, sprite), jittering.StartOffset); } private void OnAnimationCompleted(EntityUid uid, JitteringComponent jittering, AnimationCompletedEvent args) { - if(args.Key != _jitterAnimationKey) + if (args.Key != _jitterAnimationKey) return; if (!args.Finished) @@ -59,7 +60,7 @@ namespace Content.Client.Jittering private Animation GetAnimation(JitteringComponent jittering, SpriteComponent sprite) { var amplitude = MathF.Min(4f, jittering.Amplitude / 100f + 1f) / 10f; - var offset = new Vector2(_random.NextFloat(amplitude/4f, amplitude), + var offset = new Vector2(_random.NextFloat(amplitude / 4f, amplitude), _random.NextFloat(amplitude / 4f, amplitude / 3f)); offset.X *= _random.Pick(_sign); diff --git a/Content.Client/Kudzu/KudzuVisualizerSystem.cs b/Content.Client/Kudzu/KudzuVisualizerSystem.cs index d252eb2004..2163d22d0b 100644 --- a/Content.Client/Kudzu/KudzuVisualizerSystem.cs +++ b/Content.Client/Kudzu/KudzuVisualizerSystem.cs @@ -13,8 +13,8 @@ public sealed class KudzuVisualsSystem : VisualizerSystem if (AppearanceSystem.TryGetData(uid, KudzuVisuals.Variant, out var var, args.Component) && AppearanceSystem.TryGetData(uid, KudzuVisuals.GrowthLevel, out var level, args.Component)) { - var index = args.Sprite.LayerMapReserveBlank(component.Layer); - args.Sprite.LayerSetState(index, $"kudzu_{level}{var}"); + var index = SpriteSystem.LayerMapReserve((uid, args.Sprite), $"{component.Layer}"); + SpriteSystem.LayerSetRsiState((uid, args.Sprite), index, $"kudzu_{level}{var}"); } } } diff --git a/Content.Client/Markers/MarkerSystem.cs b/Content.Client/Markers/MarkerSystem.cs index f12329bd78..2ff567e69e 100644 --- a/Content.Client/Markers/MarkerSystem.cs +++ b/Content.Client/Markers/MarkerSystem.cs @@ -5,6 +5,8 @@ namespace Content.Client.Markers; public sealed class MarkerSystem : EntitySystem { + [Dependency] private readonly SpriteSystem _sprite = default!; + private bool _markersVisible; public bool MarkersVisible @@ -33,7 +35,7 @@ public sealed class MarkerSystem : EntitySystem { if (EntityManager.TryGetComponent(uid, out SpriteComponent? sprite)) { - sprite.Visible = MarkersVisible; + _sprite.SetVisible((uid, sprite), MarkersVisible); } } diff --git a/Content.Client/Movement/Systems/JetpackSystem.cs b/Content.Client/Movement/Systems/JetpackSystem.cs index 804736ab7a..6810bb24cc 100644 --- a/Content.Client/Movement/Systems/JetpackSystem.cs +++ b/Content.Client/Movement/Systems/JetpackSystem.cs @@ -16,6 +16,7 @@ public sealed class JetpackSystem : SharedJetpackSystem [Dependency] private readonly ClothingSystem _clothing = default!; [Dependency] private readonly SharedTransformSystem _transform = default!; [Dependency] private readonly SharedMapSystem _mapSystem = default!; + [Dependency] private readonly SpriteSystem _sprite = default!; public override void Initialize() { @@ -34,7 +35,8 @@ public sealed class JetpackSystem : SharedJetpackSystem Appearance.TryGetData(uid, JetpackVisuals.Enabled, out var enabled, args.Component); var state = "icon" + (enabled ? "-on" : ""); - args.Sprite?.LayerSetState(0, state); + if (args.Sprite != null) + _sprite.LayerSetRsiState((uid, args.Sprite), 0, state); if (TryComp(uid, out var clothing)) _clothing.SetEquippedPrefix(uid, enabled ? "on" : null, clothing); diff --git a/Content.Client/Nutrition/EntitySystems/InfantSystem.cs b/Content.Client/Nutrition/EntitySystems/InfantSystem.cs index dbda75c58f..b003a24f09 100644 --- a/Content.Client/Nutrition/EntitySystems/InfantSystem.cs +++ b/Content.Client/Nutrition/EntitySystems/InfantSystem.cs @@ -8,6 +8,8 @@ namespace Content.Client.Nutrition.EntitySystems; /// public sealed class InfantSystem : EntitySystem { + [Dependency] private readonly SpriteSystem _sprite = default!; + /// public override void Initialize() { @@ -21,7 +23,7 @@ public sealed class InfantSystem : EntitySystem return; component.DefaultScale = sprite.Scale; - sprite.Scale = component.VisualScale; + _sprite.SetScale((uid, sprite), component.VisualScale); } private void OnShutdown(EntityUid uid, InfantComponent component, ComponentShutdown args) @@ -29,6 +31,6 @@ public sealed class InfantSystem : EntitySystem if (!TryComp(uid, out var sprite)) return; - sprite.Scale = component.DefaultScale; + _sprite.SetScale((uid, sprite), component.DefaultScale); } } diff --git a/Content.Client/Orbit/OrbitVisualsSystem.cs b/Content.Client/Orbit/OrbitVisualsSystem.cs index 1bcebd07b7..9824ccac29 100644 --- a/Content.Client/Orbit/OrbitVisualsSystem.cs +++ b/Content.Client/Orbit/OrbitVisualsSystem.cs @@ -13,6 +13,7 @@ public sealed class OrbitVisualsSystem : EntitySystem [Dependency] private readonly IRobustRandom _robustRandom = default!; [Dependency] private readonly AnimationPlayerSystem _animations = default!; [Dependency] private readonly IGameTiming _timing = default!; + [Dependency] private readonly SpriteSystem _sprite = default!; private readonly string _orbitStopKey = "orbiting_stop"; @@ -63,14 +64,15 @@ public sealed class OrbitVisualsSystem : EntitySystem { base.FrameUpdate(frameTime); - foreach (var (orbit, sprite) in EntityManager.EntityQuery()) + var query = EntityManager.EntityQueryEnumerator(); + while (query.MoveNext(out var uid, out var orbit, out var sprite)) { var progress = (float)(_timing.CurTime.TotalSeconds / orbit.OrbitLength) % 1; var angle = new Angle(Math.PI * 2 * progress); var vec = angle.RotateVec(new Vector2(orbit.OrbitDistance, 0)); - sprite.Rotation = angle; - sprite.Offset = vec; + _sprite.SetRotation((uid, sprite), angle); + _sprite.SetOffset((uid, sprite), vec); } } diff --git a/Content.Client/Polymorph/Systems/ChameleonProjectorSystem.cs b/Content.Client/Polymorph/Systems/ChameleonProjectorSystem.cs index 8ba09c6617..1319a3d74e 100644 --- a/Content.Client/Polymorph/Systems/ChameleonProjectorSystem.cs +++ b/Content.Client/Polymorph/Systems/ChameleonProjectorSystem.cs @@ -11,6 +11,7 @@ namespace Content.Client.Polymorph.Systems; public sealed class ChameleonProjectorSystem : SharedChameleonProjectorSystem { [Dependency] private readonly SharedAppearanceSystem _appearance = default!; + [Dependency] private readonly SpriteSystem _sprite = default!; private EntityQuery _appearanceQuery; private EntityQuery _spriteQuery; @@ -47,13 +48,13 @@ public sealed class ChameleonProjectorSystem : SharedChameleonProjectorSystem return; ent.Comp.WasVisible = sprite.Visible; - sprite.Visible = false; + _sprite.SetVisible((ent.Owner, sprite), false); } private void OnShutdown(Entity ent, ref ComponentShutdown args) { if (_spriteQuery.TryComp(ent, out var sprite)) - sprite.Visible = ent.Comp.WasVisible; + _sprite.SetVisible((ent.Owner, sprite), ent.Comp.WasVisible); } private void OnGetFlashEffectTargetEvent(Entity ent, ref GetFlashEffectTargetEvent args) diff --git a/Content.Client/Power/Visualizers/CableVisualizerSystem.cs b/Content.Client/Power/Visualizers/CableVisualizerSystem.cs index bea15a0602..1af57e7640 100644 --- a/Content.Client/Power/Visualizers/CableVisualizerSystem.cs +++ b/Content.Client/Power/Visualizers/CableVisualizerSystem.cs @@ -7,6 +7,7 @@ namespace Content.Client.Power.Visualizers; public sealed class CableVisualizerSystem : EntitySystem { [Dependency] private readonly AppearanceSystem _appearanceSystem = default!; + [Dependency] private readonly SpriteSystem _sprite = default!; public override void Initialize() { @@ -30,8 +31,8 @@ public sealed class CableVisualizerSystem : EntitySystem if (!_appearanceSystem.TryGetData(uid, WireVisVisuals.ConnectedMask, out var mask, args.Component)) mask = WireVisDirFlags.None; - args.Sprite.LayerSetState(0, $"{component.StatePrefix}{(int) mask}"); + _sprite.LayerSetRsiState((uid, args.Sprite), 0, $"{component.StatePrefix}{(int)mask}"); if (component.ExtraLayerPrefix != null) - args.Sprite.LayerSetState(1, $"{component.ExtraLayerPrefix}{(int) mask}"); + _sprite.LayerSetRsiState((uid, args.Sprite), 1, $"{component.ExtraLayerPrefix}{(int)mask}"); } } diff --git a/Content.Client/Silicons/Borgs/BorgSwitchableTypeSystem.cs b/Content.Client/Silicons/Borgs/BorgSwitchableTypeSystem.cs index 346dc5c276..b54da765b0 100644 --- a/Content.Client/Silicons/Borgs/BorgSwitchableTypeSystem.cs +++ b/Content.Client/Silicons/Borgs/BorgSwitchableTypeSystem.cs @@ -14,6 +14,7 @@ public sealed class BorgSwitchableTypeSystem : SharedBorgSwitchableTypeSystem { [Dependency] private readonly BorgSystem _borgSystem = default!; [Dependency] private readonly AppearanceSystem _appearance = default!; + [Dependency] private readonly SpriteSystem _sprite = default!; public override void Initialize() { @@ -39,8 +40,8 @@ public sealed class BorgSwitchableTypeSystem : SharedBorgSwitchableTypeSystem { if (TryComp(entity, out SpriteComponent? sprite)) { - sprite.LayerSetState(BorgVisualLayers.Body, prototype.SpriteBodyState); - sprite.LayerSetState(BorgVisualLayers.LightStatus, prototype.SpriteToggleLightState); + _sprite.LayerSetRsiState((entity, sprite), BorgVisualLayers.Body, prototype.SpriteBodyState); + _sprite.LayerSetRsiState((entity, sprite), BorgVisualLayers.LightStatus, prototype.SpriteToggleLightState); } if (TryComp(entity, out BorgChassisComponent? chassis)) diff --git a/Content.Client/Silicons/StationAi/StationAiSystem.cs b/Content.Client/Silicons/StationAi/StationAiSystem.cs index 75588eda39..9b0a9fb7ea 100644 --- a/Content.Client/Silicons/StationAi/StationAiSystem.cs +++ b/Content.Client/Silicons/StationAi/StationAiSystem.cs @@ -11,6 +11,7 @@ public sealed partial class StationAiSystem : SharedStationAiSystem [Dependency] private readonly IOverlayManager _overlayMgr = default!; [Dependency] private readonly IPlayerManager _player = default!; [Dependency] private readonly SharedAppearanceSystem _appearance = default!; + [Dependency] private readonly SpriteSystem _sprite = default!; private StationAiOverlay? _overlay; @@ -81,9 +82,9 @@ public sealed partial class StationAiSystem : SharedStationAiSystem return; if (_appearance.TryGetData(entity.Owner, StationAiVisualState.Key, out var layerData, args.Component)) - args.Sprite.LayerSetData(StationAiVisualState.Key, layerData); + _sprite.LayerSetData((entity.Owner, args.Sprite), StationAiVisualState.Key, layerData); - args.Sprite.LayerSetVisible(StationAiVisualState.Key, layerData != null); + _sprite.LayerSetVisible((entity.Owner, args.Sprite), StationAiVisualState.Key, layerData != null); } public override void Shutdown() diff --git a/Content.Client/Singularity/Visualizers/RadiationCollectorSystem.cs b/Content.Client/Singularity/Visualizers/RadiationCollectorSystem.cs index 15bbf8bc19..22bad793d9 100644 --- a/Content.Client/Singularity/Visualizers/RadiationCollectorSystem.cs +++ b/Content.Client/Singularity/Visualizers/RadiationCollectorSystem.cs @@ -1,4 +1,3 @@ -using System; using Content.Shared.Singularity.Components; using Robust.Client.Animations; using Robust.Client.GameObjects; @@ -16,7 +15,8 @@ public sealed class RadiationCollectorSystem : VisualizerSystem component.UnlitIcon }; - args.Sprite.LayerSetState(0, state); + SpriteSystem.LayerSetRsiState((uid, args.Sprite), 0, state); } } diff --git a/Content.Client/Storage/Visualizers/StorageFillVisualizerSystem.cs b/Content.Client/Storage/Visualizers/StorageFillVisualizerSystem.cs index 9b0c487a02..692a20a9f2 100644 --- a/Content.Client/Storage/Visualizers/StorageFillVisualizerSystem.cs +++ b/Content.Client/Storage/Visualizers/StorageFillVisualizerSystem.cs @@ -15,6 +15,6 @@ public sealed class StorageFillVisualizerSystem : VisualizerSystem(uid, out var sprite) && component.OriginalScale != null) - sprite.Scale = component.OriginalScale.Value; + _sprite.SetScale((uid, sprite), component.OriginalScale.Value); _anim.Stop(uid, AnimationKey); } @@ -60,7 +61,7 @@ public sealed class ThrownItemVisualizerSystem : EntitySystem return null; var scale = ent.Comp2.Scale; - var lenFloat = (float) length.TotalSeconds; + var lenFloat = (float)length.TotalSeconds; // TODO use like actual easings here return new Animation diff --git a/Content.Client/Tools/Visualizers/WeldableVisualizerSystem.cs b/Content.Client/Tools/Visualizers/WeldableVisualizerSystem.cs index 6fc90b0da2..ecf78a0bba 100644 --- a/Content.Client/Tools/Visualizers/WeldableVisualizerSystem.cs +++ b/Content.Client/Tools/Visualizers/WeldableVisualizerSystem.cs @@ -11,9 +11,9 @@ public sealed class WeldableVisualizerSystem : VisualizerSystem(uid, WeldableVisuals.IsWelded, out var isWelded, args.Component); - if (args.Sprite.LayerMapTryGet(WeldableLayers.BaseWelded, out var layer)) + if (SpriteSystem.LayerMapTryGet((uid, args.Sprite), WeldableLayers.BaseWelded, out var layer, false)) { - args.Sprite.LayerSetVisible(layer, isWelded); + SpriteSystem.LayerSetVisible((uid, args.Sprite), layer, isWelded); } } } diff --git a/Content.Client/Trigger/TimerTriggerVisualizerSystem.cs b/Content.Client/Trigger/TimerTriggerVisualizerSystem.cs index ed163f0732..b3d85f2017 100644 --- a/Content.Client/Trigger/TimerTriggerVisualizerSystem.cs +++ b/Content.Client/Trigger/TimerTriggerVisualizerSystem.cs @@ -19,7 +19,8 @@ public sealed class TimerTriggerVisualizerSystem : VisualizerSystem(uid, out var animPlayer)) + || !TryComp(uid, out var animPlayer)) return; if (!AppearanceSystem.TryGetData(uid, TriggerVisuals.VisualState, out var state, args.Component)) @@ -55,7 +57,7 @@ public sealed class TimerTriggerVisualizerSystem : VisualizerSystem(); var spriteQuery = clientEntManager.GetEntityQuery(); var eye = client.ResolveDependency().CurrentEye; + var spriteSys = clientEntManager.System(); var testMap = await pair.CreateTestMap(); @@ -73,7 +74,7 @@ namespace Content.IntegrationTests.Tests await client.WaitPost(() => { var sprite = spriteQuery.GetComponent(clientEnt); - sprite.Scale = new Vector2(scale, scale); + spriteSys.SetScale((clientEnt, sprite), new Vector2(scale, scale)); // these tests currently all assume player eye is 0 eyeManager.CurrentEye.Rotation = 0;