using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using UnityEditor;
|
using Snxxz.UI;
|
|
public class PrefabHelper
|
{
|
[InitializeOnLoadMethod]
|
static void StartInitializeOnLoadMethod()
|
{
|
PrefabUtility.prefabInstanceUpdated = delegate (GameObject instance)
|
{
|
var prefab = PrefabUtility.GetPrefabParent(instance) as GameObject;
|
var prefabLoaders = prefab.GetComponentsInChildren<UIPrefabLoader>();
|
|
var dirty = false;
|
foreach (var loader in prefabLoaders)
|
{
|
if (!string.IsNullOrEmpty(loader.prefabName))
|
{
|
var find = loader.transform.Find(loader.prefabName);
|
if (find)
|
{
|
GameObject.DestroyImmediate(find.gameObject, true);
|
EditorUtility.SetDirty(loader.gameObject);
|
dirty = true;
|
}
|
}
|
}
|
|
if (dirty)
|
{
|
AssetDatabase.SaveAssets();
|
}
|
};
|
}
|
|
|
}
|