Get subcluster nucleus

This commit is contained in:
Pascal Serrarens 2026-03-03 08:51:09 +01:00
parent 96b240ad6c
commit bd24e6e19b

View File

@ -414,6 +414,21 @@ public class Cluster : Nucleus {
}
public Nucleus GetNucleus(string nucleusName) {
int dotPosition = nucleusName.IndexOf('.');
if (dotPosition >= 0) {
string clusterName = nucleusName[..dotPosition];
string clusterName0 = clusterName + ": 0";
foreach (Nucleus nucleus in this.clusterNuclei) {
if (nucleus is Cluster cluster) {
if (cluster.name == clusterName || cluster.name == clusterName0) {
string subNucleusName = nucleusName[(dotPosition + 1)..];
return cluster.GetNucleus(subNucleusName);
}
}
}
return null;
}
else {
string nucleusName0 = nucleusName + ": 0";
foreach (Nucleus nucleus in this.clusterNuclei) {
if (nucleus is IReceptor receptor) {
@ -425,6 +440,7 @@ public class Cluster : Nucleus {
}
return null;
}
}
[Obsolete("Use GetNucleus instead")]
public IReceptor GetReceptor(string receptorName) {