diff --git a/Content.Shared/Stealth/Components/StealthComponent.cs b/Content.Shared/Stealth/Components/StealthComponent.cs
index be7bbe2f54..6a4cc23e74 100644
--- a/Content.Shared/Stealth/Components/StealthComponent.cs
+++ b/Content.Shared/Stealth/Components/StealthComponent.cs
@@ -61,6 +61,12 @@ public sealed class StealthComponent : Component
///
[DataField("maxVisibility")]
public readonly float MaxVisibility = 1.5f;
+
+ ///
+ /// Localization string for how you'd like to describe this effect.
+ ///
+ [DataField("examinedDesc")]
+ public string ExaminedDesc = "stealth-visual-effect";
}
[Serializable, NetSerializable]
diff --git a/Content.Shared/Stealth/SharedStealthSystem.cs b/Content.Shared/Stealth/SharedStealthSystem.cs
index 46d04beaff..7d5840c9a2 100644
--- a/Content.Shared/Stealth/SharedStealthSystem.cs
+++ b/Content.Shared/Stealth/SharedStealthSystem.cs
@@ -19,10 +19,11 @@ public abstract class SharedStealthSystem : EntitySystem
SubscribeLocalEvent(OnGetVisibilityModifiers);
SubscribeLocalEvent(OnPaused);
SubscribeLocalEvent(OnInit);
- SubscribeLocalEvent(OnExamine);
+ SubscribeLocalEvent(OnExamineAttempt);
+ SubscribeLocalEvent(OnExamined);
}
- private void OnExamine(EntityUid uid, StealthComponent component, ExamineAttemptEvent args)
+ private void OnExamineAttempt(EntityUid uid, StealthComponent component, ExamineAttemptEvent args)
{
if (!component.Enabled || GetVisibility(uid, component) > component.ExamineThreshold)
return;
@@ -41,6 +42,12 @@ public abstract class SharedStealthSystem : EntitySystem
args.Cancel();
}
+ private void OnExamined(EntityUid uid, StealthComponent component, ExaminedEvent args)
+ {
+ if (component.Enabled)
+ args.PushMarkup(Loc.GetString(component.ExaminedDesc, ("target", uid)));
+ }
+
public virtual void SetEnabled(EntityUid uid, bool value, StealthComponent? component = null)
{
if (!Resolve(uid, ref component, false) || component.Enabled == value)
diff --git a/Resources/Locale/en-US/visual_effects.ftl b/Resources/Locale/en-US/visual_effects.ftl
new file mode 100644
index 0000000000..d01dd10518
--- /dev/null
+++ b/Resources/Locale/en-US/visual_effects.ftl
@@ -0,0 +1 @@
+stealth-visual-effect = [color=lightslategray]{CAPITALIZE(SUBJECT($target))} {CONJUGATE-BASIC($target, "shimmer", "shimmers")} with strange transparency.[/color]