UnityEditor.PrefabUtility.RevertPrefabInstance C# (CSharp) Method

RevertPrefabInstance() private method

private RevertPrefabInstance ( GameObject go ) : bool
go UnityEngine.GameObject
return bool
        public static extern bool RevertPrefabInstance(GameObject go);
        /// <summary>

Usage Example

Exemplo n.º 1
0
        internal static void RevertPrefabInstanceWithUndo(GameObject target)
        {
            string     text       = "Revert Prefab Instance";
            PrefabType prefabType = PrefabUtility.GetPrefabType(target);
            bool       flag       = prefabType == PrefabType.DisconnectedModelPrefabInstance || prefabType == PrefabType.DisconnectedPrefabInstance;
            GameObject gameObject;

            if (flag)
            {
                gameObject = PrefabUtility.FindRootGameObjectWithSameParentPrefab(target);
            }
            else
            {
                gameObject = PrefabUtility.FindValidUploadPrefabInstanceRoot(target);
            }
            List <UnityEngine.Object> hierarchy = new List <UnityEngine.Object>();

            PrefabUtility.GetObjectListFromHierarchy(hierarchy, gameObject);
            Undo.RegisterFullObjectHierarchyUndo(gameObject, text);
            if (flag)
            {
                PrefabUtility.ReconnectToLastPrefab(gameObject);
                Undo.RegisterCreatedObjectUndo(PrefabUtility.GetPrefabObject(gameObject), text);
            }
            PrefabUtility.RevertPrefabInstance(gameObject);
            List <UnityEngine.Object> list = new List <UnityEngine.Object>();

            PrefabUtility.GetObjectListFromHierarchy(list, PrefabUtility.FindPrefabRoot(gameObject));
            PrefabUtility.RegisterNewObjects(list, hierarchy, text);
        }
All Usage Examples Of UnityEditor.PrefabUtility::RevertPrefabInstance