examine for stealth effect (#12486)
Co-authored-by: Kara <lunarautomaton6@gmail.com>
This commit is contained in:
@@ -19,10 +19,11 @@ public abstract class SharedStealthSystem : EntitySystem
|
||||
SubscribeLocalEvent<StealthOnMoveComponent, GetVisibilityModifiersEvent>(OnGetVisibilityModifiers);
|
||||
SubscribeLocalEvent<StealthComponent, EntityPausedEvent>(OnPaused);
|
||||
SubscribeLocalEvent<StealthComponent, ComponentInit>(OnInit);
|
||||
SubscribeLocalEvent<StealthComponent, ExamineAttemptEvent>(OnExamine);
|
||||
SubscribeLocalEvent<StealthComponent, ExamineAttemptEvent>(OnExamineAttempt);
|
||||
SubscribeLocalEvent<StealthComponent, ExaminedEvent>(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)
|
||||
|
||||
Reference in New Issue
Block a user