using Content.Shared.Damage.Components; using Content.Shared.Damage.Prototypes; using Robust.Shared.Serialization; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Dictionary; namespace Content.Shared.Damage { /// /// A set of coefficients or flat modifiers to damage types. Can be applied to using . This can be done several times as the /// is passed to it's final target. By default the receiving , will /// also apply it's own . /// /// /// The modifier will only ever be applied to damage that is being dealt. Healing is unmodified. /// [DataDefinition] [Serializable, NetSerializable] [Virtual] public partial class DamageModifierSet { [DataField("coefficients", customTypeSerializer: typeof(PrototypeIdDictionarySerializer))] public Dictionary Coefficients = new(); [DataField("flatReductions", customTypeSerializer: typeof(PrototypeIdDictionarySerializer))] public Dictionary FlatReduction = new(); } }