Fix existing nested prefabs sync applying when updating base prefab changes

#1015
This commit is contained in:
Wojtek Figat
2023-05-07 18:12:06 +02:00
parent dd7dc28828
commit 0c3d1e3ec6
3 changed files with 48 additions and 64 deletions

View File

@@ -82,12 +82,12 @@ public:
private:
#if USE_EDITOR
typedef Array<class PrefabInstanceData> PrefabInstancesData;
typedef Array<AssetReference<Prefab>> NestedPrefabsList;
bool ApplyAllInternal(Actor* targetActor, bool linkTargetActorObjectToPrefab);
bool ApplyAllInternal(Actor* targetActor, bool linkTargetActorObjectToPrefab, PrefabInstancesData& prefabInstancesData);
bool UpdateInternal(const Array<SceneObject*>& defaultInstanceObjects, rapidjson_flax::StringBuffer& tmpBuffer);
bool SyncChanges(const NestedPrefabsList& allPrefabs);
bool SyncChangesInternal();
void SyncNestedPrefabs(const NestedPrefabsList& allPrefabs);
bool SyncChangesInternal(PrefabInstancesData& prefabInstancesData);
void SyncNestedPrefabs(const NestedPrefabsList& allPrefabs, Array<PrefabInstancesData>& allPrefabsInstancesData) const;
#endif
void DeleteDefaultInstance();