Pathfinder rework (#11452)
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Content.Server.MobState;
|
||||
using Content.Server.NPC.Components;
|
||||
@@ -34,7 +35,8 @@ public sealed class MeleeOperator : HTNOperator
|
||||
melee.Target = blackboard.GetValue<EntityUid>(TargetKey);
|
||||
}
|
||||
|
||||
public override async Task<(bool Valid, Dictionary<string, object>? Effects)> Plan(NPCBlackboard blackboard)
|
||||
public override async Task<(bool Valid, Dictionary<string, object>? Effects)> Plan(NPCBlackboard blackboard,
|
||||
CancellationToken cancelToken)
|
||||
{
|
||||
// Don't attack if they're already as wounded as we want them.
|
||||
if (!blackboard.TryGetValue<EntityUid>(TargetKey, out var target))
|
||||
@@ -62,7 +64,6 @@ public sealed class MeleeOperator : HTNOperator
|
||||
public override HTNOperatorStatus Update(NPCBlackboard blackboard, float frameTime)
|
||||
{
|
||||
base.Update(blackboard, frameTime);
|
||||
// TODO:
|
||||
var owner = blackboard.GetValue<EntityUid>(NPCBlackboard.Owner);
|
||||
var status = HTNOperatorStatus.Continuing;
|
||||
|
||||
@@ -79,6 +80,7 @@ public sealed class MeleeOperator : HTNOperator
|
||||
{
|
||||
switch (combat.Status)
|
||||
{
|
||||
case CombatStatus.TargetOutOfRange:
|
||||
case CombatStatus.Normal:
|
||||
status = HTNOperatorStatus.Continuing;
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user