50 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C#
		
	
	
	
| using UnityEditor;
 | |
| using UnityEngine;
 | |
| using UnityEngine.SceneManagement;
 | |
| using System;
 | |
| using System.Collections;
 | |
| using ES3Internal;
 | |
| 
 | |
| [CustomEditor(typeof(ES3Prefab))]
 | |
| [System.Serializable]
 | |
| public class ES3PrefabEditor : Editor
 | |
| {
 | |
| 	bool showAdvanced = false;
 | |
|     bool openLocalRefs = false;
 | |
| 
 | |
| 	public override void OnInspectorGUI()
 | |
| 	{
 | |
| 		var es3Prefab = (ES3Prefab)serializedObject.targetObject;
 | |
| 		EditorGUILayout.HelpBox("Easy Save is enabled for this prefab, and can be saved and loaded with the ES3 methods.", MessageType.None);
 | |
| 
 | |
| 
 | |
| 		showAdvanced = EditorGUILayout.Foldout(showAdvanced, "Advanced Settings");
 | |
| 		if(showAdvanced)
 | |
| 		{
 | |
| 			EditorGUI.indentLevel++;
 | |
| 			es3Prefab.prefabId =  EditorGUILayout.LongField("Prefab ID", es3Prefab.prefabId);
 | |
| 			EditorGUILayout.LabelField("Reference count", es3Prefab.localRefs.Count.ToString());
 | |
| 			EditorGUI.indentLevel--;
 | |
| 
 | |
|             openLocalRefs = EditorGUILayout.Foldout(openLocalRefs, "localRefs");
 | |
|             if (openLocalRefs)
 | |
|             {
 | |
|                 EditorGUI.indentLevel++;
 | |
| 
 | |
|                 EditorGUILayout.LabelField("It is not recommended to manually modify these.");
 | |
| 
 | |
|                 foreach (var kvp in es3Prefab.localRefs)
 | |
|                 {
 | |
|                     EditorGUILayout.BeginHorizontal();
 | |
| 
 | |
|                     EditorGUILayout.ObjectField(kvp.Key, typeof(UnityEngine.Object), false);
 | |
|                     EditorGUILayout.LongField(kvp.Value);
 | |
| 
 | |
|                     EditorGUILayout.EndHorizontal();
 | |
|                 }
 | |
| 
 | |
|                 EditorGUI.indentLevel--;
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| } |