using Invector.vCharacterController.AI.FSMBehaviour; using System; using System.Collections; using System.Collections.Generic; using UnityEngine; namespace Beyond { public class vChangeFSM : MonoBehaviour { public vFSMBehaviour newBehaviour; private vFSMBehaviourController _vFSMBehaviourController; private void Awake() { _vFSMBehaviourController = GetComponent(); } /// /// Change the behavior to data in the script. /// public void ChangeBehaviour() { OnChangeBehaviour(null); } /// /// Change the behavior to vFSMBehaviour. /// /// public void ChangeBehaviour(vFSMBehaviour vFSMBehaviour) { OnChangeBehaviour(vFSMBehaviour); } private void OnChangeBehaviour(vFSMBehaviour behaviour) { if (_vFSMBehaviourController == null) { return; } if (behaviour != null) { _vFSMBehaviourController.ChangeBehaviour(behaviour); } else if (newBehaviour != null) { _vFSMBehaviourController.ChangeBehaviour(newBehaviour); } } } }