using Robust.Shared.GameStates; namespace Content.Shared.Execution; /// /// Added to entities that can be used to execute another target. /// [RegisterComponent, NetworkedComponent, AutoGenerateComponentState] public sealed partial class ExecutionComponent : Component { /// /// How long the execution duration lasts. /// [DataField, AutoNetworkedField] public float DoAfterDuration = 5f; /// /// Arbitrarily chosen number to multiply damage by, used to deal reasonable amounts of damage to a victim of an execution. /// /// [DataField, AutoNetworkedField] public float DamageMultiplier = 9f; /// /// Shown to the person performing the melee execution (attacker) upon starting a melee execution. /// [DataField] public LocId InternalMeleeExecutionMessage = "execution-popup-melee-initial-internal"; /// /// Shown to bystanders and the victim of a melee execution when a melee execution is started. /// [DataField] public LocId ExternalMeleeExecutionMessage = "execution-popup-melee-initial-external"; /// /// Shown to the attacker upon completion of a melee execution. /// [DataField] public LocId CompleteInternalMeleeExecutionMessage = "execution-popup-melee-complete-internal"; /// /// Shown to bystanders and the victim of a melee execution when a melee execution is completed. /// [DataField] public LocId CompleteExternalMeleeExecutionMessage = "execution-popup-melee-complete-external"; /// /// Shown to the person performing the self execution when starting one. /// [DataField] public LocId InternalSelfExecutionMessage = "execution-popup-self-initial-internal"; /// /// Shown to bystanders near a self execution when one is started. /// [DataField] public LocId ExternalSelfExecutionMessage = "execution-popup-self-initial-external"; /// /// Shown to the person performing a self execution upon completion of a do-after or on use of /suicide with a weapon that has the Execution component. /// [DataField] public LocId CompleteInternalSelfExecutionMessage = "execution-popup-self-complete-internal"; /// /// Shown to bystanders when a self execution is completed or a suicide via execution weapon happens nearby. /// [DataField] public LocId CompleteExternalSelfExecutionMessage = "execution-popup-self-complete-external"; // Not networked because this is transient inside of a tick. /// /// True if it is currently executing for handlers. /// [DataField] public bool Executing = false; }