mirror of
https://github.com/WWhiteDreamProject/wwdpublic.git
synced 2026-04-18 05:59:03 +03:00
Removed all unused variables i could find, built and tested on a simple upstart and clicking trough most systems. Change Loc references to localization. <!-- This is default collapsed, readers click to expand it and see all your media The PR media section can get very large at times, so this is a good way to keep it clean The title is written using HTML tags The title must be within the <summary> tags or you won't see it --> <details><summary><h1>Media</h1></summary> <p> "using Robust.Shared.Prototypes;" to "" "[dependency] private readonly ISpriteComponent" to "" </p> </details> --- No CL this isn't player facing. --------- Co-authored-by: ilmenwe <no@mail.com>
43 lines
1.5 KiB
C#
43 lines
1.5 KiB
C#
using Content.Shared.Beeper.Components;
|
|
using Content.Shared.Item.ItemToggle;
|
|
using Content.Shared.Pinpointer;
|
|
using Content.Shared.ProximityDetection;
|
|
using Content.Shared.ProximityDetection.Components;
|
|
using Content.Shared.ProximityDetection.Systems;
|
|
|
|
namespace Content.Shared.Beeper.Systems;
|
|
|
|
/// <summary>
|
|
/// This handles controlling a beeper from proximity detector events.
|
|
/// </summary>
|
|
public sealed class ProximityBeeperSystem : EntitySystem
|
|
{
|
|
[Dependency] private readonly BeeperSystem _beeper = default!;
|
|
|
|
/// <inheritdoc/>
|
|
public override void Initialize()
|
|
{
|
|
SubscribeLocalEvent<ProximityBeeperComponent, NewProximityTargetEvent>(OnNewProximityTarget);
|
|
SubscribeLocalEvent<ProximityBeeperComponent, ProximityTargetUpdatedEvent>(OnProximityTargetUpdate);
|
|
}
|
|
|
|
private void OnProximityTargetUpdate(EntityUid owner, ProximityBeeperComponent proxBeeper, ref ProximityTargetUpdatedEvent args)
|
|
{
|
|
if (!TryComp<BeeperComponent>(owner, out var beeper))
|
|
return;
|
|
if (args.Target == null)
|
|
{
|
|
_beeper.SetMute(owner, true, beeper);
|
|
return;
|
|
}
|
|
|
|
_beeper.SetIntervalScaling(owner, args.Distance / args.Detector.Range, beeper);
|
|
_beeper.SetMute(owner, false, beeper);
|
|
}
|
|
|
|
private void OnNewProximityTarget(EntityUid owner, ProximityBeeperComponent proxBeeper, ref NewProximityTargetEvent args)
|
|
{
|
|
_beeper.SetMute(owner, args.Target != null);
|
|
}
|
|
}
|