protected void SetupOneToManyRelationship(OneToManyRelationship oneToMany, string ownerEntityId, string subjectEntityId, List <string> objectEntitiesId) { oneToMany.subjectEntity = entityObjects[subjectEntityId].GetComponent <EntityData>(); oneToMany.objectEntities = new List <EntityData>(objectEntitiesId.Count); foreach (string id in objectEntitiesId) { oneToMany.objectEntities.Add(entityObjects[id].GetComponent <EntityData>()); } // update cross references oneToMany.OnValidate(); }
public static void IncludeChildrenInRelationship(OneToManyRelationship rel) { GameObject selObj = rel.gameObject; if (rel.objectEntities == null) { rel.objectEntities = new List <EntityData>(); } for (int i = 0; i < selObj.transform.childCount; i++) { var childEntity = selObj.transform.GetChild(i).gameObject.GetComponent <EntityData>(); if (childEntity) { rel.objectEntities.Add(childEntity); } } rel.OnValidate(); }