Puddle IExamine event.

This commit is contained in:
Pieter-Jan Briers
2021-09-15 16:39:34 +02:00
parent ce6e37bdd8
commit 9c7b061d13
2 changed files with 14 additions and 14 deletions

View File

@@ -1,7 +1,10 @@
using Content.Server.Fluids.Components;
using Content.Shared.Examine;
using Content.Shared.Slippery;
using JetBrains.Annotations;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
using Robust.Shared.Localization;
using Robust.Shared.Map;
namespace Content.Server.Fluids
@@ -15,6 +18,8 @@ namespace Content.Server.Fluids
{
base.Initialize();
_mapManager.TileChanged += HandleTileChanged;
SubscribeLocalEvent<PuddleComponent, ExaminedEvent>(HandlePuddleExamined);
}
public override void Shutdown()
@@ -23,6 +28,14 @@ namespace Content.Server.Fluids
_mapManager.TileChanged -= HandleTileChanged;
}
private void HandlePuddleExamined(EntityUid uid, PuddleComponent component, ExaminedEvent args)
{
if (ComponentManager.TryGetComponent<SlipperyComponent>(uid, out var slippery) && slippery.Slippery)
{
args.Message.AddText(Loc.GetString("puddle-component-examine-is-slipper-text"));
}
}
//TODO: Replace all this with an Unanchored event that deletes the puddle
private void HandleTileChanged(object? sender, TileChangedEventArgs eventArgs)
{