+++ /dev/null
-using Content.Shared.Security;
-using JetBrains.Annotations;
-using Robust.Client.GameObjects;
-using Robust.Shared.GameObjects;
-using Robust.Shared.IoC;
-
-namespace Content.Client.Security
-{
- [UsedImplicitly]
- public sealed class DeployableBarrierVisualizer : AppearanceVisualizer
- {
- [Obsolete("Subscribe to AppearanceChangeEvent instead.")]
- public override void OnChangeData(AppearanceComponent component)
- {
- base.OnChangeData(component);
-
- var entities = IoCManager.Resolve<IEntityManager>();
- if (!entities.TryGetComponent(component.Owner, out SpriteComponent? sprite))
- return;
-
- if (!component.TryGetData(DeployableBarrierVisuals.State, out DeployableBarrierState state))
- return;
-
- switch (state)
- {
- case DeployableBarrierState.Idle:
- sprite.LayerSetState(0, "idle");
- break;
- case DeployableBarrierState.Deployed:
- sprite.LayerSetState(0, "deployed");
- break;
- }
- }
- }
-}
- type: Sprite
sprite: Objects/Specific/Security/barrier.rsi
netsync: false
- state: idle
+ layers:
+ - state: "idle"
+ map: ["deployableBarrierBase"]
+ - type: Appearance
+ - type: GenericVisualizer
+ visuals:
+ enum.DeployableBarrierVisuals.State:
+ deployableBarrierBase:
+ enum.DeployableBarrierState.Idle: {state: "idle"}
+ enum.DeployableBarrierState.Deployed: {state: "deployed"}
- type: InteractionOutline
- type: Physics
bodyType: Dynamic
enabled: false
radius: 3
color: red
- - type: Appearance
- visuals:
- - type: DeployableBarrierVisualizer
- type: StaticPrice
price: 200