using Content.Shared.Damage; using Content.Shared.Tools; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; namespace Content.Server.Silicon.WeldingHealing; [RegisterComponent] public sealed partial class WeldingHealingComponent : Component { /// /// All the damage to change information is stored in this . /// /// /// If this data-field is specified, it will change damage by this amount instead of setting all damage to 0. /// in order to heal/repair the damage values have to be negative. /// [DataField(required: true)] public DamageSpecifier Damage; [DataField(customTypeSerializer:typeof(PrototypeIdSerializer))] public string QualityNeeded = "Welding"; /// /// The fuel amount needed to repair physical related damage /// [DataField] public int FuelCost = 5; [DataField] public int DoAfterDelay = 3; /// /// A multiplier that will be applied to the above if an entity is repairing themselves. /// [DataField] public float SelfHealPenalty = 3f; /// /// Whether or not an entity is allowed to repair itself. /// [DataField] public bool AllowSelfHeal = true; [DataField(required: true)] public List DamageContainers; }