using System.Threading; using Content.Server.Revenant.EntitySystems; using Content.Shared.Revenant.Components; using Robust.Shared.GameStates; namespace Content.Server.Revenant.Components; [RegisterComponent, NetworkedComponent] [Access(typeof(RevenantAnimatedSystem))] [AutoGenerateComponentPause] public sealed partial class RevenantAnimatedComponent : Component { /// /// The revenant that animated this item. Used for initialization. /// [ViewVariables(VVAccess.ReadOnly)] public Entity? Revenant; /// /// Components added to make this item animated. /// Removed when the item becomes inanimate. /// public List AddedComponents = new(); /// /// When the item should become inanimate. If null, /// the item never becomes inanimate. /// [AutoPausedField] public TimeSpan? EndTime; }