12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using XNode;
- using System;
- using Sirenix.OdinInspector;
- using System.Linq;
- namespace ChivaVR.State
- {
- /// <summary>
- /// 离开状态
- /// </summary>
- public class ExitStateNode : StateNode
- {
- [Input] public Empty enter;
- public override void OnEnter()
- {
- NodePort enterPort = GetInputPort("enter");
- if (enterPort.GetConnections().Count == 0)
- {
- return;
- }
- for (int i = 0; i < enterPort.GetConnections().Count; i++)
- {
- StateNode node = enterPort.GetConnection(i).node as StateNode;
- if (!node.IsFinished) return;
- }
- IsRuning = true;
- OnExit();
- }
- /// <summary>
- /// 结束流程组
- /// </summary>
- public override void OnExit()
- {
- StateGraph stateGraph = graph as StateGraph;
- Debug.Log("Exit" + stateGraph.name);
- stateGraph.ExitStateGraph();
- }
- }
- }
|