public void ReplaceConnections(NetworkNodeAsset[] nodes, NetworkNodeAsset newNode) // TODO: Move to parent { ConnectionAsset connection; foreach (NetworkNodeAsset node in nodes) { foreach (ConnectionAsset existingConnection in node.Connections) { if (Array.IndexOf(nodes, existingConnection.To) != -1) { existingConnection.To = null; continue; } existingConnection.From = newNode; newNode.AddConnection(existingConnection); } } foreach (NetworkNodeAsset node in Nodes) { if (Array.IndexOf(nodes, node) != -1) { continue; } foreach (NetworkNodeAsset targetNode in nodes) { while (node.ConnectsTo(targetNode)) { connection = node.GetConnection(targetNode); connection.To = newNode; } } } }
public void ReplaceConnections( NetworkNodeAsset[] nodes, NetworkNodeAsset newNode ) // TODO: Move to parent { ConnectionAsset connection; foreach( NetworkNodeAsset node in nodes ) { foreach( ConnectionAsset existingConnection in node.Connections ) { if( Array.IndexOf( nodes, existingConnection.To ) != -1 ) { existingConnection.To = null; continue; } existingConnection.From = newNode; newNode.AddConnection( existingConnection ); } } foreach( NetworkNodeAsset node in Nodes ) { if( Array.IndexOf( nodes, node ) != -1 ) { continue; } foreach( NetworkNodeAsset targetNode in nodes ) { while( node.ConnectsTo( targetNode ) ) { connection = node.GetConnection( targetNode ); connection.To = newNode; } } } }