public override bool IsValidNode(Node source) { if (source is MultipurposeNode) { MultipurposeNode node = source as MultipurposeNode; if (node.IsFlowNode()) { if (node.CanGetValue() || node.CanSetValue()) { var nodes = NodeEditorUtility.FindConnectedNodeToValueNode(node); if (nodes.Count > 0) { return(false); } } return(true); } } return(false); }