Cleanup warnings in VendingMachineSystem (#37454)
Cleanup warnings in VendingMachineSystem
This commit is contained in:
@@ -10,6 +10,7 @@ public sealed class VendingMachineSystem : SharedVendingMachineSystem
|
|||||||
{
|
{
|
||||||
[Dependency] private readonly AnimationPlayerSystem _animationPlayer = default!;
|
[Dependency] private readonly AnimationPlayerSystem _animationPlayer = default!;
|
||||||
[Dependency] private readonly SharedAppearanceSystem _appearanceSystem = default!;
|
[Dependency] private readonly SharedAppearanceSystem _appearanceSystem = default!;
|
||||||
|
[Dependency] private readonly SpriteSystem _sprite = default!;
|
||||||
|
|
||||||
public override void Initialize()
|
public override void Initialize()
|
||||||
{
|
{
|
||||||
@@ -113,48 +114,48 @@ public sealed class VendingMachineSystem : SharedVendingMachineSystem
|
|||||||
|
|
||||||
private void UpdateAppearance(EntityUid uid, VendingMachineVisualState visualState, VendingMachineComponent component, SpriteComponent sprite)
|
private void UpdateAppearance(EntityUid uid, VendingMachineVisualState visualState, VendingMachineComponent component, SpriteComponent sprite)
|
||||||
{
|
{
|
||||||
SetLayerState(VendingMachineVisualLayers.Base, component.OffState, sprite);
|
SetLayerState(VendingMachineVisualLayers.Base, component.OffState, (uid, sprite));
|
||||||
|
|
||||||
switch (visualState)
|
switch (visualState)
|
||||||
{
|
{
|
||||||
case VendingMachineVisualState.Normal:
|
case VendingMachineVisualState.Normal:
|
||||||
SetLayerState(VendingMachineVisualLayers.BaseUnshaded, component.NormalState, sprite);
|
SetLayerState(VendingMachineVisualLayers.BaseUnshaded, component.NormalState, (uid, sprite));
|
||||||
SetLayerState(VendingMachineVisualLayers.Screen, component.ScreenState, sprite);
|
SetLayerState(VendingMachineVisualLayers.Screen, component.ScreenState, (uid, sprite));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VendingMachineVisualState.Deny:
|
case VendingMachineVisualState.Deny:
|
||||||
if (component.LoopDenyAnimation)
|
if (component.LoopDenyAnimation)
|
||||||
SetLayerState(VendingMachineVisualLayers.BaseUnshaded, component.DenyState, sprite);
|
SetLayerState(VendingMachineVisualLayers.BaseUnshaded, component.DenyState, (uid, sprite));
|
||||||
else
|
else
|
||||||
PlayAnimation(uid, VendingMachineVisualLayers.BaseUnshaded, component.DenyState, (float)component.DenyDelay.TotalSeconds, sprite);
|
PlayAnimation(uid, VendingMachineVisualLayers.BaseUnshaded, component.DenyState, (float)component.DenyDelay.TotalSeconds, sprite);
|
||||||
|
|
||||||
SetLayerState(VendingMachineVisualLayers.Screen, component.ScreenState, sprite);
|
SetLayerState(VendingMachineVisualLayers.Screen, component.ScreenState, (uid, sprite));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VendingMachineVisualState.Eject:
|
case VendingMachineVisualState.Eject:
|
||||||
PlayAnimation(uid, VendingMachineVisualLayers.BaseUnshaded, component.EjectState, (float)component.EjectDelay.TotalSeconds, sprite);
|
PlayAnimation(uid, VendingMachineVisualLayers.BaseUnshaded, component.EjectState, (float)component.EjectDelay.TotalSeconds, sprite);
|
||||||
SetLayerState(VendingMachineVisualLayers.Screen, component.ScreenState, sprite);
|
SetLayerState(VendingMachineVisualLayers.Screen, component.ScreenState, (uid, sprite));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VendingMachineVisualState.Broken:
|
case VendingMachineVisualState.Broken:
|
||||||
HideLayers(sprite);
|
HideLayers((uid, sprite));
|
||||||
SetLayerState(VendingMachineVisualLayers.Base, component.BrokenState, sprite);
|
SetLayerState(VendingMachineVisualLayers.Base, component.BrokenState, (uid, sprite));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VendingMachineVisualState.Off:
|
case VendingMachineVisualState.Off:
|
||||||
HideLayers(sprite);
|
HideLayers((uid, sprite));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void SetLayerState(VendingMachineVisualLayers layer, string? state, SpriteComponent sprite)
|
private void SetLayerState(VendingMachineVisualLayers layer, string? state, Entity<SpriteComponent> sprite)
|
||||||
{
|
{
|
||||||
if (string.IsNullOrEmpty(state))
|
if (string.IsNullOrEmpty(state))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
sprite.LayerSetVisible(layer, true);
|
_sprite.LayerSetVisible(sprite.AsNullable(), layer, true);
|
||||||
sprite.LayerSetAutoAnimated(layer, true);
|
_sprite.LayerSetAutoAnimated(sprite.AsNullable(), layer, true);
|
||||||
sprite.LayerSetState(layer, state);
|
_sprite.LayerSetRsiState(sprite.AsNullable(), layer, state);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void PlayAnimation(EntityUid uid, VendingMachineVisualLayers layer, string? state, float animationTime, SpriteComponent sprite)
|
private void PlayAnimation(EntityUid uid, VendingMachineVisualLayers layer, string? state, float animationTime, SpriteComponent sprite)
|
||||||
@@ -165,7 +166,7 @@ public sealed class VendingMachineSystem : SharedVendingMachineSystem
|
|||||||
if (!_animationPlayer.HasRunningAnimation(uid, state))
|
if (!_animationPlayer.HasRunningAnimation(uid, state))
|
||||||
{
|
{
|
||||||
var animation = GetAnimation(layer, state, animationTime);
|
var animation = GetAnimation(layer, state, animationTime);
|
||||||
sprite.LayerSetVisible(layer, true);
|
_sprite.LayerSetVisible((uid, sprite), layer, true);
|
||||||
_animationPlayer.Play(uid, animation, state);
|
_animationPlayer.Play(uid, animation, state);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -189,17 +190,17 @@ public sealed class VendingMachineSystem : SharedVendingMachineSystem
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void HideLayers(SpriteComponent sprite)
|
private void HideLayers(Entity<SpriteComponent> sprite)
|
||||||
{
|
{
|
||||||
HideLayer(VendingMachineVisualLayers.BaseUnshaded, sprite);
|
HideLayer(VendingMachineVisualLayers.BaseUnshaded, sprite);
|
||||||
HideLayer(VendingMachineVisualLayers.Screen, sprite);
|
HideLayer(VendingMachineVisualLayers.Screen, sprite);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void HideLayer(VendingMachineVisualLayers layer, SpriteComponent sprite)
|
private void HideLayer(VendingMachineVisualLayers layer, Entity<SpriteComponent> sprite)
|
||||||
{
|
{
|
||||||
if (!sprite.LayerMapTryGet(layer, out var actualLayer))
|
if (!_sprite.LayerMapTryGet(sprite.AsNullable(), layer, out var actualLayer, false))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
sprite.LayerSetVisible(actualLayer, false);
|
_sprite.LayerSetVisible(sprite.AsNullable(), actualLayer, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user