Firstborn/Assets/RPG Creation Kit/Scripts/BehaviourTrees/Nodes/BTNode.cs

56 lines
1.2 KiB
C#
Raw Permalink Normal View History

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using XNode;
using RPGCreationKit.BehaviourTree;
using RPGCreationKit;
using UnityEditor;
namespace RPGCreationKit.BehaviourTree
{
[System.Serializable]
public abstract class BTNode : Node
{
[Input(backingValue = ShowBackingValue.Never)] public BTNode input;
public NodeState m_NodeState;
public int indexInSequence = -1;
public string resultScript;
public Events events;
abstract public NodeState Execute();
abstract public void OnStart();
public bool STARTED = false;
public NodeStatus nodeStatus;
public bool hasEvaluated = false;
public virtual void ReEvaluate()
{
m_NodeState = NodeState.Null;
STARTED = false;
hasEvaluated = false;
}
public override object GetValue(NodePort port)
{
return null;
}
public static int SortInGraphYPos(Node a, Node b)
{
return a.position.y.CompareTo(b.position.y);
}
public virtual void ReorderChild()
{
}
}
}