22 lines
695 B
C#
22 lines
695 B
C#
using Content.Shared.Armor;
|
|
using Content.Shared.Damage.Events;
|
|
using Content.Shared.Inventory;
|
|
|
|
namespace Content.Shared._DV.Damage;
|
|
|
|
public sealed class StaminaMeleeResistanceSystem : EntitySystem
|
|
{
|
|
public override void Initialize()
|
|
{
|
|
base.Initialize();
|
|
|
|
SubscribeLocalEvent<ArmorComponent, InventoryRelayedEvent<BeforeStaminaDamageEvent>>(OnGetMeleeResistance);
|
|
}
|
|
|
|
private void OnGetMeleeResistance(Entity<ArmorComponent> ent, ref InventoryRelayedEvent<BeforeStaminaDamageEvent> args)
|
|
{
|
|
if (args.Args.FromMelee && ent.Comp.StaminaMeleeDamageCoefficient.HasValue)
|
|
args.Args.Value *= ent.Comp.StaminaMeleeDamageCoefficient.Value;
|
|
}
|
|
}
|