Parcourir la source

Prefab link IDs are now properly assigned, and scene objects with DontSave flag will no longer receive them

BearishSun il y a 10 ans
Parent
commit
536eb7c1d2
1 fichiers modifiés avec 4 ajouts et 1 suppressions
  1. 4 1
      BansheeCore/Source/BsPrefabUtility.cpp

+ 4 - 1
BansheeCore/Source/BsPrefabUtility.cpp

@@ -131,7 +131,7 @@ namespace BansheeEngine
 			{
 			{
 				HSceneObject child = currentSO->getChild(i);
 				HSceneObject child = currentSO->getChild(i);
 
 
-				if (child->mPrefabLinkUUID.empty())
+				if (!child->hasFlag(SOF_DontSave) && child->mPrefabLinkUUID.empty())
 					todo.push(currentSO->getChild(i));
 					todo.push(currentSO->getChild(i));
 			}
 			}
 		}
 		}
@@ -144,7 +144,10 @@ namespace BansheeEngine
 			for (; setIter != existingIds.end(); ++setIter)
 			for (; setIter != existingIds.end(); ++setIter)
 			{
 			{
 				if (nextId < (*setIter))
 				if (nextId < (*setIter))
+				{
 					freeId = nextId++;
 					freeId = nextId++;
+					break;
+				}
 				else
 				else
 					nextId++;
 					nextId++;
 			}
 			}