public override void OnInspectorGUI() { serializedObject.Update(); var auto = serializedObject.FindProperty("autoPower"); var power = serializedObject.FindProperty("power"); float powerValue = power.floatValue; EditorGUI.BeginChangeCheck(); bool autoValue = EditorGUILayout.Toggle("Automatic Power", auto.boolValue); if (autoValue == false) { powerValue = EditorGUILayout.FloatField("Power", power.floatValue); } if (EditorGUI.EndChangeCheck()) { Undo.RecordObject(target, target.name + " params"); auto.boolValue = autoValue; power.floatValue = powerValue; serializedObject.ApplyModifiedProperties(); EditorUtility.SetDirty(target); if (spline != null) { spline.Create(); } } }
public override void OnInspectorGUI() { serializedObject.Update(); var auto = serializedObject.FindProperty("auto"); var parts = serializedObject.FindProperty("parts"); var power = serializedObject.FindProperty("power"); int partsValue = parts.intValue; float powerValue = power.floatValue; EditorGUI.BeginChangeCheck(); bool autoValue = EditorGUILayout.Toggle("Automatic bezeir", auto.boolValue); if (autoValue == false) { partsValue = EditorGUILayout.IntField("Points count", parts.intValue); powerValue = EditorGUILayout.FloatField("Bezier power", power.floatValue); } if (EditorGUI.EndChangeCheck()) { Undo.RecordObject(target, target.name + " params"); auto.boolValue = autoValue; parts.intValue = partsValue; power.floatValue = powerValue; serializedObject.ApplyModifiedProperties(); EditorUtility.SetDirty(target); spline.Create(); } EditorGUILayout.Space(); EditorGUILayout.LabelField("Total Length: " + spline.Length, EditorStyles.label); }