blob: cfd0681043c918c18f9efe4db6d21b87c79b225e (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
#if UNITY_EDITOR
using System.Globalization;
using UnityEditor;
using UnityEngine;
namespace Editor
{
[CustomEditor(typeof(OneWayDoorBehaviour))]
public class OneWayDoorBehaviourEditor : UnityEditor.Editor
{
/*
* Editor page created by Mountools
* Author : WangSoul Team
* Date : 2026 / 06 / 01 - 15:06:38
*/
public OneWayDoorBehaviour oneWayDoorBehaviour;
private void OnEnable()
{
oneWayDoorBehaviour = (OneWayDoorBehaviour) target;
}
private void DrawOneWayDoorBehaviourEditor()
{
EditorGUI.BeginDisabledGroup(oneWayDoorBehaviour.lockId);
{
if (GUILayout.Button("随机一个ID"))
{
oneWayDoorBehaviour.doorAngleStoreId = Random.Range(0, 65535);
}
oneWayDoorBehaviour.doorAngleStoreId =
EditorGUILayout.IntSlider("ID", oneWayDoorBehaviour.doorAngleStoreId, 0, 65535);
}
EditorGUI.EndDisabledGroup();
EditorGUI.BeginDisabledGroup(true);
{
EditorGUILayout.LabelField("单项门角度", oneWayDoorBehaviour.Angle.ToString(CultureInfo.InvariantCulture));
EditorGUILayout.LabelField("单项门开合百分比", oneWayDoorBehaviour.AnglePercent.ToString(CultureInfo.InvariantCulture));
EditorGUILayout.Toggle("单项门是否打开", oneWayDoorBehaviour.IsOpened);
}
EditorGUI.EndDisabledGroup();
}
#region _
public override void OnInspectorGUI()
{
Undo.RecordObject(oneWayDoorBehaviour, "Edit OneWayDoorBehaviour");
EditorGUI.BeginChangeCheck();
DrawDefaultInspector();
DrawOneWayDoorBehaviourEditor();
if (EditorGUI.EndChangeCheck())
{
EditorUtility.SetDirty(oneWayDoorBehaviour);
Undo.FlushUndoRecordObjects();
serializedObject.ApplyModifiedProperties();
}
}
private bool Property(string label, string propertyName, params GUILayoutOption[] options)
{
return EditorGUILayout.PropertyField(serializedObject.FindProperty(propertyName), new GUIContent(label), options);
}
#endregion
}
}
#endif
|