public IEnumerable <ResId> getNewIds() { foreach (var index in getNewIndexes()) { yield return(ResId.fromObjectIndex(index)); } }
public ResId registerSkeleton(Transform rootTransform, bool findPrefab) { if (findPrefab) { rootTransform = Utility.getSrcPrefabAssetObject(rootTransform, false); } JsonSkeleton skel = findSkeleton(rootTransform); if (skel != null) { var testId = findSkeletonId(rootTransform); Sanity.check(testId == skel.id, "ID mismatch within skeleton registry"); return(skel.id); } /* if (jsonSkeletons.TryGetValue(rootTransform, out skel)) * return skel.id;*/ var newSkel = JsonSkeletonBuilder.buildFromRootTransform(rootTransform); var newId = ResId.fromObjectIndex(skeletons.Count); //ResId.fromObjectIndex(jsonSkeletons.Count); Sanity.check(skeletons.Count == sortedSkelIds.Count, "Skeleton id and skeleton count mismatch"); newSkel.id = newId; //jsonSkeletons.Add(rootTransform, newSkel); skelIds.Add(rootTransform, newId); skeletons.Add(newId, newSkel); sortedSkelIds.Add(newId); jsonSkeletonRootTransforms.Add(newSkel.id, rootTransform); return(newSkel.id); }
ResId idFromIndex(int index) { return(ResId.fromObjectIndex(index)); }