Files
BH3/Assets/Plugins/Assembly-CSharp-firstpass/BehaviorDesigner/Runtime/Tasks/UntilSuccess.cs
2025-08-13 09:26:42 +08:00

26 lines
701 B
C#

namespace BehaviorDesigner.Runtime.Tasks
{
[TaskDescription("The until success task will keep executing its child task until the child task returns success.")]
[TaskIcon("{SkinColor}UntilSuccessIcon.png")]
[HelpURL("http://www.opsive.com/assets/BehaviorDesigner/documentation.php?id=42")]
public class UntilSuccess : Decorator
{
private TaskStatus executionStatus;
public override bool CanExecute()
{
return executionStatus == TaskStatus.Failure || executionStatus == TaskStatus.Inactive;
}
public override void OnChildExecuted(TaskStatus childStatus)
{
executionStatus = childStatus;
}
public override void OnEnd()
{
executionStatus = TaskStatus.Inactive;
}
}
}