Cleanup redundant SpriteSystem dependencies in VisualizerSystems (#37758)

Cleanup redundant SpriteSystem dependencies in VisualizerSystems
This commit is contained in:
Tayrtahn
2025-05-23 14:12:20 -04:00
committed by GitHub
parent f3f655a8f9
commit bd6645b021
29 changed files with 193 additions and 239 deletions

View File

@@ -11,7 +11,6 @@ namespace Content.Client.Atmos.EntitySystems;
/// </summary> /// </summary>
public sealed class FireVisualizerSystem : VisualizerSystem<FireVisualsComponent> public sealed class FireVisualizerSystem : VisualizerSystem<FireVisualsComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
[Dependency] private readonly PointLightSystem _lights = default!; [Dependency] private readonly PointLightSystem _lights = default!;
public override void Initialize() public override void Initialize()
@@ -33,9 +32,9 @@ public sealed class FireVisualizerSystem : VisualizerSystem<FireVisualsComponent
// Need LayerMapTryGet because Init fails if there's no existing sprite / appearancecomp // Need LayerMapTryGet because Init fails if there's no existing sprite / appearancecomp
// which means in some setups (most frequently no AppearanceComp) the layer never exists. // which means in some setups (most frequently no AppearanceComp) the layer never exists.
if (TryComp<SpriteComponent>(uid, out var sprite) && if (TryComp<SpriteComponent>(uid, out var sprite) &&
_sprite.LayerMapTryGet((uid, sprite), FireVisualLayers.Fire, out var layer, false)) SpriteSystem.LayerMapTryGet((uid, sprite), FireVisualLayers.Fire, out var layer, false))
{ {
_sprite.RemoveLayer((uid, sprite), layer); SpriteSystem.RemoveLayer((uid, sprite), layer);
} }
} }
@@ -44,11 +43,11 @@ public sealed class FireVisualizerSystem : VisualizerSystem<FireVisualsComponent
if (!TryComp<SpriteComponent>(uid, out var sprite) || !TryComp(uid, out AppearanceComponent? appearance)) if (!TryComp<SpriteComponent>(uid, out var sprite) || !TryComp(uid, out AppearanceComponent? appearance))
return; return;
_sprite.LayerMapReserve((uid, sprite), FireVisualLayers.Fire); SpriteSystem.LayerMapReserve((uid, sprite), FireVisualLayers.Fire);
_sprite.LayerSetVisible((uid, sprite), FireVisualLayers.Fire, false); SpriteSystem.LayerSetVisible((uid, sprite), FireVisualLayers.Fire, false);
sprite.LayerSetShader(FireVisualLayers.Fire, "unshaded"); sprite.LayerSetShader(FireVisualLayers.Fire, "unshaded");
if (component.Sprite != null) if (component.Sprite != null)
_sprite.LayerSetRsi((uid, sprite), FireVisualLayers.Fire, new ResPath(component.Sprite)); SpriteSystem.LayerSetRsi((uid, sprite), FireVisualLayers.Fire, new ResPath(component.Sprite));
UpdateAppearance(uid, component, sprite, appearance); UpdateAppearance(uid, component, sprite, appearance);
} }
@@ -61,12 +60,12 @@ public sealed class FireVisualizerSystem : VisualizerSystem<FireVisualsComponent
private void UpdateAppearance(EntityUid uid, FireVisualsComponent component, SpriteComponent sprite, AppearanceComponent appearance) private void UpdateAppearance(EntityUid uid, FireVisualsComponent component, SpriteComponent sprite, AppearanceComponent appearance)
{ {
if (!_sprite.LayerMapTryGet((uid, sprite), FireVisualLayers.Fire, out var index, false)) if (!SpriteSystem.LayerMapTryGet((uid, sprite), FireVisualLayers.Fire, out var index, false))
return; return;
AppearanceSystem.TryGetData<bool>(uid, FireVisuals.OnFire, out var onFire, appearance); AppearanceSystem.TryGetData<bool>(uid, FireVisuals.OnFire, out var onFire, appearance);
AppearanceSystem.TryGetData<float>(uid, FireVisuals.FireStacks, out var fireStacks, appearance); AppearanceSystem.TryGetData<float>(uid, FireVisuals.FireStacks, out var fireStacks, appearance);
_sprite.LayerSetVisible((uid, sprite), index, onFire); SpriteSystem.LayerSetVisible((uid, sprite), index, onFire);
if (!onFire) if (!onFire)
{ {
@@ -80,9 +79,9 @@ public sealed class FireVisualizerSystem : VisualizerSystem<FireVisualsComponent
} }
if (fireStacks > component.FireStackAlternateState && !string.IsNullOrEmpty(component.AlternateState)) if (fireStacks > component.FireStackAlternateState && !string.IsNullOrEmpty(component.AlternateState))
_sprite.LayerSetRsiState((uid, sprite), index, component.AlternateState); SpriteSystem.LayerSetRsiState((uid, sprite), index, component.AlternateState);
else else
_sprite.LayerSetRsiState((uid, sprite), index, component.NormalState); SpriteSystem.LayerSetRsiState((uid, sprite), index, component.NormalState);
component.LightEntity ??= Spawn(null, new EntityCoordinates(uid, default)); component.LightEntity ??= Spawn(null, new EntityCoordinates(uid, default));
var light = EnsureComp<PointLightComponent>(component.LightEntity.Value); var light = EnsureComp<PointLightComponent>(component.LightEntity.Value);

View File

@@ -7,11 +7,9 @@ namespace Content.Client.Atmos.Monitor;
public sealed class AtmosAlarmableVisualsSystem : VisualizerSystem<AtmosAlarmableVisualsComponent> public sealed class AtmosAlarmableVisualsSystem : VisualizerSystem<AtmosAlarmableVisualsComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, AtmosAlarmableVisualsComponent component, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, AtmosAlarmableVisualsComponent component, ref AppearanceChangeEvent args)
{ {
if (args.Sprite == null || !_sprite.LayerMapTryGet((uid, args.Sprite), component.LayerMap, out var layer, false)) if (args.Sprite == null || !SpriteSystem.LayerMapTryGet((uid, args.Sprite), component.LayerMap, out var layer, false))
return; return;
if (!args.AppearanceData.TryGetValue(PowerDeviceVisuals.Powered, out var poweredObject) || if (!args.AppearanceData.TryGetValue(PowerDeviceVisuals.Powered, out var poweredObject) ||
@@ -24,8 +22,8 @@ public sealed class AtmosAlarmableVisualsSystem : VisualizerSystem<AtmosAlarmabl
{ {
foreach (var visLayer in component.HideOnDepowered) foreach (var visLayer in component.HideOnDepowered)
{ {
if (_sprite.LayerMapTryGet((uid, args.Sprite), visLayer, out var powerVisibilityLayer, false)) if (SpriteSystem.LayerMapTryGet((uid, args.Sprite), visLayer, out var powerVisibilityLayer, false))
_sprite.LayerSetVisible((uid, args.Sprite), powerVisibilityLayer, powered); SpriteSystem.LayerSetVisible((uid, args.Sprite), powerVisibilityLayer, powered);
} }
} }
@@ -33,8 +31,8 @@ public sealed class AtmosAlarmableVisualsSystem : VisualizerSystem<AtmosAlarmabl
{ {
foreach (var (setLayer, powerState) in component.SetOnDepowered) foreach (var (setLayer, powerState) in component.SetOnDepowered)
{ {
if (_sprite.LayerMapTryGet((uid, args.Sprite), setLayer, out var setStateLayer, false)) if (SpriteSystem.LayerMapTryGet((uid, args.Sprite), setLayer, out var setStateLayer, false))
_sprite.LayerSetRsiState((uid, args.Sprite), setStateLayer, new RSI.StateId(powerState)); SpriteSystem.LayerSetRsiState((uid, args.Sprite), setStateLayer, new RSI.StateId(powerState));
} }
} }
@@ -43,7 +41,7 @@ public sealed class AtmosAlarmableVisualsSystem : VisualizerSystem<AtmosAlarmabl
&& powered && powered
&& component.AlarmStates.TryGetValue(alarmType, out var state)) && component.AlarmStates.TryGetValue(alarmType, out var state))
{ {
_sprite.LayerSetRsiState((uid, args.Sprite), layer, new RSI.StateId(state)); SpriteSystem.LayerSetRsiState((uid, args.Sprite), layer, new RSI.StateId(state));
} }
} }
} }

View File

@@ -9,8 +9,6 @@ namespace Content.Client.Atmos.Visualizers;
/// </summary> /// </summary>
public sealed class PortableScrubberSystem : VisualizerSystem<PortableScrubberVisualsComponent> public sealed class PortableScrubberSystem : VisualizerSystem<PortableScrubberVisualsComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, PortableScrubberVisualsComponent component, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, PortableScrubberVisualsComponent component, ref AppearanceChangeEvent args)
{ {
if (args.Sprite == null) if (args.Sprite == null)
@@ -20,15 +18,15 @@ public sealed class PortableScrubberSystem : VisualizerSystem<PortableScrubberVi
&& AppearanceSystem.TryGetData<bool>(uid, PortableScrubberVisuals.IsRunning, out var isRunning, args.Component)) && AppearanceSystem.TryGetData<bool>(uid, PortableScrubberVisuals.IsRunning, out var isRunning, args.Component))
{ {
var runningState = isRunning ? component.RunningState : component.IdleState; var runningState = isRunning ? component.RunningState : component.IdleState;
_sprite.LayerSetRsiState((uid, args.Sprite), PortableScrubberVisualLayers.IsRunning, runningState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), PortableScrubberVisualLayers.IsRunning, runningState);
var fullState = isFull ? component.FullState : component.ReadyState; var fullState = isFull ? component.FullState : component.ReadyState;
_sprite.LayerSetRsiState((uid, args.Sprite), PowerDeviceVisualLayers.Powered, fullState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), PowerDeviceVisualLayers.Powered, fullState);
} }
if (AppearanceSystem.TryGetData<bool>(uid, PortableScrubberVisuals.IsDraining, out var isDraining, args.Component)) if (AppearanceSystem.TryGetData<bool>(uid, PortableScrubberVisuals.IsDraining, out var isDraining, args.Component))
{ {
_sprite.LayerSetVisible((uid, args.Sprite), PortableScrubberVisualLayers.IsDraining, isDraining); SpriteSystem.LayerSetVisible((uid, args.Sprite), PortableScrubberVisualLayers.IsDraining, isDraining);
} }
} }
} }

View File

@@ -7,8 +7,6 @@ namespace Content.Client.Botany;
public sealed class PlantHolderVisualizerSystem : VisualizerSystem<PlantHolderVisualsComponent> public sealed class PlantHolderVisualizerSystem : VisualizerSystem<PlantHolderVisualsComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
public override void Initialize() public override void Initialize()
{ {
base.Initialize(); base.Initialize();
@@ -20,8 +18,8 @@ public sealed class PlantHolderVisualizerSystem : VisualizerSystem<PlantHolderVi
if (!TryComp<SpriteComponent>(uid, out var sprite)) if (!TryComp<SpriteComponent>(uid, out var sprite))
return; return;
_sprite.LayerMapReserve((uid, sprite), PlantHolderLayers.Plant); SpriteSystem.LayerMapReserve((uid, sprite), PlantHolderLayers.Plant);
_sprite.LayerSetVisible((uid, sprite), PlantHolderLayers.Plant, false); SpriteSystem.LayerSetVisible((uid, sprite), PlantHolderLayers.Plant, false);
} }
protected override void OnAppearanceChange(EntityUid uid, PlantHolderVisualsComponent component, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, PlantHolderVisualsComponent component, ref AppearanceChangeEvent args)
@@ -34,12 +32,12 @@ public sealed class PlantHolderVisualizerSystem : VisualizerSystem<PlantHolderVi
{ {
var valid = !string.IsNullOrWhiteSpace(state); var valid = !string.IsNullOrWhiteSpace(state);
_sprite.LayerSetVisible((uid, args.Sprite), PlantHolderLayers.Plant, valid); SpriteSystem.LayerSetVisible((uid, args.Sprite), PlantHolderLayers.Plant, valid);
if (valid) if (valid)
{ {
_sprite.LayerSetRsi((uid, args.Sprite), PlantHolderLayers.Plant, new ResPath(rsi)); SpriteSystem.LayerSetRsi((uid, args.Sprite), PlantHolderLayers.Plant, new ResPath(rsi));
_sprite.LayerSetRsiState((uid, args.Sprite), PlantHolderLayers.Plant, state); SpriteSystem.LayerSetRsiState((uid, args.Sprite), PlantHolderLayers.Plant, state);
} }
} }
} }

View File

@@ -9,7 +9,6 @@ public sealed class TypingIndicatorVisualizerSystem : VisualizerSystem<TypingInd
{ {
[Dependency] private readonly IPrototypeManager _prototypeManager = default!; [Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly InventorySystem _inventory = default!; [Dependency] private readonly InventorySystem _inventory = default!;
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, TypingIndicatorComponent component, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, TypingIndicatorComponent component, ref AppearanceChangeEvent args)
{ {
@@ -34,24 +33,24 @@ public sealed class TypingIndicatorVisualizerSystem : VisualizerSystem<TypingInd
return; return;
} }
var layerExists = _sprite.LayerMapTryGet((uid, args.Sprite), TypingIndicatorLayers.Base, out var layer, false); var layerExists = SpriteSystem.LayerMapTryGet((uid, args.Sprite), TypingIndicatorLayers.Base, out var layer, false);
if (!layerExists) if (!layerExists)
layer = _sprite.LayerMapReserve((uid, args.Sprite), TypingIndicatorLayers.Base); layer = SpriteSystem.LayerMapReserve((uid, args.Sprite), TypingIndicatorLayers.Base);
_sprite.LayerSetRsi((uid, args.Sprite), layer, proto.SpritePath); SpriteSystem.LayerSetRsi((uid, args.Sprite), layer, proto.SpritePath);
_sprite.LayerSetRsiState((uid, args.Sprite), layer, proto.TypingState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), layer, proto.TypingState);
args.Sprite.LayerSetShader(layer, proto.Shader); args.Sprite.LayerSetShader(layer, proto.Shader);
_sprite.LayerSetOffset((uid, args.Sprite), layer, proto.Offset); SpriteSystem.LayerSetOffset((uid, args.Sprite), layer, proto.Offset);
AppearanceSystem.TryGetData<TypingIndicatorState>(uid, TypingIndicatorVisuals.State, out var state); AppearanceSystem.TryGetData<TypingIndicatorState>(uid, TypingIndicatorVisuals.State, out var state);
_sprite.LayerSetVisible((uid, args.Sprite), layer, state != TypingIndicatorState.None); SpriteSystem.LayerSetVisible((uid, args.Sprite), layer, state != TypingIndicatorState.None);
switch (state) switch (state)
{ {
case TypingIndicatorState.Idle: case TypingIndicatorState.Idle:
_sprite.LayerSetRsiState((uid, args.Sprite), layer, proto.IdleState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), layer, proto.IdleState);
break; break;
case TypingIndicatorState.Typing: case TypingIndicatorState.Typing:
_sprite.LayerSetRsiState((uid, args.Sprite), layer, proto.TypingState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), layer, proto.TypingState);
break; break;
} }
} }

View File

@@ -11,7 +11,6 @@ namespace Content.Client.Chemistry.Visualizers;
public sealed class FoamVisualizerSystem : VisualizerSystem<FoamVisualsComponent> public sealed class FoamVisualizerSystem : VisualizerSystem<FoamVisualsComponent>
{ {
[Dependency] private readonly IGameTiming _timing = default!; [Dependency] private readonly IGameTiming _timing = default!;
[Dependency] private readonly SpriteSystem _sprite = default!;
public override void Initialize() public override void Initialize()
{ {
@@ -72,7 +71,7 @@ public sealed class FoamVisualizerSystem : VisualizerSystem<FoamVisualsComponent
return; return;
if (TryComp<SpriteComponent>(uid, out var sprite)) if (TryComp<SpriteComponent>(uid, out var sprite))
_sprite.SetVisible((uid, sprite), false); SpriteSystem.SetVisible((uid, sprite), false);
} }
} }

View File

@@ -16,7 +16,6 @@ public sealed class SolutionContainerVisualsSystem : VisualizerSystem<SolutionCo
{ {
[Dependency] private readonly IPrototypeManager _prototype = default!; [Dependency] private readonly IPrototypeManager _prototype = default!;
[Dependency] private readonly ItemSystem _itemSystem = default!; [Dependency] private readonly ItemSystem _itemSystem = default!;
[Dependency] private readonly SpriteSystem _sprite = default!;
public override void Initialize() public override void Initialize()
{ {
@@ -50,7 +49,7 @@ public sealed class SolutionContainerVisualsSystem : VisualizerSystem<SolutionCo
if (args.Sprite == null) if (args.Sprite == null)
return; return;
if (!_sprite.LayerMapTryGet((uid, args.Sprite), component.Layer, out var fillLayer, false)) if (!SpriteSystem.LayerMapTryGet((uid, args.Sprite), component.Layer, out var fillLayer, false))
return; return;
var maxFillLevels = component.MaxFillLevels; var maxFillLevels = component.MaxFillLevels;
@@ -68,9 +67,9 @@ public sealed class SolutionContainerVisualsSystem : VisualizerSystem<SolutionCo
} }
if (component.Metamorphic) if (component.Metamorphic)
{ {
if (_sprite.LayerMapTryGet((uid, args.Sprite), component.BaseLayer, out var baseLayer, false)) if (SpriteSystem.LayerMapTryGet((uid, args.Sprite), component.BaseLayer, out var baseLayer, false))
{ {
var hasOverlay = _sprite.LayerMapTryGet((uid, args.Sprite), component.OverlayLayer, out var overlayLayer, false); var hasOverlay = SpriteSystem.LayerMapTryGet((uid, args.Sprite), component.OverlayLayer, out var overlayLayer, false);
if (AppearanceSystem.TryGetData<string>(uid, SolutionContainerVisuals.BaseOverride, if (AppearanceSystem.TryGetData<string>(uid, SolutionContainerVisuals.BaseOverride,
out var baseOverride, out var baseOverride,
@@ -80,35 +79,35 @@ public sealed class SolutionContainerVisualsSystem : VisualizerSystem<SolutionCo
if (reagentProto?.MetamorphicSprite is { } sprite) if (reagentProto?.MetamorphicSprite is { } sprite)
{ {
_sprite.LayerSetSprite((uid, args.Sprite), baseLayer, sprite); SpriteSystem.LayerSetSprite((uid, args.Sprite), baseLayer, sprite);
if (reagentProto.MetamorphicMaxFillLevels > 0) if (reagentProto.MetamorphicMaxFillLevels > 0)
{ {
_sprite.LayerSetVisible((uid, args.Sprite), fillLayer, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), fillLayer, true);
maxFillLevels = reagentProto.MetamorphicMaxFillLevels; maxFillLevels = reagentProto.MetamorphicMaxFillLevels;
fillBaseName = reagentProto.MetamorphicFillBaseName; fillBaseName = reagentProto.MetamorphicFillBaseName;
changeColor = reagentProto.MetamorphicChangeColor; changeColor = reagentProto.MetamorphicChangeColor;
fillSprite = sprite; fillSprite = sprite;
} }
else else
_sprite.LayerSetVisible((uid, args.Sprite), fillLayer, false); SpriteSystem.LayerSetVisible((uid, args.Sprite), fillLayer, false);
if (hasOverlay) if (hasOverlay)
_sprite.LayerSetVisible((uid, args.Sprite), overlayLayer, false); SpriteSystem.LayerSetVisible((uid, args.Sprite), overlayLayer, false);
} }
else else
{ {
_sprite.LayerSetVisible((uid, args.Sprite), fillLayer, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), fillLayer, true);
if (hasOverlay) if (hasOverlay)
_sprite.LayerSetVisible((uid, args.Sprite), overlayLayer, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), overlayLayer, true);
if (component.MetamorphicDefaultSprite != null) if (component.MetamorphicDefaultSprite != null)
_sprite.LayerSetSprite((uid, args.Sprite), baseLayer, component.MetamorphicDefaultSprite); SpriteSystem.LayerSetSprite((uid, args.Sprite), baseLayer, component.MetamorphicDefaultSprite);
} }
} }
} }
} }
else else
{ {
_sprite.LayerSetVisible((uid, args.Sprite), fillLayer, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), fillLayer, true);
} }
var closestFillSprite = ContentHelpers.RoundToLevels(fraction, 1, maxFillLevels + 1); var closestFillSprite = ContentHelpers.RoundToLevels(fraction, 1, maxFillLevels + 1);
@@ -120,25 +119,25 @@ public sealed class SolutionContainerVisualsSystem : VisualizerSystem<SolutionCo
var stateName = fillBaseName + closestFillSprite; var stateName = fillBaseName + closestFillSprite;
if (fillSprite != null) if (fillSprite != null)
_sprite.LayerSetSprite((uid, args.Sprite), fillLayer, fillSprite); SpriteSystem.LayerSetSprite((uid, args.Sprite), fillLayer, fillSprite);
_sprite.LayerSetRsiState((uid, args.Sprite), fillLayer, stateName); SpriteSystem.LayerSetRsiState((uid, args.Sprite), fillLayer, stateName);
if (changeColor && AppearanceSystem.TryGetData<Color>(uid, SolutionContainerVisuals.Color, out var color, args.Component)) if (changeColor && AppearanceSystem.TryGetData<Color>(uid, SolutionContainerVisuals.Color, out var color, args.Component))
_sprite.LayerSetColor((uid, args.Sprite), fillLayer, color); SpriteSystem.LayerSetColor((uid, args.Sprite), fillLayer, color);
else else
_sprite.LayerSetColor((uid, args.Sprite), fillLayer, Color.White); SpriteSystem.LayerSetColor((uid, args.Sprite), fillLayer, Color.White);
} }
else else
{ {
if (component.EmptySpriteName == null) if (component.EmptySpriteName == null)
_sprite.LayerSetVisible((uid, args.Sprite), fillLayer, false); SpriteSystem.LayerSetVisible((uid, args.Sprite), fillLayer, false);
else else
{ {
_sprite.LayerSetRsiState((uid, args.Sprite), fillLayer, component.EmptySpriteName); SpriteSystem.LayerSetRsiState((uid, args.Sprite), fillLayer, component.EmptySpriteName);
if (changeColor) if (changeColor)
_sprite.LayerSetColor((uid, args.Sprite), fillLayer, component.EmptySpriteColor); SpriteSystem.LayerSetColor((uid, args.Sprite), fillLayer, component.EmptySpriteColor);
else else
_sprite.LayerSetColor((uid, args.Sprite), fillLayer, Color.White); SpriteSystem.LayerSetColor((uid, args.Sprite), fillLayer, Color.White);
} }
} }

View File

@@ -27,7 +27,6 @@ namespace Content.Client.Damage;
public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponent> public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponent>
{ {
[Dependency] private readonly IPrototypeManager _prototypeManager = default!; [Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly SpriteSystem _sprite = default!;
public override void Initialize() public override void Initialize()
{ {
@@ -229,7 +228,7 @@ public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponen
// the layer key just doesn't exist, we skip it. // the layer key just doesn't exist, we skip it.
foreach (var key in damageVisComp.TargetLayers) foreach (var key in damageVisComp.TargetLayers)
{ {
if (!_sprite.LayerMapTryGet((entity, spriteComponent), key, out var index, false)) if (!SpriteSystem.LayerMapTryGet((entity, spriteComponent), key, out var index, false))
{ {
Log.Warning($"Layer at key {key} was invalid for entity {entity}."); Log.Warning($"Layer at key {key} was invalid for entity {entity}.");
continue; continue;
@@ -254,7 +253,7 @@ public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponen
foreach (var layer in damageVisComp.TargetLayerMapKeys) foreach (var layer in damageVisComp.TargetLayerMapKeys)
{ {
var layerCount = spriteComponent.AllLayers.Count(); var layerCount = spriteComponent.AllLayers.Count();
var index = _sprite.LayerMapGet((entity, spriteComponent), layer); var index = SpriteSystem.LayerMapGet((entity, spriteComponent), layer);
// var layerState = spriteComponent.LayerGetState(index).ToString()!; // var layerState = spriteComponent.LayerGetState(index).ToString()!;
if (index + 1 != layerCount) if (index + 1 != layerCount)
@@ -325,17 +324,17 @@ public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponen
/// </summary> /// </summary>
private void AddDamageLayerToSprite(Entity<SpriteComponent?> spriteEnt, DamageVisualizerSprite sprite, string state, string mapKey, int? index = null) private void AddDamageLayerToSprite(Entity<SpriteComponent?> spriteEnt, DamageVisualizerSprite sprite, string state, string mapKey, int? index = null)
{ {
var newLayer = _sprite.AddLayer( var newLayer = SpriteSystem.AddLayer(
spriteEnt, spriteEnt,
new SpriteSpecifier.Rsi( new SpriteSpecifier.Rsi(
new(sprite.Sprite), state new(sprite.Sprite), state
), ),
index index
); );
_sprite.LayerMapSet(spriteEnt, mapKey, newLayer); SpriteSystem.LayerMapSet(spriteEnt, mapKey, newLayer);
if (sprite.Color != null) if (sprite.Color != null)
_sprite.LayerSetColor(spriteEnt, newLayer, Color.FromHex(sprite.Color)); SpriteSystem.LayerSetColor(spriteEnt, newLayer, Color.FromHex(sprite.Color));
_sprite.LayerSetVisible(spriteEnt, newLayer, false); SpriteSystem.LayerSetVisible(spriteEnt, newLayer, false);
} }
protected override void OnAppearanceChange(EntityUid uid, DamageVisualsComponent damageVisComp, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, DamageVisualsComponent damageVisComp, ref AppearanceChangeEvent args)
@@ -410,7 +409,7 @@ public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponen
damageVisComp.DisabledLayers[layer] = disabled; damageVisComp.DisabledLayers[layer] = disabled;
if (damageVisComp.TrackAllDamage) if (damageVisComp.TrackAllDamage)
{ {
_sprite.LayerSetVisible((uid, spriteComponent), $"{layer}trackDamage", !disabled); SpriteSystem.LayerSetVisible((uid, spriteComponent), $"{layer}trackDamage", !disabled);
continue; continue;
} }
@@ -419,7 +418,7 @@ public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponen
foreach (var damageGroup in damageVisComp.DamageOverlayGroups.Keys) foreach (var damageGroup in damageVisComp.DamageOverlayGroups.Keys)
{ {
_sprite.LayerSetVisible((uid, spriteComponent), $"{layer}{damageGroup}", !disabled); SpriteSystem.LayerSetVisible((uid, spriteComponent), $"{layer}{damageGroup}", !disabled);
} }
} }
} }
@@ -462,20 +461,20 @@ public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponen
private void ReorderOverlaySprite(Entity<SpriteComponent> spriteEnt, DamageVisualsComponent damageVisComp, DamageVisualizerSprite sprite, string key, string statePrefix, FixedPoint2 threshold) private void ReorderOverlaySprite(Entity<SpriteComponent> spriteEnt, DamageVisualsComponent damageVisComp, DamageVisualizerSprite sprite, string key, string statePrefix, FixedPoint2 threshold)
{ {
_sprite.LayerMapTryGet(spriteEnt.AsNullable(), key, out var spriteLayer, false); SpriteSystem.LayerMapTryGet(spriteEnt.AsNullable(), key, out var spriteLayer, false);
var visibility = spriteEnt.Comp[spriteLayer].Visible; var visibility = spriteEnt.Comp[spriteLayer].Visible;
_sprite.RemoveLayer(spriteEnt.AsNullable(), spriteLayer); SpriteSystem.RemoveLayer(spriteEnt.AsNullable(), spriteLayer);
if (threshold == FixedPoint2.Zero) // these should automatically be invisible if (threshold == FixedPoint2.Zero) // these should automatically be invisible
threshold = damageVisComp.Thresholds[1]; threshold = damageVisComp.Thresholds[1];
spriteLayer = _sprite.AddLayer( spriteLayer = SpriteSystem.AddLayer(
spriteEnt.AsNullable(), spriteEnt.AsNullable(),
new SpriteSpecifier.Rsi( new SpriteSpecifier.Rsi(
new(sprite.Sprite), new(sprite.Sprite),
$"{statePrefix}_{threshold}" $"{statePrefix}_{threshold}"
), ),
spriteLayer); spriteLayer);
_sprite.LayerMapSet(spriteEnt.AsNullable(), key, spriteLayer); SpriteSystem.LayerMapSet(spriteEnt.AsNullable(), key, spriteLayer);
_sprite.LayerSetVisible(spriteEnt.AsNullable(), spriteLayer, visibility); SpriteSystem.LayerSetVisible(spriteEnt.AsNullable(), spriteLayer, visibility);
// this is somewhat iffy since it constantly reallocates // this is somewhat iffy since it constantly reallocates
damageVisComp.TopMostLayerKey = key; damageVisComp.TopMostLayerKey = key;
} }
@@ -610,7 +609,7 @@ public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponen
if (!damageVisComp.DisabledLayers[layerMapKey]) if (!damageVisComp.DisabledLayers[layerMapKey])
{ {
var layerState = damageVisComp.LayerMapKeyStates[layerMapKey]; var layerState = damageVisComp.LayerMapKeyStates[layerMapKey];
_sprite.LayerMapTryGet(spriteEnt.AsNullable(), $"{layerMapKey}trackDamage", out var spriteLayer, false); SpriteSystem.LayerMapTryGet(spriteEnt.AsNullable(), $"{layerMapKey}trackDamage", out var spriteLayer, false);
UpdateDamageLayerState(spriteEnt, UpdateDamageLayerState(spriteEnt,
spriteLayer, spriteLayer,
@@ -621,7 +620,7 @@ public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponen
else if (!damageVisComp.Overlay) else if (!damageVisComp.Overlay)
{ {
var layerState = damageVisComp.LayerMapKeyStates[layerMapKey]; var layerState = damageVisComp.LayerMapKeyStates[layerMapKey];
_sprite.LayerMapTryGet(spriteEnt.AsNullable(), $"{layerMapKey}", out var spriteLayer, false); SpriteSystem.LayerMapTryGet(spriteEnt.AsNullable(), $"{layerMapKey}", out var spriteLayer, false);
UpdateDamageLayerState(spriteEnt, UpdateDamageLayerState(spriteEnt,
spriteLayer, spriteLayer,
@@ -643,7 +642,7 @@ public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponen
if (damageVisComp.DamageOverlayGroups.ContainsKey(damageGroup) && !damageVisComp.DisabledLayers[layerMapKey]) if (damageVisComp.DamageOverlayGroups.ContainsKey(damageGroup) && !damageVisComp.DisabledLayers[layerMapKey])
{ {
var layerState = damageVisComp.LayerMapKeyStates[layerMapKey]; var layerState = damageVisComp.LayerMapKeyStates[layerMapKey];
_sprite.LayerMapTryGet((entity, spriteComponent), $"{layerMapKey}{damageGroup}", out var spriteLayer, false); SpriteSystem.LayerMapTryGet((entity, spriteComponent), $"{layerMapKey}{damageGroup}", out var spriteLayer, false);
UpdateDamageLayerState( UpdateDamageLayerState(
(entity, spriteComponent), (entity, spriteComponent),
@@ -655,7 +654,7 @@ public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponen
else if (!damageVisComp.Overlay) else if (!damageVisComp.Overlay)
{ {
var layerState = damageVisComp.LayerMapKeyStates[layerMapKey]; var layerState = damageVisComp.LayerMapKeyStates[layerMapKey];
_sprite.LayerMapTryGet((entity, spriteComponent), $"{layerMapKey}", out var spriteLayer, false); SpriteSystem.LayerMapTryGet((entity, spriteComponent), $"{layerMapKey}", out var spriteLayer, false);
UpdateDamageLayerState( UpdateDamageLayerState(
(entity, spriteComponent), (entity, spriteComponent),
@@ -670,7 +669,7 @@ public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponen
/// </summary> /// </summary>
private void UpdateOverlay(Entity<SpriteComponent> spriteEnt, FixedPoint2 threshold) private void UpdateOverlay(Entity<SpriteComponent> spriteEnt, FixedPoint2 threshold)
{ {
_sprite.LayerMapTryGet(spriteEnt.AsNullable(), $"DamageOverlay", out var spriteLayer, false); SpriteSystem.LayerMapTryGet(spriteEnt.AsNullable(), $"DamageOverlay", out var spriteLayer, false);
UpdateDamageLayerState(spriteEnt, UpdateDamageLayerState(spriteEnt,
spriteLayer, spriteLayer,
@@ -690,7 +689,7 @@ public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponen
{ {
if (damageVisComp.DamageOverlayGroups.ContainsKey(damageGroup)) if (damageVisComp.DamageOverlayGroups.ContainsKey(damageGroup))
{ {
_sprite.LayerMapTryGet((entity, spriteComponent), $"DamageOverlay{damageGroup}", out var spriteLayer, false); SpriteSystem.LayerMapTryGet((entity, spriteComponent), $"DamageOverlay{damageGroup}", out var spriteLayer, false);
UpdateDamageLayerState( UpdateDamageLayerState(
(entity, spriteComponent), (entity, spriteComponent),
@@ -711,15 +710,15 @@ public sealed class DamageVisualsSystem : VisualizerSystem<DamageVisualsComponen
{ {
if (threshold == 0) if (threshold == 0)
{ {
_sprite.LayerSetVisible(spriteEnt.AsNullable(), spriteLayer, false); SpriteSystem.LayerSetVisible(spriteEnt.AsNullable(), spriteLayer, false);
} }
else else
{ {
if (!spriteEnt.Comp[spriteLayer].Visible) if (!spriteEnt.Comp[spriteLayer].Visible)
{ {
_sprite.LayerSetVisible(spriteEnt.AsNullable(), spriteLayer, true); SpriteSystem.LayerSetVisible(spriteEnt.AsNullable(), spriteLayer, true);
} }
_sprite.LayerSetRsiState(spriteEnt.AsNullable(), spriteLayer, $"{statePrefix}_{threshold}"); SpriteSystem.LayerSetRsiState(spriteEnt.AsNullable(), spriteLayer, $"{statePrefix}_{threshold}");
} }
} }
} }

View File

@@ -6,8 +6,6 @@ namespace Content.Client.DamageState;
public sealed class DamageStateVisualizerSystem : VisualizerSystem<DamageStateVisualsComponent> public sealed class DamageStateVisualizerSystem : VisualizerSystem<DamageStateVisualsComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, DamageStateVisualsComponent component, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, DamageStateVisualsComponent component, ref AppearanceChangeEvent args)
{ {
var sprite = args.Sprite; var sprite = args.Sprite;
@@ -25,18 +23,18 @@ public sealed class DamageStateVisualizerSystem : VisualizerSystem<DamageStateVi
// Brain no worky rn so this was just easier. // Brain no worky rn so this was just easier.
foreach (var key in new[] { DamageStateVisualLayers.Base, DamageStateVisualLayers.BaseUnshaded }) foreach (var key in new[] { DamageStateVisualLayers.Base, DamageStateVisualLayers.BaseUnshaded })
{ {
if (!_sprite.LayerMapTryGet((uid, sprite), key, out _, false)) continue; if (!SpriteSystem.LayerMapTryGet((uid, sprite), key, out _, false)) continue;
_sprite.LayerSetVisible((uid, sprite), key, false); SpriteSystem.LayerSetVisible((uid, sprite), key, false);
} }
foreach (var (key, state) in layers) foreach (var (key, state) in layers)
{ {
// Inheritance moment. // Inheritance moment.
if (!_sprite.LayerMapTryGet((uid, sprite), key, out _, false)) continue; if (!SpriteSystem.LayerMapTryGet((uid, sprite), key, out _, false)) continue;
_sprite.LayerSetVisible((uid, sprite), key, true); SpriteSystem.LayerSetVisible((uid, sprite), key, true);
_sprite.LayerSetRsiState((uid, sprite), key, state); SpriteSystem.LayerSetRsiState((uid, sprite), key, state);
} }
// So they don't draw over mobs anymore // So they don't draw over mobs anymore
@@ -45,12 +43,12 @@ public sealed class DamageStateVisualizerSystem : VisualizerSystem<DamageStateVi
if (sprite.DrawDepth > (int)DrawDepth.DeadMobs) if (sprite.DrawDepth > (int)DrawDepth.DeadMobs)
{ {
component.OriginalDrawDepth = sprite.DrawDepth; component.OriginalDrawDepth = sprite.DrawDepth;
_sprite.SetDrawDepth((uid, sprite), (int)DrawDepth.DeadMobs); SpriteSystem.SetDrawDepth((uid, sprite), (int)DrawDepth.DeadMobs);
} }
} }
else if (component.OriginalDrawDepth != null) else if (component.OriginalDrawDepth != null)
{ {
_sprite.SetDrawDepth((uid, sprite), component.OriginalDrawDepth.Value); SpriteSystem.SetDrawDepth((uid, sprite), component.OriginalDrawDepth.Value);
component.OriginalDrawDepth = null; component.OriginalDrawDepth = null;
} }
} }

View File

@@ -11,7 +11,6 @@ namespace Content.Client.Electrocution;
public sealed class ElectrocutionHUDVisualizerSystem : VisualizerSystem<ElectrocutionHUDVisualsComponent> public sealed class ElectrocutionHUDVisualizerSystem : VisualizerSystem<ElectrocutionHUDVisualsComponent>
{ {
[Dependency] private readonly IPlayerManager _playerMan = default!; [Dependency] private readonly IPlayerManager _playerMan = default!;
[Dependency] private readonly SpriteSystem _sprite = default!;
public override void Initialize() public override void Initialize()
{ {
@@ -59,7 +58,7 @@ public sealed class ElectrocutionHUDVisualizerSystem : VisualizerSystem<Electroc
if (!AppearanceSystem.TryGetData<bool>(uid, ElectrifiedVisuals.IsElectrified, out var electrified, appearanceComp)) if (!AppearanceSystem.TryGetData<bool>(uid, ElectrifiedVisuals.IsElectrified, out var electrified, appearanceComp))
continue; continue;
_sprite.LayerSetVisible((uid, spriteComp), ElectrifiedLayers.HUD, electrified); SpriteSystem.LayerSetVisible((uid, spriteComp), ElectrifiedLayers.HUD, electrified);
} }
} }
@@ -70,7 +69,7 @@ public sealed class ElectrocutionHUDVisualizerSystem : VisualizerSystem<Electroc
var electrifiedQuery = AllEntityQuery<ElectrocutionHUDVisualsComponent, AppearanceComponent, SpriteComponent>(); var electrifiedQuery = AllEntityQuery<ElectrocutionHUDVisualsComponent, AppearanceComponent, SpriteComponent>();
while (electrifiedQuery.MoveNext(out var uid, out _, out _, out var spriteComp)) while (electrifiedQuery.MoveNext(out var uid, out _, out _, out var spriteComp))
{ {
_sprite.LayerSetVisible((uid, spriteComp), ElectrifiedLayers.HUD, false); SpriteSystem.LayerSetVisible((uid, spriteComp), ElectrifiedLayers.HUD, false);
} }
} }
@@ -84,6 +83,6 @@ public sealed class ElectrocutionHUDVisualizerSystem : VisualizerSystem<Electroc
return; return;
var player = _playerMan.LocalEntity; var player = _playerMan.LocalEntity;
_sprite.LayerSetVisible((uid, args.Sprite), ElectrifiedLayers.HUD, electrified && HasComp<ShowElectrocutionHUDComponent>(player)); SpriteSystem.LayerSetVisible((uid, args.Sprite), ElectrifiedLayers.HUD, electrified && HasComp<ShowElectrocutionHUDComponent>(player));
} }
} }

View File

@@ -6,8 +6,6 @@ namespace Content.Client.Light.EntitySystems;
public sealed class EmergencyLightSystem : VisualizerSystem<EmergencyLightComponent> public sealed class EmergencyLightSystem : VisualizerSystem<EmergencyLightComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, EmergencyLightComponent comp, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, EmergencyLightComponent comp, ref AppearanceChangeEvent args)
{ {
if (args.Sprite == null) if (args.Sprite == null)
@@ -16,13 +14,13 @@ public sealed class EmergencyLightSystem : VisualizerSystem<EmergencyLightCompon
if (!AppearanceSystem.TryGetData<bool>(uid, EmergencyLightVisuals.On, out var on, args.Component)) if (!AppearanceSystem.TryGetData<bool>(uid, EmergencyLightVisuals.On, out var on, args.Component))
on = false; on = false;
_sprite.LayerSetVisible((uid, args.Sprite), EmergencyLightVisualLayers.LightOff, !on); SpriteSystem.LayerSetVisible((uid, args.Sprite), EmergencyLightVisualLayers.LightOff, !on);
_sprite.LayerSetVisible((uid, args.Sprite), EmergencyLightVisualLayers.LightOn, on); SpriteSystem.LayerSetVisible((uid, args.Sprite), EmergencyLightVisualLayers.LightOn, on);
if (AppearanceSystem.TryGetData<Color>(uid, EmergencyLightVisuals.Color, out var color, args.Component)) if (AppearanceSystem.TryGetData<Color>(uid, EmergencyLightVisuals.Color, out var color, args.Component))
{ {
_sprite.LayerSetColor((uid, args.Sprite), EmergencyLightVisualLayers.LightOn, color); SpriteSystem.LayerSetColor((uid, args.Sprite), EmergencyLightVisualLayers.LightOn, color);
_sprite.LayerSetColor((uid, args.Sprite), EmergencyLightVisualLayers.LightOff, color); SpriteSystem.LayerSetColor((uid, args.Sprite), EmergencyLightVisualLayers.LightOff, color);
} }
} }
} }

View File

@@ -10,7 +10,6 @@ public sealed class ExpendableLightSystem : VisualizerSystem<ExpendableLightComp
[Dependency] private readonly PointLightSystem _pointLightSystem = default!; [Dependency] private readonly PointLightSystem _pointLightSystem = default!;
[Dependency] private readonly SharedAudioSystem _audioSystem = default!; [Dependency] private readonly SharedAudioSystem _audioSystem = default!;
[Dependency] private readonly LightBehaviorSystem _lightBehavior = default!; [Dependency] private readonly LightBehaviorSystem _lightBehavior = default!;
[Dependency] private readonly SpriteSystem _sprite = default!;
public override void Initialize() public override void Initialize()
{ {
@@ -54,37 +53,37 @@ public sealed class ExpendableLightSystem : VisualizerSystem<ExpendableLightComp
comp.PlayingStream = _audioSystem.PlayPvs( comp.PlayingStream = _audioSystem.PlayPvs(
comp.LoopedSound, uid)?.Entity; comp.LoopedSound, uid)?.Entity;
if (_sprite.LayerMapTryGet((uid, args.Sprite), ExpendableLightVisualLayers.Overlay, out var layerIdx, true)) if (SpriteSystem.LayerMapTryGet((uid, args.Sprite), ExpendableLightVisualLayers.Overlay, out var layerIdx, true))
{ {
if (!string.IsNullOrWhiteSpace(comp.IconStateLit)) if (!string.IsNullOrWhiteSpace(comp.IconStateLit))
_sprite.LayerSetRsiState((uid, args.Sprite), layerIdx, comp.IconStateLit); SpriteSystem.LayerSetRsiState((uid, args.Sprite), layerIdx, comp.IconStateLit);
if (!string.IsNullOrWhiteSpace(comp.SpriteShaderLit)) if (!string.IsNullOrWhiteSpace(comp.SpriteShaderLit))
args.Sprite.LayerSetShader(layerIdx, comp.SpriteShaderLit); args.Sprite.LayerSetShader(layerIdx, comp.SpriteShaderLit);
else else
args.Sprite.LayerSetShader(layerIdx, null, null); args.Sprite.LayerSetShader(layerIdx, null, null);
if (comp.GlowColorLit.HasValue) if (comp.GlowColorLit.HasValue)
_sprite.LayerSetColor((uid, args.Sprite), layerIdx, comp.GlowColorLit.Value); SpriteSystem.LayerSetColor((uid, args.Sprite), layerIdx, comp.GlowColorLit.Value);
_sprite.LayerSetVisible((uid, args.Sprite), layerIdx, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), layerIdx, true);
} }
if (comp.GlowColorLit.HasValue) if (comp.GlowColorLit.HasValue)
_sprite.LayerSetColor((uid, args.Sprite), ExpendableLightVisualLayers.Glow, comp.GlowColorLit.Value); SpriteSystem.LayerSetColor((uid, args.Sprite), ExpendableLightVisualLayers.Glow, comp.GlowColorLit.Value);
_sprite.LayerSetVisible((uid, args.Sprite), ExpendableLightVisualLayers.Glow, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), ExpendableLightVisualLayers.Glow, true);
break; break;
case ExpendableLightState.Dead: case ExpendableLightState.Dead:
comp.PlayingStream = _audioSystem.Stop(comp.PlayingStream); comp.PlayingStream = _audioSystem.Stop(comp.PlayingStream);
if (_sprite.LayerMapTryGet((uid, args.Sprite), ExpendableLightVisualLayers.Overlay, out layerIdx, true)) if (SpriteSystem.LayerMapTryGet((uid, args.Sprite), ExpendableLightVisualLayers.Overlay, out layerIdx, true))
{ {
if (!string.IsNullOrWhiteSpace(comp.IconStateSpent)) if (!string.IsNullOrWhiteSpace(comp.IconStateSpent))
_sprite.LayerSetRsiState((uid, args.Sprite), layerIdx, comp.IconStateSpent); SpriteSystem.LayerSetRsiState((uid, args.Sprite), layerIdx, comp.IconStateSpent);
if (!string.IsNullOrWhiteSpace(comp.SpriteShaderSpent)) if (!string.IsNullOrWhiteSpace(comp.SpriteShaderSpent))
args.Sprite.LayerSetShader(layerIdx, comp.SpriteShaderSpent); args.Sprite.LayerSetShader(layerIdx, comp.SpriteShaderSpent);
else else
args.Sprite.LayerSetShader(layerIdx, null, null); args.Sprite.LayerSetShader(layerIdx, null, null);
} }
_sprite.LayerSetVisible((uid, args.Sprite), ExpendableLightVisualLayers.Glow, false); SpriteSystem.LayerSetVisible((uid, args.Sprite), ExpendableLightVisualLayers.Glow, false);
break; break;
} }
} }

View File

@@ -5,8 +5,6 @@ namespace Content.Client.Light.Visualizers;
public sealed class LightBulbSystem : VisualizerSystem<LightBulbComponent> public sealed class LightBulbSystem : VisualizerSystem<LightBulbComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, LightBulbComponent comp, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, LightBulbComponent comp, ref AppearanceChangeEvent args)
{ {
if (args.Sprite == null) if (args.Sprite == null)
@@ -18,13 +16,13 @@ public sealed class LightBulbSystem : VisualizerSystem<LightBulbComponent>
switch (state) switch (state)
{ {
case LightBulbState.Normal: case LightBulbState.Normal:
_sprite.LayerSetRsiState((uid, args.Sprite), LightBulbVisualLayers.Base, comp.NormalSpriteState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), LightBulbVisualLayers.Base, comp.NormalSpriteState);
break; break;
case LightBulbState.Broken: case LightBulbState.Broken:
_sprite.LayerSetRsiState((uid, args.Sprite), LightBulbVisualLayers.Base, comp.BrokenSpriteState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), LightBulbVisualLayers.Base, comp.BrokenSpriteState);
break; break;
case LightBulbState.Burned: case LightBulbState.Burned:
_sprite.LayerSetRsiState((uid, args.Sprite), LightBulbVisualLayers.Base, comp.BurnedSpriteState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), LightBulbVisualLayers.Base, comp.BurnedSpriteState);
break; break;
} }
} }
@@ -32,7 +30,7 @@ public sealed class LightBulbSystem : VisualizerSystem<LightBulbComponent>
// also update sprites color // also update sprites color
if (AppearanceSystem.TryGetData<Color>(uid, LightBulbVisuals.Color, out var color, args.Component)) if (AppearanceSystem.TryGetData<Color>(uid, LightBulbVisuals.Color, out var color, args.Component))
{ {
_sprite.SetColor((uid, args.Sprite), color); SpriteSystem.SetColor((uid, args.Sprite), color);
} }
} }
} }

View File

@@ -11,7 +11,6 @@ public sealed class PoweredLightVisualizerSystem : VisualizerSystem<PoweredLight
{ {
[Dependency] private readonly IRobustRandom _random = default!; [Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly SharedAudioSystem _audio = default!; [Dependency] private readonly SharedAudioSystem _audio = default!;
[Dependency] private readonly SpriteSystem _sprite = default!;
public override void Initialize() public override void Initialize()
{ {
@@ -28,16 +27,16 @@ public sealed class PoweredLightVisualizerSystem : VisualizerSystem<PoweredLight
return; return;
if (comp.SpriteStateMap.TryGetValue(state, out var spriteState)) if (comp.SpriteStateMap.TryGetValue(state, out var spriteState))
_sprite.LayerSetRsiState((uid, args.Sprite), PoweredLightLayers.Base, spriteState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), PoweredLightLayers.Base, spriteState);
if (_sprite.LayerExists((uid, args.Sprite), PoweredLightLayers.Glow)) if (SpriteSystem.LayerExists((uid, args.Sprite), PoweredLightLayers.Glow))
{ {
if (TryComp<PointLightComponent>(uid, out var light)) if (TryComp<PointLightComponent>(uid, out var light))
{ {
_sprite.LayerSetColor((uid, args.Sprite), PoweredLightLayers.Glow, light.Color); SpriteSystem.LayerSetColor((uid, args.Sprite), PoweredLightLayers.Glow, light.Color);
} }
_sprite.LayerSetVisible((uid, args.Sprite), PoweredLightLayers.Glow, state == PoweredLightState.On); SpriteSystem.LayerSetVisible((uid, args.Sprite), PoweredLightLayers.Glow, state == PoweredLightState.On);
} }
SetBlinkingAnimation( SetBlinkingAnimation(

View File

@@ -6,8 +6,6 @@ namespace Content.Client.Lock.Visualizers;
public sealed class LockVisualizerSystem : VisualizerSystem<LockVisualsComponent> public sealed class LockVisualizerSystem : VisualizerSystem<LockVisualsComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, LockVisualsComponent comp, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, LockVisualsComponent comp, ref AppearanceChangeEvent args)
{ {
if (args.Sprite == null if (args.Sprite == null
@@ -22,14 +20,14 @@ public sealed class LockVisualizerSystem : VisualizerSystem<LockVisualsComponent
if (AppearanceSystem.TryGetData<bool>(uid, StorageVisuals.Open, out var open, args.Component)) if (AppearanceSystem.TryGetData<bool>(uid, StorageVisuals.Open, out var open, args.Component))
{ {
_sprite.LayerSetVisible((uid, args.Sprite), LockVisualLayers.Lock, !open); SpriteSystem.LayerSetVisible((uid, args.Sprite), LockVisualLayers.Lock, !open);
} }
else if (!(bool)unlockedStateExist!) else if (!(bool)unlockedStateExist!)
_sprite.LayerSetVisible((uid, args.Sprite), LockVisualLayers.Lock, locked); SpriteSystem.LayerSetVisible((uid, args.Sprite), LockVisualLayers.Lock, locked);
if (!open && (bool)unlockedStateExist!) if (!open && (bool)unlockedStateExist!)
{ {
_sprite.LayerSetRsiState((uid, args.Sprite), LockVisualLayers.Lock, locked ? comp.StateLocked : comp.StateUnlocked); SpriteSystem.LayerSetRsiState((uid, args.Sprite), LockVisualLayers.Lock, locked ? comp.StateLocked : comp.StateUnlocked);
} }
} }
} }

View File

@@ -6,20 +6,19 @@ namespace Content.Client.PDA;
public sealed class PdaVisualizerSystem : VisualizerSystem<PdaVisualsComponent> public sealed class PdaVisualizerSystem : VisualizerSystem<PdaVisualsComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, PdaVisualsComponent comp, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, PdaVisualsComponent comp, ref AppearanceChangeEvent args)
{ {
if (args.Sprite == null) if (args.Sprite == null)
return; return;
if (AppearanceSystem.TryGetData<string>(uid, PdaVisuals.PdaType, out var pdaType, args.Component)) if (AppearanceSystem.TryGetData<string>(uid, PdaVisuals.PdaType, out var pdaType, args.Component))
_sprite.LayerSetRsiState((uid, args.Sprite), PdaVisualLayers.Base, pdaType); SpriteSystem.LayerSetRsiState((uid, args.Sprite), PdaVisualLayers.Base, pdaType);
if (AppearanceSystem.TryGetData<bool>(uid, UnpoweredFlashlightVisuals.LightOn, out var isFlashlightOn, args.Component)) if (AppearanceSystem.TryGetData<bool>(uid, UnpoweredFlashlightVisuals.LightOn, out var isFlashlightOn, args.Component))
_sprite.LayerSetVisible((uid, args.Sprite), PdaVisualLayers.Flashlight, isFlashlightOn); SpriteSystem.LayerSetVisible((uid, args.Sprite), PdaVisualLayers.Flashlight, isFlashlightOn);
if (AppearanceSystem.TryGetData<bool>(uid, PdaVisuals.IdCardInserted, out var isCardInserted, args.Component)) if (AppearanceSystem.TryGetData<bool>(uid, PdaVisuals.IdCardInserted, out var isCardInserted, args.Component))
_sprite.LayerSetVisible((uid, args.Sprite), PdaVisualLayers.IdLight, isCardInserted); SpriteSystem.LayerSetVisible((uid, args.Sprite), PdaVisualLayers.IdLight, isCardInserted);
} }
public enum PdaVisualLayers : byte public enum PdaVisualLayers : byte

View File

@@ -5,8 +5,6 @@ namespace Content.Client.Paper;
public sealed class EnvelopeSystem : VisualizerSystem<EnvelopeComponent> public sealed class EnvelopeSystem : VisualizerSystem<EnvelopeComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
public override void Initialize() public override void Initialize()
{ {
base.Initialize(); base.Initialize();
@@ -23,9 +21,9 @@ public sealed class EnvelopeSystem : VisualizerSystem<EnvelopeComponent>
if (!Resolve(ent.Owner, ref sprite)) if (!Resolve(ent.Owner, ref sprite))
return; return;
_sprite.LayerSetVisible((ent.Owner, sprite), EnvelopeVisualLayers.Open, ent.Comp.State == EnvelopeComponent.EnvelopeState.Open); SpriteSystem.LayerSetVisible((ent.Owner, sprite), EnvelopeVisualLayers.Open, ent.Comp.State == EnvelopeComponent.EnvelopeState.Open);
_sprite.LayerSetVisible((ent.Owner, sprite), EnvelopeVisualLayers.Sealed, ent.Comp.State == EnvelopeComponent.EnvelopeState.Sealed); SpriteSystem.LayerSetVisible((ent.Owner, sprite), EnvelopeVisualLayers.Sealed, ent.Comp.State == EnvelopeComponent.EnvelopeState.Sealed);
_sprite.LayerSetVisible((ent.Owner, sprite), EnvelopeVisualLayers.Torn, ent.Comp.State == EnvelopeComponent.EnvelopeState.Torn); SpriteSystem.LayerSetVisible((ent.Owner, sprite), EnvelopeVisualLayers.Torn, ent.Comp.State == EnvelopeComponent.EnvelopeState.Torn);
} }
public enum EnvelopeVisualLayers : byte public enum EnvelopeVisualLayers : byte

View File

@@ -6,26 +6,24 @@ namespace Content.Client.Paper.UI;
public sealed class PaperVisualizerSystem : VisualizerSystem<PaperVisualsComponent> public sealed class PaperVisualizerSystem : VisualizerSystem<PaperVisualsComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, PaperVisualsComponent component, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, PaperVisualsComponent component, ref AppearanceChangeEvent args)
{ {
if (args.Sprite == null) if (args.Sprite == null)
return; return;
if (AppearanceSystem.TryGetData<PaperStatus>(uid, PaperVisuals.Status, out var writingStatus, args.Component)) if (AppearanceSystem.TryGetData<PaperStatus>(uid, PaperVisuals.Status, out var writingStatus, args.Component))
_sprite.LayerSetVisible((uid, args.Sprite), PaperVisualLayers.Writing, writingStatus == PaperStatus.Written); SpriteSystem.LayerSetVisible((uid, args.Sprite), PaperVisualLayers.Writing, writingStatus == PaperStatus.Written);
if (AppearanceSystem.TryGetData<string>(uid, PaperVisuals.Stamp, out var stampState, args.Component)) if (AppearanceSystem.TryGetData<string>(uid, PaperVisuals.Stamp, out var stampState, args.Component))
{ {
if (stampState != string.Empty) if (stampState != string.Empty)
{ {
_sprite.LayerSetRsiState((uid, args.Sprite), PaperVisualLayers.Stamp, stampState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), PaperVisualLayers.Stamp, stampState);
_sprite.LayerSetVisible((uid, args.Sprite), PaperVisualLayers.Stamp, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), PaperVisualLayers.Stamp, true);
} }
else else
{ {
_sprite.LayerSetVisible((uid, args.Sprite), PaperVisualLayers.Stamp, false); SpriteSystem.LayerSetVisible((uid, args.Sprite), PaperVisualLayers.Stamp, false);
} }
} }

View File

@@ -5,14 +5,12 @@ namespace Content.Client.ParticleAccelerator;
public sealed class ParticleAcceleratorPartVisualizerSystem : VisualizerSystem<ParticleAcceleratorPartVisualsComponent> public sealed class ParticleAcceleratorPartVisualizerSystem : VisualizerSystem<ParticleAcceleratorPartVisualsComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, ParticleAcceleratorPartVisualsComponent comp, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, ParticleAcceleratorPartVisualsComponent comp, ref AppearanceChangeEvent args)
{ {
if (args.Sprite == null) if (args.Sprite == null)
return; return;
if (!_sprite.LayerMapTryGet((uid, args.Sprite), ParticleAcceleratorVisualLayers.Unlit, out var index, false)) if (!SpriteSystem.LayerMapTryGet((uid, args.Sprite), ParticleAcceleratorVisualLayers.Unlit, out var index, false))
return; return;
if (!AppearanceSystem.TryGetData<ParticleAcceleratorVisualState>(uid, ParticleAcceleratorVisuals.VisualState, out var state, args.Component)) if (!AppearanceSystem.TryGetData<ParticleAcceleratorVisualState>(uid, ParticleAcceleratorVisuals.VisualState, out var state, args.Component))
@@ -22,12 +20,12 @@ public sealed class ParticleAcceleratorPartVisualizerSystem : VisualizerSystem<P
if (state != ParticleAcceleratorVisualState.Unpowered) if (state != ParticleAcceleratorVisualState.Unpowered)
{ {
_sprite.LayerSetVisible((uid, args.Sprite), index, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), index, true);
_sprite.LayerSetRsiState((uid, args.Sprite), index, comp.StateBase + comp.StatesSuffixes[state]); SpriteSystem.LayerSetRsiState((uid, args.Sprite), index, comp.StateBase + comp.StatesSuffixes[state]);
} }
else else
{ {
_sprite.LayerSetVisible((uid, args.Sprite), index, false); SpriteSystem.LayerSetVisible((uid, args.Sprite), index, false);
} }
} }
} }

View File

@@ -6,7 +6,6 @@ namespace Content.Client.Power.APC;
public sealed class ApcVisualizerSystem : VisualizerSystem<ApcVisualsComponent> public sealed class ApcVisualizerSystem : VisualizerSystem<ApcVisualsComponent>
{ {
[Dependency] private readonly SharedPointLightSystem _lights = default!; [Dependency] private readonly SharedPointLightSystem _lights = default!;
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, ApcVisualsComponent comp, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, ApcVisualsComponent comp, ref AppearanceChangeEvent args)
{ {
@@ -14,8 +13,8 @@ public sealed class ApcVisualizerSystem : VisualizerSystem<ApcVisualsComponent>
return; return;
// get the mapped layer index of the first lock layer and the first channel layer // get the mapped layer index of the first lock layer and the first channel layer
var lockIndicatorOverlayStart = _sprite.LayerMapGet((uid, args.Sprite), ApcVisualLayers.InterfaceLock); var lockIndicatorOverlayStart = SpriteSystem.LayerMapGet((uid, args.Sprite), ApcVisualLayers.InterfaceLock);
var channelIndicatorOverlayStart = _sprite.LayerMapGet((uid, args.Sprite), ApcVisualLayers.Equipment); var channelIndicatorOverlayStart = SpriteSystem.LayerMapGet((uid, args.Sprite), ApcVisualLayers.Equipment);
// Handle APC screen overlay: // Handle APC screen overlay:
if (!AppearanceSystem.TryGetData<ApcChargeState>(uid, ApcVisuals.ChargeState, out var chargeState, args.Component)) if (!AppearanceSystem.TryGetData<ApcChargeState>(uid, ApcVisuals.ChargeState, out var chargeState, args.Component))
@@ -23,7 +22,7 @@ public sealed class ApcVisualizerSystem : VisualizerSystem<ApcVisualsComponent>
if (chargeState >= 0 && chargeState < ApcChargeState.NumStates) if (chargeState >= 0 && chargeState < ApcChargeState.NumStates)
{ {
_sprite.LayerSetRsiState((uid, args.Sprite), ApcVisualLayers.ChargeState, $"{comp.ScreenPrefix}-{comp.ScreenSuffixes[(sbyte)chargeState]}"); SpriteSystem.LayerSetRsiState((uid, args.Sprite), ApcVisualLayers.ChargeState, $"{comp.ScreenPrefix}-{comp.ScreenSuffixes[(sbyte)chargeState]}");
// LockState does nothing currently. The backend doesn't exist. // LockState does nothing currently. The backend doesn't exist.
if (AppearanceSystem.TryGetData<byte>(uid, ApcVisuals.LockState, out var lockStates, args.Component)) if (AppearanceSystem.TryGetData<byte>(uid, ApcVisuals.LockState, out var lockStates, args.Component))
@@ -32,8 +31,8 @@ public sealed class ApcVisualizerSystem : VisualizerSystem<ApcVisualsComponent>
{ {
var layer = (byte)lockIndicatorOverlayStart + i; var layer = (byte)lockIndicatorOverlayStart + i;
var lockState = (sbyte)((lockStates >> (i << (sbyte)ApcLockState.LogWidth)) & (sbyte)ApcLockState.All); var lockState = (sbyte)((lockStates >> (i << (sbyte)ApcLockState.LogWidth)) & (sbyte)ApcLockState.All);
_sprite.LayerSetRsiState((uid, args.Sprite), layer, $"{comp.LockPrefix}{i}-{comp.LockSuffixes[lockState]}"); SpriteSystem.LayerSetRsiState((uid, args.Sprite), layer, $"{comp.LockPrefix}{i}-{comp.LockSuffixes[lockState]}");
_sprite.LayerSetVisible((uid, args.Sprite), layer, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), layer, true);
} }
} }
@@ -44,8 +43,8 @@ public sealed class ApcVisualizerSystem : VisualizerSystem<ApcVisualsComponent>
{ {
var layer = (byte)channelIndicatorOverlayStart + i; var layer = (byte)channelIndicatorOverlayStart + i;
var channelState = (sbyte)((channelStates >> (i << (sbyte)ApcChannelState.LogWidth)) & (sbyte)ApcChannelState.All); var channelState = (sbyte)((channelStates >> (i << (sbyte)ApcChannelState.LogWidth)) & (sbyte)ApcChannelState.All);
_sprite.LayerSetRsiState((uid, args.Sprite), layer, $"{comp.ChannelPrefix}{i}-{comp.ChannelSuffixes[channelState]}"); SpriteSystem.LayerSetRsiState((uid, args.Sprite), layer, $"{comp.ChannelPrefix}{i}-{comp.ChannelSuffixes[channelState]}");
_sprite.LayerSetVisible((uid, args.Sprite), layer, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), layer, true);
} }
} }
@@ -57,16 +56,16 @@ public sealed class ApcVisualizerSystem : VisualizerSystem<ApcVisualsComponent>
else else
{ {
/// Overrides all of the lock and channel indicators. /// Overrides all of the lock and channel indicators.
_sprite.LayerSetRsiState((uid, args.Sprite), ApcVisualLayers.ChargeState, comp.EmaggedScreenState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), ApcVisualLayers.ChargeState, comp.EmaggedScreenState);
for (var i = 0; i < comp.LockIndicators; ++i) for (var i = 0; i < comp.LockIndicators; ++i)
{ {
var layer = (byte)lockIndicatorOverlayStart + i; var layer = (byte)lockIndicatorOverlayStart + i;
_sprite.LayerSetVisible((uid, args.Sprite), layer, false); SpriteSystem.LayerSetVisible((uid, args.Sprite), layer, false);
} }
for (var i = 0; i < comp.ChannelIndicators; ++i) for (var i = 0; i < comp.ChannelIndicators; ++i)
{ {
var layer = (byte)channelIndicatorOverlayStart + i; var layer = (byte)channelIndicatorOverlayStart + i;
_sprite.LayerSetVisible((uid, args.Sprite), layer, false); SpriteSystem.LayerSetVisible((uid, args.Sprite), layer, false);
} }
if (TryComp<PointLightComponent>(uid, out var light)) if (TryComp<PointLightComponent>(uid, out var light))

View File

@@ -6,8 +6,6 @@ namespace Content.Client.Power.SMES;
public sealed class SmesVisualizerSystem : VisualizerSystem<SmesComponent> public sealed class SmesVisualizerSystem : VisualizerSystem<SmesComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, SmesComponent comp, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, SmesComponent comp, ref AppearanceChangeEvent args)
{ {
if (args.Sprite == null) if (args.Sprite == null)
@@ -15,12 +13,12 @@ public sealed class SmesVisualizerSystem : VisualizerSystem<SmesComponent>
if (!AppearanceSystem.TryGetData<int>(uid, SmesVisuals.LastChargeLevel, out var level, args.Component) || level == 0) if (!AppearanceSystem.TryGetData<int>(uid, SmesVisuals.LastChargeLevel, out var level, args.Component) || level == 0)
{ {
_sprite.LayerSetVisible((uid, args.Sprite), SmesVisualLayers.Charge, false); SpriteSystem.LayerSetVisible((uid, args.Sprite), SmesVisualLayers.Charge, false);
} }
else else
{ {
_sprite.LayerSetVisible((uid, args.Sprite), SmesVisualLayers.Charge, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), SmesVisualLayers.Charge, true);
_sprite.LayerSetRsiState((uid, args.Sprite), SmesVisualLayers.Charge, $"{comp.ChargeOverlayPrefix}{level}"); SpriteSystem.LayerSetRsiState((uid, args.Sprite), SmesVisualLayers.Charge, $"{comp.ChargeOverlayPrefix}{level}");
} }
if (!AppearanceSystem.TryGetData<ChargeState>(uid, SmesVisuals.LastChargeState, out var state, args.Component)) if (!AppearanceSystem.TryGetData<ChargeState>(uid, SmesVisuals.LastChargeState, out var state, args.Component))
@@ -29,16 +27,16 @@ public sealed class SmesVisualizerSystem : VisualizerSystem<SmesComponent>
switch (state) switch (state)
{ {
case ChargeState.Still: case ChargeState.Still:
_sprite.LayerSetRsiState((uid, args.Sprite), SmesVisualLayers.Input, $"{comp.InputOverlayPrefix}0"); SpriteSystem.LayerSetRsiState((uid, args.Sprite), SmesVisualLayers.Input, $"{comp.InputOverlayPrefix}0");
_sprite.LayerSetRsiState((uid, args.Sprite), SmesVisualLayers.Output, $"{comp.OutputOverlayPrefix}1"); SpriteSystem.LayerSetRsiState((uid, args.Sprite), SmesVisualLayers.Output, $"{comp.OutputOverlayPrefix}1");
break; break;
case ChargeState.Charging: case ChargeState.Charging:
_sprite.LayerSetRsiState((uid, args.Sprite), SmesVisualLayers.Input, $"{comp.InputOverlayPrefix}1"); SpriteSystem.LayerSetRsiState((uid, args.Sprite), SmesVisualLayers.Input, $"{comp.InputOverlayPrefix}1");
_sprite.LayerSetRsiState((uid, args.Sprite), SmesVisualLayers.Output, $"{comp.OutputOverlayPrefix}1"); SpriteSystem.LayerSetRsiState((uid, args.Sprite), SmesVisualLayers.Output, $"{comp.OutputOverlayPrefix}1");
break; break;
case ChargeState.Discharging: case ChargeState.Discharging:
_sprite.LayerSetRsiState((uid, args.Sprite), SmesVisualLayers.Input, $"{comp.InputOverlayPrefix}0"); SpriteSystem.LayerSetRsiState((uid, args.Sprite), SmesVisualLayers.Input, $"{comp.InputOverlayPrefix}0");
_sprite.LayerSetRsiState((uid, args.Sprite), SmesVisualLayers.Output, $"{comp.OutputOverlayPrefix}2"); SpriteSystem.LayerSetRsiState((uid, args.Sprite), SmesVisualLayers.Output, $"{comp.OutputOverlayPrefix}2");
break; break;
} }
} }

View File

@@ -5,8 +5,6 @@ namespace Content.Client.PowerCell;
public sealed class PowerChargerVisualizerSystem : VisualizerSystem<PowerChargerVisualsComponent> public sealed class PowerChargerVisualizerSystem : VisualizerSystem<PowerChargerVisualsComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, PowerChargerVisualsComponent comp, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, PowerChargerVisualsComponent comp, ref AppearanceChangeEvent args)
{ {
if (args.Sprite == null) if (args.Sprite == null)
@@ -16,22 +14,22 @@ public sealed class PowerChargerVisualizerSystem : VisualizerSystem<PowerCharger
if (AppearanceSystem.TryGetData<bool>(uid, CellVisual.Occupied, out var occupied, args.Component) && occupied) if (AppearanceSystem.TryGetData<bool>(uid, CellVisual.Occupied, out var occupied, args.Component) && occupied)
{ {
// TODO: don't throw if it doesn't have a full state // TODO: don't throw if it doesn't have a full state
_sprite.LayerSetRsiState((uid, args.Sprite), PowerChargerVisualLayers.Base, comp.OccupiedState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), PowerChargerVisualLayers.Base, comp.OccupiedState);
} }
else else
{ {
_sprite.LayerSetRsiState((uid, args.Sprite), PowerChargerVisualLayers.Base, comp.EmptyState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), PowerChargerVisualLayers.Base, comp.EmptyState);
} }
// Update lighting // Update lighting
if (AppearanceSystem.TryGetData<CellChargerStatus>(uid, CellVisual.Light, out var status, args.Component) if (AppearanceSystem.TryGetData<CellChargerStatus>(uid, CellVisual.Light, out var status, args.Component)
&& comp.LightStates.TryGetValue(status, out var lightState)) && comp.LightStates.TryGetValue(status, out var lightState))
{ {
_sprite.LayerSetRsiState((uid, args.Sprite), PowerChargerVisualLayers.Light, lightState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), PowerChargerVisualLayers.Light, lightState);
_sprite.LayerSetVisible((uid, args.Sprite), PowerChargerVisualLayers.Light, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), PowerChargerVisualLayers.Light, true);
} }
else else
_sprite.LayerSetVisible((uid, args.Sprite), PowerChargerVisualLayers.Light, false); SpriteSystem.LayerSetVisible((uid, args.Sprite), PowerChargerVisualLayers.Light, false);
} }
} }

View File

@@ -8,8 +8,6 @@ namespace Content.Client.Shuttles;
/// </summary> /// </summary>
public sealed class ThrusterSystem : VisualizerSystem<ThrusterComponent> public sealed class ThrusterSystem : VisualizerSystem<ThrusterComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
/// <summary> /// <summary>
/// Updates whether or not the thruster is visibly active/thrusting. /// Updates whether or not the thruster is visibly active/thrusting.
/// </summary> /// </summary>
@@ -19,7 +17,7 @@ public sealed class ThrusterSystem : VisualizerSystem<ThrusterComponent>
|| !AppearanceSystem.TryGetData<bool>(uid, ThrusterVisualState.State, out var state, args.Component)) || !AppearanceSystem.TryGetData<bool>(uid, ThrusterVisualState.State, out var state, args.Component))
return; return;
_sprite.LayerSetVisible((uid, args.Sprite), ThrusterVisualLayers.ThrustOn, state); SpriteSystem.LayerSetVisible((uid, args.Sprite), ThrusterVisualLayers.ThrustOn, state);
SetThrusting( SetThrusting(
uid, uid,
state && AppearanceSystem.TryGetData<bool>(uid, ThrusterVisualState.Thrusting, out var thrusting, args.Component) && thrusting, state && AppearanceSystem.TryGetData<bool>(uid, ThrusterVisualState.Thrusting, out var thrusting, args.Component) && thrusting,
@@ -32,14 +30,14 @@ public sealed class ThrusterSystem : VisualizerSystem<ThrusterComponent>
/// </summary> /// </summary>
private void SetThrusting(EntityUid uid, bool value, SpriteComponent sprite) private void SetThrusting(EntityUid uid, bool value, SpriteComponent sprite)
{ {
if (_sprite.LayerMapTryGet((uid, sprite), ThrusterVisualLayers.Thrusting, out var thrustingLayer, false)) if (SpriteSystem.LayerMapTryGet((uid, sprite), ThrusterVisualLayers.Thrusting, out var thrustingLayer, false))
{ {
_sprite.LayerSetVisible((uid, sprite), thrustingLayer, value); SpriteSystem.LayerSetVisible((uid, sprite), thrustingLayer, value);
} }
if (_sprite.LayerMapTryGet((uid, sprite), ThrusterVisualLayers.ThrustingUnshaded, out var unshadedLayer, false)) if (SpriteSystem.LayerMapTryGet((uid, sprite), ThrusterVisualLayers.ThrustingUnshaded, out var unshadedLayer, false))
{ {
_sprite.LayerSetVisible((uid, sprite), unshadedLayer, value); SpriteSystem.LayerSetVisible((uid, sprite), unshadedLayer, value);
} }
} }
} }

View File

@@ -8,8 +8,6 @@ namespace Content.Client.Storage.Systems;
/// <inheritdoc cref="StorageContainerVisualsComponent"/> /// <inheritdoc cref="StorageContainerVisualsComponent"/>
public sealed class StorageContainerVisualsSystem : VisualizerSystem<StorageContainerVisualsComponent> public sealed class StorageContainerVisualsSystem : VisualizerSystem<StorageContainerVisualsComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, StorageContainerVisualsComponent component, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, StorageContainerVisualsComponent component, ref AppearanceChangeEvent args)
{ {
if (args.Sprite == null) if (args.Sprite == null)
@@ -23,7 +21,7 @@ public sealed class StorageContainerVisualsSystem : VisualizerSystem<StorageCont
var fraction = used / (float)capacity; var fraction = used / (float)capacity;
if (!_sprite.LayerMapTryGet((uid, args.Sprite), component.FillLayer, out var fillLayer, false)) if (!SpriteSystem.LayerMapTryGet((uid, args.Sprite), component.FillLayer, out var fillLayer, false))
return; return;
var closestFillSprite = Math.Min(ContentHelpers.RoundToNearestLevels(fraction, 1, component.MaxFillLevels + 1), var closestFillSprite = Math.Min(ContentHelpers.RoundToNearestLevels(fraction, 1, component.MaxFillLevels + 1),
@@ -34,13 +32,13 @@ public sealed class StorageContainerVisualsSystem : VisualizerSystem<StorageCont
if (component.FillBaseName == null) if (component.FillBaseName == null)
return; return;
_sprite.LayerSetVisible((uid, args.Sprite), fillLayer, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), fillLayer, true);
var stateName = component.FillBaseName + closestFillSprite; var stateName = component.FillBaseName + closestFillSprite;
_sprite.LayerSetRsiState((uid, args.Sprite), fillLayer, stateName); SpriteSystem.LayerSetRsiState((uid, args.Sprite), fillLayer, stateName);
} }
else else
{ {
_sprite.LayerSetVisible((uid, args.Sprite), fillLayer, false); SpriteSystem.LayerSetVisible((uid, args.Sprite), fillLayer, false);
} }
} }
} }

View File

@@ -5,8 +5,6 @@ namespace Content.Client.Storage.Visualizers;
public sealed class EntityStorageVisualizerSystem : VisualizerSystem<EntityStorageVisualsComponent> public sealed class EntityStorageVisualizerSystem : VisualizerSystem<EntityStorageVisualsComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
public override void Initialize() public override void Initialize()
{ {
base.Initialize(); base.Initialize();
@@ -25,7 +23,7 @@ public sealed class EntityStorageVisualizerSystem : VisualizerSystem<EntityStora
if (!TryComp<SpriteComponent>(uid, out var sprite)) if (!TryComp<SpriteComponent>(uid, out var sprite))
return; return;
_sprite.LayerSetRsiState((uid, sprite), StorageVisualLayers.Base, comp.StateBaseClosed); SpriteSystem.LayerSetRsiState((uid, sprite), StorageVisualLayers.Base, comp.StateBaseClosed);
} }
protected override void OnAppearanceChange(EntityUid uid, EntityStorageVisualsComponent comp, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, EntityStorageVisualsComponent comp, ref AppearanceChangeEvent args)
@@ -35,41 +33,41 @@ public sealed class EntityStorageVisualizerSystem : VisualizerSystem<EntityStora
return; return;
// Open/Closed state for the storage entity. // Open/Closed state for the storage entity.
if (_sprite.LayerMapTryGet((uid, args.Sprite), StorageVisualLayers.Door, out _, false)) if (SpriteSystem.LayerMapTryGet((uid, args.Sprite), StorageVisualLayers.Door, out _, false))
{ {
if (open) if (open)
{ {
if (comp.OpenDrawDepth != null) if (comp.OpenDrawDepth != null)
_sprite.SetDrawDepth((uid, args.Sprite), comp.OpenDrawDepth.Value); SpriteSystem.SetDrawDepth((uid, args.Sprite), comp.OpenDrawDepth.Value);
if (comp.StateDoorOpen != null) if (comp.StateDoorOpen != null)
{ {
_sprite.LayerSetRsiState((uid, args.Sprite), StorageVisualLayers.Door, comp.StateDoorOpen); SpriteSystem.LayerSetRsiState((uid, args.Sprite), StorageVisualLayers.Door, comp.StateDoorOpen);
_sprite.LayerSetVisible((uid, args.Sprite), StorageVisualLayers.Door, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), StorageVisualLayers.Door, true);
} }
else else
{ {
_sprite.LayerSetVisible((uid, args.Sprite), StorageVisualLayers.Door, false); SpriteSystem.LayerSetVisible((uid, args.Sprite), StorageVisualLayers.Door, false);
} }
if (comp.StateBaseOpen != null) if (comp.StateBaseOpen != null)
_sprite.LayerSetRsiState((uid, args.Sprite), StorageVisualLayers.Base, comp.StateBaseOpen); SpriteSystem.LayerSetRsiState((uid, args.Sprite), StorageVisualLayers.Base, comp.StateBaseOpen);
} }
else else
{ {
if (comp.ClosedDrawDepth != null) if (comp.ClosedDrawDepth != null)
_sprite.SetDrawDepth((uid, args.Sprite), comp.ClosedDrawDepth.Value); SpriteSystem.SetDrawDepth((uid, args.Sprite), comp.ClosedDrawDepth.Value);
if (comp.StateDoorClosed != null) if (comp.StateDoorClosed != null)
{ {
_sprite.LayerSetRsiState((uid, args.Sprite), StorageVisualLayers.Door, comp.StateDoorClosed); SpriteSystem.LayerSetRsiState((uid, args.Sprite), StorageVisualLayers.Door, comp.StateDoorClosed);
_sprite.LayerSetVisible((uid, args.Sprite), StorageVisualLayers.Door, true); SpriteSystem.LayerSetVisible((uid, args.Sprite), StorageVisualLayers.Door, true);
} }
else else
_sprite.LayerSetVisible((uid, args.Sprite), StorageVisualLayers.Door, false); SpriteSystem.LayerSetVisible((uid, args.Sprite), StorageVisualLayers.Door, false);
if (comp.StateBaseClosed != null) if (comp.StateBaseClosed != null)
_sprite.LayerSetRsiState((uid, args.Sprite), StorageVisualLayers.Base, comp.StateBaseClosed); SpriteSystem.LayerSetRsiState((uid, args.Sprite), StorageVisualLayers.Base, comp.StateBaseClosed);
} }
} }
} }

View File

@@ -27,7 +27,6 @@ namespace Content.Client.TextScreen;
public sealed class TextScreenSystem : VisualizerSystem<TextScreenVisualsComponent> public sealed class TextScreenSystem : VisualizerSystem<TextScreenVisualsComponent>
{ {
[Dependency] private readonly IGameTiming _gameTiming = default!; [Dependency] private readonly IGameTiming _gameTiming = default!;
[Dependency] private readonly SpriteSystem _sprite = default!;
/// <summary> /// <summary>
/// Contains char/state Key/Value pairs. <br/> /// Contains char/state Key/Value pairs. <br/>
@@ -90,11 +89,11 @@ public sealed class TextScreenSystem : VisualizerSystem<TextScreenVisualsCompone
for (var i = 0; i < screen.RowLength; i++) for (var i = 0; i < screen.RowLength; i++)
{ {
_sprite.LayerMapReserve((uid, sprite), TimerMapKey + i); SpriteSystem.LayerMapReserve((uid, sprite), TimerMapKey + i);
timer.LayerStatesToDraw.Add(TimerMapKey + i, null); timer.LayerStatesToDraw.Add(TimerMapKey + i, null);
_sprite.LayerSetRsi((uid, sprite), TimerMapKey + i, new ResPath(TextPath)); SpriteSystem.LayerSetRsi((uid, sprite), TimerMapKey + i, new ResPath(TextPath));
_sprite.LayerSetColor((uid, sprite), TimerMapKey + i, screen.Color); SpriteSystem.LayerSetColor((uid, sprite), TimerMapKey + i, screen.Color);
_sprite.LayerSetRsiState((uid, sprite), TimerMapKey + i, DefaultState); SpriteSystem.LayerSetRsiState((uid, sprite), TimerMapKey + i, DefaultState);
} }
} }
@@ -154,7 +153,7 @@ public sealed class TextScreenSystem : VisualizerSystem<TextScreenVisualsCompone
return; return;
foreach (var key in timer.LayerStatesToDraw.Keys) foreach (var key in timer.LayerStatesToDraw.Keys)
_sprite.RemoveLayer((uid, sprite), key); SpriteSystem.RemoveLayer((uid, sprite), key);
RemComp<TextScreenTimerComponent>(uid); RemComp<TextScreenTimerComponent>(uid);
@@ -190,7 +189,7 @@ public sealed class TextScreenSystem : VisualizerSystem<TextScreenVisualsCompone
return; return;
foreach (var key in component.LayerStatesToDraw.Keys) foreach (var key in component.LayerStatesToDraw.Keys)
_sprite.RemoveLayer((uid, sprite), key); SpriteSystem.RemoveLayer((uid, sprite), key);
component.LayerStatesToDraw.Clear(); component.LayerStatesToDraw.Clear();
@@ -198,11 +197,11 @@ public sealed class TextScreenSystem : VisualizerSystem<TextScreenVisualsCompone
for (var i = 0; i < component.RowLength; i++) for (var i = 0; i < component.RowLength; i++)
{ {
var key = TextMapKey + row + i; var key = TextMapKey + row + i;
_sprite.LayerMapReserve((uid, sprite), key); SpriteSystem.LayerMapReserve((uid, sprite), key);
component.LayerStatesToDraw.Add(key, null); component.LayerStatesToDraw.Add(key, null);
_sprite.LayerSetRsi((uid, sprite), key, new ResPath(TextPath)); SpriteSystem.LayerSetRsi((uid, sprite), key, new ResPath(TextPath));
_sprite.LayerSetColor((uid, sprite), key, component.Color); SpriteSystem.LayerSetColor((uid, sprite), key, component.Color);
_sprite.LayerSetRsiState((uid, sprite), key, DefaultState); SpriteSystem.LayerSetRsiState((uid, sprite), key, DefaultState);
} }
} }
@@ -228,7 +227,7 @@ public sealed class TextScreenSystem : VisualizerSystem<TextScreenVisualsCompone
for (var chr = 0; chr < min; chr++) for (var chr = 0; chr < min; chr++)
{ {
component.LayerStatesToDraw[TextMapKey + rowIdx + chr] = GetStateFromChar(row[chr]); component.LayerStatesToDraw[TextMapKey + rowIdx + chr] = GetStateFromChar(row[chr]);
_sprite.LayerSetOffset( SpriteSystem.LayerSetOffset(
(uid, sprite), (uid, sprite),
TextMapKey + rowIdx + chr, TextMapKey + rowIdx + chr,
Vector2.Multiply( Vector2.Multiply(
@@ -259,7 +258,7 @@ public sealed class TextScreenSystem : VisualizerSystem<TextScreenVisualsCompone
for (var i = 0; i < min; i++) for (var i = 0; i < min; i++)
{ {
timer.LayerStatesToDraw[TimerMapKey + i] = GetStateFromChar(time[i]); timer.LayerStatesToDraw[TimerMapKey + i] = GetStateFromChar(time[i]);
_sprite.LayerSetOffset( SpriteSystem.LayerSetOffset(
(uid, sprite), (uid, sprite),
TimerMapKey + i, TimerMapKey + i,
Vector2.Multiply( Vector2.Multiply(
@@ -279,7 +278,7 @@ public sealed class TextScreenSystem : VisualizerSystem<TextScreenVisualsCompone
return; return;
foreach (var (key, state) in layerStates.Where(pairs => pairs.Value != null)) foreach (var (key, state) in layerStates.Where(pairs => pairs.Value != null))
_sprite.LayerSetRsiState((uid, sprite), key, state); SpriteSystem.LayerSetRsiState((uid, sprite), key, state);
} }
public override void Update(float frameTime) public override void Update(float frameTime)

View File

@@ -15,7 +15,6 @@ public sealed class ToggleableLightVisualsSystem : VisualizerSystem<ToggleableLi
{ {
[Dependency] private readonly SharedItemSystem _itemSys = default!; [Dependency] private readonly SharedItemSystem _itemSys = default!;
[Dependency] private readonly SharedPointLightSystem _lights = default!; [Dependency] private readonly SharedPointLightSystem _lights = default!;
[Dependency] private readonly SpriteSystem _sprite = default!;
public override void Initialize() public override void Initialize()
{ {
@@ -32,11 +31,11 @@ public sealed class ToggleableLightVisualsSystem : VisualizerSystem<ToggleableLi
var modulate = AppearanceSystem.TryGetData<Color>(uid, ToggleableLightVisuals.Color, out var color, args.Component); var modulate = AppearanceSystem.TryGetData<Color>(uid, ToggleableLightVisuals.Color, out var color, args.Component);
// Update the item's sprite // Update the item's sprite
if (args.Sprite != null && component.SpriteLayer != null && _sprite.LayerMapTryGet((uid, args.Sprite), component.SpriteLayer, out var layer, false)) if (args.Sprite != null && component.SpriteLayer != null && SpriteSystem.LayerMapTryGet((uid, args.Sprite), component.SpriteLayer, out var layer, false))
{ {
_sprite.LayerSetVisible((uid, args.Sprite), layer, enabled); SpriteSystem.LayerSetVisible((uid, args.Sprite), layer, enabled);
if (modulate) if (modulate)
_sprite.LayerSetColor((uid, args.Sprite), layer, color); SpriteSystem.LayerSetColor((uid, args.Sprite), layer, color);
} }
// Update any point-lights // Update any point-lights

View File

@@ -5,24 +5,22 @@ namespace Content.Client.Wires.Visualizers
{ {
public sealed class WiresVisualizerSystem : VisualizerSystem<WiresVisualsComponent> public sealed class WiresVisualizerSystem : VisualizerSystem<WiresVisualsComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, WiresVisualsComponent component, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, WiresVisualsComponent component, ref AppearanceChangeEvent args)
{ {
if (args.Sprite == null) if (args.Sprite == null)
return; return;
var layer = _sprite.LayerMapReserve((uid, args.Sprite), WiresVisualLayers.MaintenancePanel); var layer = SpriteSystem.LayerMapReserve((uid, args.Sprite), WiresVisualLayers.MaintenancePanel);
if (args.AppearanceData.TryGetValue(WiresVisuals.MaintenancePanelState, out var panelStateObject) && if (args.AppearanceData.TryGetValue(WiresVisuals.MaintenancePanelState, out var panelStateObject) &&
panelStateObject is bool panelState) panelStateObject is bool panelState)
{ {
_sprite.LayerSetVisible((uid, args.Sprite), layer, panelState); SpriteSystem.LayerSetVisible((uid, args.Sprite), layer, panelState);
} }
else else
{ {
//Mainly for spawn window //Mainly for spawn window
_sprite.LayerSetVisible((uid, args.Sprite), layer, false); SpriteSystem.LayerSetVisible((uid, args.Sprite), layer, false);
} }
} }
} }

View File

@@ -5,8 +5,6 @@ namespace Content.Client.Xenoarchaeology.XenoArtifacts;
public sealed class RandomArtifactSpriteSystem : VisualizerSystem<RandomArtifactSpriteComponent> public sealed class RandomArtifactSpriteSystem : VisualizerSystem<RandomArtifactSpriteComponent>
{ {
[Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, RandomArtifactSpriteComponent component, ref AppearanceChangeEvent args) protected override void OnAppearanceChange(EntityUid uid, RandomArtifactSpriteComponent component, ref AppearanceChangeEvent args)
{ {
if (args.Sprite == null) if (args.Sprite == null)
@@ -25,24 +23,24 @@ public sealed class RandomArtifactSpriteSystem : VisualizerSystem<RandomArtifact
var spritePrefix = isUnlocking ? "_on" : ""; var spritePrefix = isUnlocking ? "_on" : "";
// layered artifact sprite // layered artifact sprite
if (_sprite.LayerMapTryGet((uid, args.Sprite), ArtifactsVisualLayers.UnlockingEffect, out var layer, false)) if (SpriteSystem.LayerMapTryGet((uid, args.Sprite), ArtifactsVisualLayers.UnlockingEffect, out var layer, false))
{ {
var spriteState = "ano" + spriteIndexStr; var spriteState = "ano" + spriteIndexStr;
_sprite.LayerSetRsiState((uid, args.Sprite), ArtifactsVisualLayers.Base, spriteState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), ArtifactsVisualLayers.Base, spriteState);
_sprite.LayerSetRsiState((uid, args.Sprite), layer, spriteState + "_on"); SpriteSystem.LayerSetRsiState((uid, args.Sprite), layer, spriteState + "_on");
_sprite.LayerSetVisible((uid, args.Sprite), layer, isUnlocking); SpriteSystem.LayerSetVisible((uid, args.Sprite), layer, isUnlocking);
if (_sprite.LayerMapTryGet((uid, args.Sprite), ArtifactsVisualLayers.ActivationEffect, out var activationEffectLayer, false)) if (SpriteSystem.LayerMapTryGet((uid, args.Sprite), ArtifactsVisualLayers.ActivationEffect, out var activationEffectLayer, false))
{ {
_sprite.LayerSetRsiState((uid, args.Sprite), activationEffectLayer, "artifact-activation"); SpriteSystem.LayerSetRsiState((uid, args.Sprite), activationEffectLayer, "artifact-activation");
_sprite.LayerSetVisible((uid, args.Sprite), activationEffectLayer, isActivated); SpriteSystem.LayerSetVisible((uid, args.Sprite), activationEffectLayer, isActivated);
} }
} }
// non-layered // non-layered
else else
{ {
var spriteState = "ano" + spriteIndexStr + spritePrefix; var spriteState = "ano" + spriteIndexStr + spritePrefix;
_sprite.LayerSetRsiState((uid, args.Sprite), ArtifactsVisualLayers.Base, spriteState); SpriteSystem.LayerSetRsiState((uid, args.Sprite), ArtifactsVisualLayers.Base, spriteState);
} }
} }
} }