-using Content.Shared.Damage;
+using Content.Shared.Clothing.Components;
+using Content.Shared.Damage;
using Content.Shared.Examine;
using Content.Shared.Inventory;
using Content.Shared.Silicons.Borgs;
/// <param name="args">The event, contains the running count of armor percentage as a coefficient</param>
private void OnCoefficientQuery(Entity<ArmorComponent> ent, ref InventoryRelayedEvent<CoefficientQueryEvent> args)
{
+ if (TryComp<MaskComponent>(ent, out var mask) && mask.IsToggled)
+ return;
+
foreach (var armorCoefficient in ent.Comp.Modifiers.Coefficients)
{
args.Args.DamageModifiers.Coefficients[armorCoefficient.Key] = args.Args.DamageModifiers.Coefficients.TryGetValue(armorCoefficient.Key, out var coefficient) ? coefficient * armorCoefficient.Value : armorCoefficient.Value;
private void OnDamageModify(EntityUid uid, ArmorComponent component, InventoryRelayedEvent<DamageModifyEvent> args)
{
+ if (TryComp<MaskComponent>(uid, out var mask) && mask.IsToggled)
+ return;
+
args.Args.Damage = DamageSpecifier.ApplyModifierSet(args.Args.Damage, component.Modifiers);
}
private void OnBorgDamageModify(EntityUid uid, ArmorComponent component,
ref BorgModuleRelayedEvent<DamageModifyEvent> args)
{
+ if (TryComp<MaskComponent>(uid, out var mask) && mask.IsToggled)
+ return;
+
args.Args.Damage = DamageSpecifier.ApplyModifierSet(args.Args.Damage, component.Modifiers);
}
using Content.Shared.Eye.Blinding.Components;
using Content.Shared.Tools.Components;
using Content.Shared.Item.ItemToggle.Components;
+using Content.Shared.Clothing.Components;
namespace Content.Shared.Eye.Blinding.Systems
{
private void OnGetProtection(EntityUid uid, EyeProtectionComponent component, GetEyeProtectionEvent args)
{
+ if (TryComp<MaskComponent>(uid, out var mask) && mask.IsToggled)
+ return;
+
args.Protection += component.ProtectionTime;
}
using System.Linq;
using Content.Shared.Movement.Systems;
using Content.Shared.Random.Helpers;
+using Content.Shared.Clothing.Components;
namespace Content.Shared.Flash;
private void OnFlashImmunityFlashAttempt(Entity<FlashImmunityComponent> ent, ref FlashAttemptEvent args)
{
+ if (TryComp<MaskComponent>(ent, out var mask) && mask.IsToggled)
+ return;
+
if (ent.Comp.Enabled)
args.Cancelled = true;
}