diff --git a/Content.Client/Nutrition/Visualizers/DrinkCanVisualizer.cs b/Content.Client/Nutrition/Visualizers/DrinkCanVisualizer.cs deleted file mode 100644 index 6cc58204ef..0000000000 --- a/Content.Client/Nutrition/Visualizers/DrinkCanVisualizer.cs +++ /dev/null @@ -1,44 +0,0 @@ -using Content.Shared.Nutrition.Components; -using JetBrains.Annotations; -using Robust.Client.GameObjects; -using Robust.Shared.GameObjects; -using Robust.Shared.IoC; -using Robust.Shared.Serialization.Manager.Attributes; - -namespace Content.Client.Nutrition.Visualizers -{ - [UsedImplicitly] - public sealed class DrinkCanVisualizer : AppearanceVisualizer - { - [DataField("stateClosed")] - private string? _stateClosed; - - [DataField("stateOpen")] - private string? _stateOpen; - - [Obsolete("Subscribe to AppearanceChangeEvent instead.")] - public override void OnChangeData(AppearanceComponent component) - { - base.OnChangeData(component); - - var entities = IoCManager.Resolve(); - if (!entities.TryGetComponent(component.Owner, out SpriteComponent? sprite)) - { - return; - } - - if (component.TryGetData(DrinkCanStateVisual.Opened, out var opened) && opened) - { - sprite.LayerSetState(DrinkCanVisualLayers.Icon, $"{_stateOpen}"); - return; - } - - sprite.LayerSetState(DrinkCanVisualLayers.Icon, $"{_stateClosed}"); - } - } - - public enum DrinkCanVisualLayers : byte - { - Icon = 0 - } -} diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml index 91b4c2a432..8621fed551 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml @@ -25,7 +25,7 @@ state: icon layers: - state: icon - map: ["enum.DrinkCanVisualLayers.Icon"] + map: ["drinkCanIcon"] netsync: false - type: FitsInDispenser solution: drink @@ -36,10 +36,12 @@ - type: DrainableSolution solution: drink - type: Appearance + - type: GenericVisualizer visuals: - - type: DrinkCanVisualizer - stateClosed: icon - stateOpen: icon_open + enum.DrinkCanStateVisual.Opened: + drinkCanIcon: + True: {state: "icon_open"} + False: {state: "icon"} - type: Spillable solution: drink - type: ItemCooldown