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