(dc8407cf2) Properly remove reported targets when they are done. Fix get item completing when it shouldn't if the target item was supposed to be equipped.

This commit is contained in:
Joonas Rikkonen
2019-05-16 06:16:54 +03:00
parent 265ec64540
commit 5d38344efc
22 changed files with 237 additions and 319 deletions
@@ -54,7 +54,6 @@ namespace Barotrauma
return pumpList;
}
protected override AIObjective ObjectiveConstructor(Pump pump) => new AIObjectiveOperateItem(pump, character, objectiveManager, Option, false) { IsLoop = false };
protected override float TargetEvaluation()
{
if (Option == "stoppumping")
@@ -66,5 +65,11 @@ namespace Barotrauma
return Targets.Max(t => MathHelper.Lerp(100, 0, Math.Abs(-t.FlowPercentage / 100)));
}
}
protected override AIObjective ObjectiveConstructor(Pump pump)
=> new AIObjectiveOperateItem(pump, character, objectiveManager, Option, false) { IsLoop = false };
protected override void OnObjectiveCompleted(AIObjective objective, Pump target)
=> HumanAIController.RemoveTargets<AIObjectivePumpWater, Pump>(character, target);
}
}