Đường dẫn thân thiện với Biên tập viên là một "thanh tra tùy chỉnh". Theo thuật ngữ Unity API, điều này có nghĩa là mở rộng lớp Editor .
Dưới đây là một ví dụ hoạt động, nhưng liên kết doc ở trên sẽ đưa bạn qua rất nhiều chi tiết và các tùy chọn bổ sung:
using UnityEngine;
using UnityEditor;
[CustomEditor(typeof(Test))]
public class TestEditor : Editor
{
private Test targetObject;
void OnEnable()
{
targetObject = (Test) this.target;
}
// Implement this function to make a custom inspector.
public override void OnInspectorGUI()
{
// Using Begin/End ChangeCheck is a good practice to avoid changing assets on disk that weren't edited.
EditorGUI.BeginChangeCheck();
// Use the editor auto-layout system to make your life easy
EditorGUILayout.BeginVertical();
targetObject.testBool = EditorGUILayout.Toggle("Bool", targetObject.testBool);
// GUI.enabled enables or disables all controls until it is called again
GUI.enabled = targetObject.testBool;
targetObject.testString = EditorGUILayout.TextField("String", targetObject.testString);
// Re-enable further controls
GUI.enabled = true;
targetObject.testInt = EditorGUILayout.IntField("Int", targetObject.testInt);
EditorGUILayout.EndVertical();
// If anything has changed, mark the object dirty so it's saved to disk
if(EditorGUI.EndChangeCheck())
EditorUtility.SetDirty(target);
}
}
Hãy nhớ rằng tập lệnh này sử dụng API chỉ dành cho Trình chỉnh sửa, do đó, tập lệnh này phải được đặt trong thư mục có tên Trình chỉnh sửa. Đoạn mã trên sẽ biến thanh tra của bạn thành như sau:
Điều đó sẽ giúp bạn lăn cho đến khi bạn cảm thấy thoải mái hơn với kịch bản Editor.