public override void CheckAlwaysConditions() { foreach (BaseNode b in graph.nodes) { if (b.drawNode is CheckAlwaysNode) { foreach (ECondition c in b.alwaysCheckConditions) { if (ConditionNode.IsChecked(c, (graph as BehaviourGraph).character)) { currentNode = b; } } } } }
public override void DecideForNextNode() { if (currentNode.drawNode is ConditionNode) { if (ConditionNode.IsChecked(currentNode.condition, (graph as BehaviourGraph).character)) { if (currentNode.transitions.Exists(x => x.Value == "true")) { currentNode = currentNode.transitions.Find(x => x.Value == "true").endNode; } } else { if (currentNode.transitions.Exists(x => x.Value == "false")) { currentNode = currentNode.transitions.Find(x => x.Value == "false").endNode; } } return; } base.DecideForNextNode(); }