Code/BehaviorTree/Stops.cs
namespace NPBehave
{
    public enum Stops
    {
	    /// <summary>
	    /// The decorator will only check it's condition once it is started and will never stop any running nodes.
	    /// </summary>
        None,
	    /// <summary>
	    /// The decorator will check it's condition once it is started and if it is met,
	    /// it will observe the blackboard for changes.
	    /// Once the condition is no longer met, it will stop itself allowing the parent composite to proceed with it's next node.
	    /// </summary>
        Self,
	    
	    /// <summary>
	    /// The decorator will check it's condition once it is started and if it's not met, it will observe the blackboard for changes.
	    /// Once the condition is met, it will stop the lower priority node allowing the parent composite to proceed with it's next node
	    /// </summary>
        LowerPriority,
	    
	    /// <summary>
	    /// The decorator will stop both: self and lower priority nodes.
	    /// </summary>
        Both,
	    
	    /// <summary>
	    /// The decorator will check it's condition once it is started and if it's not met, it will observe the blackboard for changes.
	    /// Once the condition is met, it will stop the lower priority node and order the parent composite to restart the Decorator immediately.
	    /// </summary>
        ImmediateRestart,
	    
	    /// <summary>
	    /// The decorator will check it's condition once it is started and if it's not met, it will observe the blackboard for changes.
	    /// Once the condition is met, it will stop the lower priority node and order the parent composite to restart the Decorator immediately.
	    /// As in BOTH it will also stop itself as soon as the condition is no longer met.
	    /// </summary>
        LowerPriorityImmediateRestart
    }
}