internal void enableGroup()
{
if (enabled) { return; }
enabled = true;
modelRoot = new GameObject("Root-" + name);
if (parent == null)
{
MonoBehaviour.print("ERROR: Attempt to enable a group at runtime with no parent defined. This should never happen. Bad things are likely to occur soon.");
//TODO -- yah.. this should be unpossible
}
else
{
ModelSwitchData model = modelData.Find(m => m.enabled == true);//for cases where data was loaded from persistence
if (model == null)
{
model = enableDefaultModel();//otherwise just enable the default from the config
}
ModelNode node = parent.findNode(parentNode);
if (node == null) { MonoBehaviour.print("ERROR: Node was null for name: "+parentNode+" for group: "+name); }
modelRoot.transform.NestToParent(node.transform);
setupNodesForModel(model);
initializeModels();
}
}