1
0
mirror of https://github.com/Siccity/xNode.git synced 2026-03-26 22:49:02 +08:00

Fix for AutoConnect method.

Prevents incompatible connections between node ports when creating a new node on connection drag.
This commit is contained in:
Dan Erhardt 2020-04-26 12:38:14 -03:00 committed by GitHub
parent d9d90f0f7b
commit db5e6f48d9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -535,8 +535,8 @@ namespace XNodeEditor {
XNode.NodePort inputPort = node.Ports.FirstOrDefault(x => x.IsInput && x.ValueType == autoConnectOutput.ValueType); XNode.NodePort inputPort = node.Ports.FirstOrDefault(x => x.IsInput && x.ValueType == autoConnectOutput.ValueType);
// Fallback to input port // Fallback to input port
if (inputPort == null) inputPort = node.Ports.FirstOrDefault(x => x.IsInput); if (inputPort == null) inputPort = node.Ports.FirstOrDefault(x => x.IsInput);
// Autoconnect // Autoconnect if connection is compatible
if (inputPort != null) autoConnectOutput.Connect(inputPort); if (inputPort != null && inputPort.CanConnectTo(autoConnectOutput)) autoConnectOutput.Connect(inputPort);
// Save changes // Save changes
EditorUtility.SetDirty(graph); EditorUtility.SetDirty(graph);