diff --git a/ClusterReceptor.cs b/ClusterReceptor.cs index 48a2c85..b5aef2c 100644 --- a/ClusterReceptor.cs +++ b/ClusterReceptor.cs @@ -68,8 +68,12 @@ public class ClusterReceptor : Cluster, IReceptor { if (element is not Cluster clusterElement) continue; - //receivers.AddRange(clusterElement.CollectReceivers()); - foreach (Neuron output in clusterElement.outputs) { + foreach (Nucleus outputNucleus in clusterElement.clusterNuclei) { + if (outputNucleus is not Neuron output) + continue; + + // this should be clusterElement.outputs, + // but outputs is not updated when correctly and may contain old data... foreach (Nucleus receiver in output.receivers) { // Only add receivers outside clusterElement cluster if (receiver.clusterPrefab != clusterElement.prefab && diff --git a/Editor/ClusterInspector.cs b/Editor/ClusterInspector.cs index 7af110c..5c18824 100644 --- a/Editor/ClusterInspector.cs +++ b/Editor/ClusterInspector.cs @@ -322,7 +322,7 @@ public class ClusterInspector : Editor { } private void DrawReceivers(Nucleus nucleus, Vector3 parentPos, float size) { - List receivers = null; + List receivers; if (nucleus is Neuron neuron) receivers = neuron.receivers; else if (nucleus is Cluster cluster)