62 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
		
		
			
		
	
	
			62 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
|   | using System.Collections; | ||
|  | using System.Collections.Generic; | ||
|  | using UnityEngine; | ||
|  | using XNode; | ||
|  | using RPGCreationKit.BehaviourTree; | ||
|  | 
 | ||
|  | namespace RPGCreationKit.BehaviourTree | ||
|  | { | ||
|  |     [CreateNodeMenu("RPGCK_BehaviourTree/Debug", order = 1)] | ||
|  |     [System.Serializable] | ||
|  |     public class DebugNode : BTNode | ||
|  |     { | ||
|  |         public string log = ""; | ||
|  | 
 | ||
|  |         protected override void Init() | ||
|  |         { | ||
|  |             base.Init(); | ||
|  |         } | ||
|  | 
 | ||
|  |         // Return the correct value of an output port when requested | ||
|  |         public override object GetValue(NodePort port) | ||
|  |         { | ||
|  |             return null; // Replace this | ||
|  |         } | ||
|  | 
 | ||
|  |         public override NodeState Execute() | ||
|  |         { | ||
|  |             if (m_NodeState == NodeState.Success || m_NodeState == NodeState.Failure) | ||
|  |                 if (hasEvaluated == true) | ||
|  |                     return m_NodeState; | ||
|  | 
 | ||
|  |             if (!STARTED) | ||
|  |                 OnStart(); | ||
|  | 
 | ||
|  |             if (!string.IsNullOrEmpty(log)) | ||
|  |                 Debug.Log(log); | ||
|  | 
 | ||
|  | 
 | ||
|  |             m_NodeState = NodeState.Success; | ||
|  |             hasEvaluated = true; | ||
|  |             return m_NodeState; | ||
|  |         } | ||
|  | 
 | ||
|  |         public override void ReEvaluate() | ||
|  |         { | ||
|  |             if (m_NodeState != NodeState.Running) | ||
|  |                 base.ReEvaluate(); | ||
|  |         } | ||
|  | 
 | ||
|  | 
 | ||
|  |         public override void OnRemoveConnection(NodePort port) | ||
|  |         { | ||
|  |             base.OnRemoveConnection(port); | ||
|  |             indexInSequence = -1; | ||
|  |         } | ||
|  | 
 | ||
|  |         public override void OnStart() | ||
|  |         { | ||
|  |             STARTED = true; | ||
|  |         } | ||
|  |     } | ||
|  | } |