diff --git a/Content.Server/Flash/FlashSystem.cs b/Content.Server/Flash/FlashSystem.cs index 666b2b257a..b10864b829 100644 --- a/Content.Server/Flash/FlashSystem.cs +++ b/Content.Server/Flash/FlashSystem.cs @@ -3,6 +3,7 @@ using Content.Server.Flash.Components; using Content.Server.Light.EntitySystems; using Content.Server.Stunnable; using Content.Shared.Examine; +using Content.Shared.Eye.Blinding; using Content.Shared.Flash; using Content.Shared.IdentityManagement; using Content.Shared.Interaction; @@ -11,6 +12,7 @@ using Content.Shared.Inventory; using Content.Shared.Physics; using Content.Shared.Popups; using Content.Shared.Tag; +using Content.Shared.Traits.Assorted; using Content.Shared.Weapons.Melee.Events; using Robust.Server.GameObjects; using Robust.Shared.Audio; @@ -40,6 +42,8 @@ namespace Content.Server.Flash SubscribeLocalEvent(OnInventoryFlashAttempt); SubscribeLocalEvent(OnFlashImmunityFlashAttempt); + SubscribeLocalEvent(OnPermanentBlindnessFlashAttempt); + SubscribeLocalEvent(OnTemporaryBlindnessFlashAttempt); } private void OnFlashMeleeHit(EntityUid uid, FlashComponent comp, MeleeHitEvent args) @@ -192,6 +196,16 @@ namespace Content.Server.Flash if(component.Enabled) args.Cancel(); } + + private void OnPermanentBlindnessFlashAttempt(EntityUid uid, PermanentBlindnessComponent component, FlashAttemptEvent args) + { + args.Cancel(); + } + + private void OnTemporaryBlindnessFlashAttempt(EntityUid uid, TemporaryBlindnessComponent component, FlashAttemptEvent args) + { + args.Cancel(); + } } public sealed class FlashAttemptEvent : CancellableEntityEventArgs diff --git a/Resources/Prototypes/Entities/Clothing/Eyes/misc.yml b/Resources/Prototypes/Entities/Clothing/Eyes/misc.yml index a213a06afc..06ff347172 100644 --- a/Resources/Prototypes/Entities/Clothing/Eyes/misc.yml +++ b/Resources/Prototypes/Entities/Clothing/Eyes/misc.yml @@ -25,3 +25,4 @@ - type: Construction graph: Blindfold node: blindfold + - type: FlashImmunity