/// <summary> /// Deep clone with the given original Node. /// </summary> internal override void Copy(AIControllerSerializer serializer, Node originalNode) { base.Copy(serializer, originalNode); SubCondition original = (SubCondition)originalNode; m_input = serializer.GetCopyOf(original.m_input); m_outputTrue = serializer.GetCopyOf(original.m_outputTrue); m_outputFalse = serializer.GetCopyOf(original.m_outputFalse); }
void DoSubStates(AIBehaviour aiBehaviour, ConnectionPort[] connectedPorts) { foreach (ConnectionPort port in connectedPorts) { if (port.node.IsTypeOf <SubState> ()) { SubState originalSubState = (SubState)port.node; originalSubState.Perform(aiBehaviour); } if (port.node.IsTypeOf <SubCondition> ()) { SubCondition originalSubCondition = (SubCondition)port.node; originalSubCondition.Decide(aiBehaviour); } } }