using Content.Shared.Damage; using Content.Shared.Whitelist; using Robust.Shared.GameStates; namespace Content.Shared.Weapons.Marker; /// /// Applies when colliding with an entity. /// [RegisterComponent, NetworkedComponent, AutoGenerateComponentState, Access(typeof(SharedDamageMarkerSystem))] public sealed partial class DamageMarkerOnCollideComponent : Component { [DataField("whitelist"), AutoNetworkedField] public EntityWhitelist? Whitelist = new(); [ViewVariables(VVAccess.ReadWrite), DataField("duration"), AutoNetworkedField] public TimeSpan Duration = TimeSpan.FromSeconds(5); /// /// Additional damage to be applied. /// [ViewVariables(VVAccess.ReadWrite), DataField("damage")] public DamageSpecifier Damage = new(); /// /// How many more times we can apply it. /// [ViewVariables(VVAccess.ReadWrite), DataField("amount"), AutoNetworkedField] public int Amount = 1; }