public override void OnInspectorGUI() { MonoImporter monoImporter = this.target as MonoImporter; MonoScript script = monoImporter.GetScript(); if (script) { Type @class = script.GetClass(); if (!MonoScriptImporterInspector.IsTypeCompatible(@class)) { EditorGUILayout.HelpBox("No MonoBehaviour scripts in the file, or their names do not match the file name.", MessageType.Info); } Vector2 iconSize = EditorGUIUtility.GetIconSize(); EditorGUIUtility.SetIconSize(new Vector2(16f, 16f)); List <string> list = new List <string>(); List <UnityEngine.Object> list2 = new List <UnityEngine.Object>(); bool flag = false; this.ShowFieldInfo(@class, monoImporter, list, list2, ref flag); EditorGUIUtility.SetIconSize(iconSize); if (flag) { monoImporter.SetDefaultReferences(list.ToArray(), list2.ToArray()); AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(monoImporter)); } } }
public override void OnInspectorGUI() { MonoImporter target = this.target as MonoImporter; MonoScript script = target.GetScript(); if (script != null) { System.Type type = script.GetClass(); if (!IsTypeCompatible(type)) { EditorGUILayout.HelpBox("No MonoBehaviour scripts in the file, or their names do not match the file name.", MessageType.Info); } Vector2 iconSize = EditorGUIUtility.GetIconSize(); EditorGUIUtility.SetIconSize(new Vector2(16f, 16f)); List <string> names = new List <string>(); List <UnityEngine.Object> objects = new List <UnityEngine.Object>(); bool didModify = false; this.ShowFieldInfo(type, target, names, objects, ref didModify); EditorGUIUtility.SetIconSize(iconSize); if (didModify) { target.SetDefaultReferences(names.ToArray(), objects.ToArray()); AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(target)); } } }
public override void OnInspectorGUI() { MonoImporter monoImporter = base.target as MonoImporter; MonoScript script = monoImporter.GetScript(); if (script) { Type @class = script.GetClass(); if (!InternalEditorUtility.IsInEditorFolder(monoImporter.assetPath)) { if (!MonoScriptImporterInspector.IsTypeCompatible(@class)) { EditorGUILayout.HelpBox("No MonoBehaviour scripts in the file, or their names do not match the file name.", MessageType.Info); } } List <string> list = new List <string>(); List <UnityEngine.Object> list2 = new List <UnityEngine.Object>(); bool flag = false; using (new EditorGUIUtility.IconSizeScope(new Vector2(16f, 16f))) { this.ShowFieldInfo(@class, monoImporter, list, list2, ref flag); } if (list2.Count != 0) { EditorGUILayout.HelpBox("Default references will only be applied in edit mode.", MessageType.Info); } if (flag) { monoImporter.SetDefaultReferences(list.ToArray(), list2.ToArray()); AssetDatabase.ImportAsset(AssetDatabase.GetAssetPath(monoImporter)); } } }
private static string GetObjectTypeName(UnityEngine.Object o) { string result; if (o == null) { result = "Nothing Selected"; } else if (o is GameObject) { result = o.name; } else if (o is TagManager) { result = "Tags & Layers"; } else if (o is Component) { MonoBehaviour monoBehaviour = o as MonoBehaviour; if (monoBehaviour) { string scriptClassName = monoBehaviour.GetScriptClassName(); if (scriptClassName == "InvalidStateMachineBehaviour") { result = monoBehaviour.name + " (Script)"; } else { result = scriptClassName + " (Script)"; } } else { MeshFilter meshFilter = o as MeshFilter; if (meshFilter) { Mesh sharedMesh = meshFilter.sharedMesh; result = ((!sharedMesh) ? "[none]" : sharedMesh.name) + " (MeshFilter)"; } else { result = o.GetType().Name; } } } else if (o is AssetImporter) { MonoImporter monoImporter = o as MonoImporter; if (monoImporter) { MonoScript script = monoImporter.GetScript(); result = "Default References (" + ((!script) ? string.Empty : script.name) + ")"; } else { SubstanceImporter substanceImporter = o as SubstanceImporter; if (substanceImporter) { MonoScript substanceArchive = substanceImporter.GetSubstanceArchive(); if (substanceArchive) { result = substanceArchive.name + " (Substance Archive)"; return(result); } } result = o.GetType().Name; } } else { result = o.name + " (" + o.GetType().Name + ")"; } return(result); }