Files
tbd-station-14/Content.Server/AI/Utility/Considerations/ActionBlocker/CanMoveCon.cs
DrSmugleaf 9b8185db23 Deprecate IActionBlocker in favour of cancellable events (#4193)
* Deprecate IActionBlocker in favour of cancellable events

* Bring back old speech/emoting component restrictions

* Rename action blocker listener methods

* Use Entity System public methods instead of extension methods

Co-authored-by: Vera Aguilera Puerto <gradientvera@outlook.com>
2021-06-19 10:03:24 +02:00

24 lines
634 B
C#

using Content.Server.AI.WorldState;
using Content.Server.AI.WorldState.States;
using Content.Shared.ActionBlocker;
using Content.Shared.Movement;
using Robust.Shared.GameObjects;
namespace Content.Server.AI.Utility.Considerations.ActionBlocker
{
public sealed class CanMoveCon : Consideration
{
protected override float GetScore(Blackboard context)
{
var self = context.GetState<SelfState>().GetValue();
if (self == null || !EntitySystem.Get<ActionBlockerSystem>().CanMove(self))
{
return 0.0f;
}
return 1.0f;
}
}
}