| 1234567891011121314151617181920212223242526272829303132333435 |
- using Content.Shared.Paper;
- using Robust.Client.GameObjects;
- namespace Content.Client.Paper;
- public sealed class EnvelopeSystem : VisualizerSystem<EnvelopeComponent>
- {
- public override void Initialize()
- {
- base.Initialize();
- SubscribeLocalEvent<EnvelopeComponent, AfterAutoHandleStateEvent>(OnAfterAutoHandleState);
- }
- private void OnAfterAutoHandleState(Entity<EnvelopeComponent> ent, ref AfterAutoHandleStateEvent args)
- {
- UpdateAppearance(ent);
- }
- private void UpdateAppearance(Entity<EnvelopeComponent> ent, SpriteComponent? sprite = null)
- {
- if (!Resolve(ent.Owner, ref sprite))
- return;
- sprite.LayerSetVisible(EnvelopeVisualLayers.Open, ent.Comp.State == EnvelopeComponent.EnvelopeState.Open);
- sprite.LayerSetVisible(EnvelopeVisualLayers.Sealed, ent.Comp.State == EnvelopeComponent.EnvelopeState.Sealed);
- sprite.LayerSetVisible(EnvelopeVisualLayers.Torn, ent.Comp.State == EnvelopeComponent.EnvelopeState.Torn);
- }
- public enum EnvelopeVisualLayers : byte
- {
- Open,
- Sealed,
- Torn
- }
- }
|