Files
tbd-station-14/Content.Shared/Stunnable/StunSystem.cs
2021-09-28 13:35:29 +02:00

33 lines
896 B
C#

using Content.Shared.Movement;
using JetBrains.Annotations;
using Robust.Shared.GameObjects;
namespace Content.Shared.Stunnable
{
[UsedImplicitly]
internal sealed class StunSystem : EntitySystem
{
public override void Initialize()
{
base.Initialize();
SubscribeLocalEvent<SharedStunnableComponent, MovementAttemptEvent>(HandleMoveAttempt);
}
private void HandleMoveAttempt(EntityUid uid, SharedStunnableComponent component, MovementAttemptEvent args)
{
if (component.Stunned)
args.Cancel();
}
public override void Update(float frameTime)
{
base.Update(frameTime);
foreach (var component in EntityManager.EntityQuery<SharedStunnableComponent>(true))
{
component.Update(frameTime);
}
}
}
}