using Content.Shared.Eye.Blinding.Components;
using Content.Shared.Eye.Blinding.Systems;
using Content.Shared.IdentityManagement;
-using Robust.Shared.Network;
namespace Content.Shared.Traits.Assorted;
{
_blinding.SetMinDamage((blindness.Owner, blindable), 0);
}
+
+ // Heal all eye damage when the component is removed.
+ // Otherwise you would still be blind, but not *permanently* blind, meaning you have to heal the eye damage with oculine.
+ // This is needed for changelings that transform from a blind player to a non-blind one.
+ _blinding.AdjustEyeDamage((blindness.Owner, blindable), -blindable.EyeDamage);
}
private void OnMapInit(Entity<PermanentBlindnessComponent> blindness, ref MapInitEvent args)
{
- if(!TryComp<BlindableComponent>(blindness.Owner, out var blindable))
+ if (!TryComp<BlindableComponent>(blindness.Owner, out var blindable))
return;
if (blindness.Comp.Blindness != 0)
_blinding.SetMinDamage((blindness.Owner, blindable), blindness.Comp.Blindness);
else
{
- var maxMagnitudeInt = (int) BlurryVisionComponent.MaxMagnitude;
+ var maxMagnitudeInt = (int)BlurryVisionComponent.MaxMagnitude;
_blinding.SetMinDamage((blindness.Owner, blindable), maxMagnitudeInt);
}
}