Added ants nest
This commit is contained in:
parent
8eb1cbea1a
commit
7fffa6dbe5
@ -279,7 +279,7 @@ public class ClusterInspector : Editor {
|
||||
if (drawnArrays.Contains(receiver.array))
|
||||
continue;
|
||||
drawnArrays.Add(receiver.array);
|
||||
|
||||
|
||||
Nucleus receiverNucleus = receiver;
|
||||
if (receiverNucleus == null)
|
||||
continue;
|
||||
@ -396,7 +396,12 @@ public class ClusterInspector : Editor {
|
||||
else {
|
||||
style.alignment = TextAnchor.UpperCenter;
|
||||
Vector3 labelPos = position - Vector3.down * (size + 10f); // below disc along up axis
|
||||
Handles.Label(labelPos, nucleus.name, style);
|
||||
int colonPos = nucleus.name.IndexOf(":");
|
||||
if (colonPos > 0) {
|
||||
string baseName = nucleus.name[..colonPos];
|
||||
Handles.Label(labelPos, baseName, style);
|
||||
} else
|
||||
Handles.Label(labelPos, nucleus.name, style);
|
||||
}
|
||||
|
||||
if (nucleus is Cluster cluster) {
|
||||
@ -428,17 +433,9 @@ public class ClusterInspector : Editor {
|
||||
|
||||
private void HandleMouseHover(Nucleus nucleus, Rect rect) {
|
||||
GUIContent tooltip;
|
||||
// if (nucleus is Nucleus n) {
|
||||
// tooltip = new(
|
||||
// $"{nucleus.name}" +
|
||||
// //$"\nsynapse count {n.synapses.Count}" +
|
||||
// $"\nValue: {length(nucleus.outputValue)}");
|
||||
// }
|
||||
// else {
|
||||
tooltip = new(
|
||||
$"{nucleus.name}" +
|
||||
$"\nValue: {length(nucleus.outputValue)}");
|
||||
// }
|
||||
tooltip = new(
|
||||
$"{nucleus.name}" +
|
||||
$"\nValue: {length(nucleus.outputValue)}");
|
||||
|
||||
Vector2 mousePosition = Event.current.mousePosition;
|
||||
|
||||
|
||||
@ -66,20 +66,22 @@ public class NucleusArray {
|
||||
public virtual void ProcessStimulus(int thingId, Vector3 inputValue, string thingName = null) {
|
||||
CleanupReceivers();
|
||||
if (!thingReceivers.TryGetValue(thingId, out Nucleus selectedReceiver)) {
|
||||
Debug.Log($"No receiver found for {thingId}");
|
||||
// Debug.Log($"No receiver found for {thingId}");
|
||||
foreach (Nucleus receptor in this.nuclei) {
|
||||
if (receptor is not Nucleus receiver)
|
||||
continue;
|
||||
|
||||
if (thingReceivers.ContainsValue(receiver) == false) {
|
||||
// receiver is not used yet
|
||||
Debug.Log($"{thingId} -> {receiver.name}");
|
||||
// Debug.Log($"{thingId} -> {receiver.name}");
|
||||
thingReceivers.Add(thingId, receiver);
|
||||
selectedReceiver = receiver;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (selectedReceiver == null)
|
||||
return;
|
||||
|
||||
if (thingName != null) {
|
||||
string baseName = selectedReceiver.name;
|
||||
@ -99,8 +101,7 @@ public class NucleusArray {
|
||||
List<int> receiversToRemove = new();
|
||||
foreach (KeyValuePair<int, Nucleus> item in thingReceivers) {
|
||||
if (item.Value.isSleeping) {
|
||||
Nucleus n = item.Value as Nucleus;
|
||||
Debug.Log($"{item.Value.name} is sleeping, stale = {n.stale}");
|
||||
//Nucleus n = item.Value as Nucleus;
|
||||
receiversToRemove.Add(item.Key);
|
||||
}
|
||||
}
|
||||
@ -108,7 +109,6 @@ public class NucleusArray {
|
||||
Nucleus selectedReceiver = thingReceivers[thingId];
|
||||
|
||||
thingReceivers.Remove(thingId);
|
||||
Debug.Log($"Cleanup receiver for {thingId}");
|
||||
|
||||
int colonPos = selectedReceiver.name.IndexOf(":");
|
||||
if (colonPos > 0)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user