public override void OnInspectorGUI() { MegaTracks mod = (MegaTracks)target; #if !UNITY_5 EditorGUIUtility.LookLikeControls(); #endif //DrawDefaultInspector(); mod.shape = (MegaShape)EditorGUILayout.ObjectField("Shape", mod.shape, typeof(MegaShape), true); if (mod.shape != null) { if (mod.shape.splines.Count > 1) { mod.curve = EditorGUILayout.IntSlider("Curve", mod.curve, 0, mod.shape.splines.Count - 1); } } mod.LinkObj = (GameObject)EditorGUILayout.ObjectField("Link Object", mod.LinkObj, typeof(GameObject), true); mod.start = EditorGUILayout.FloatField("Start", mod.start); mod.linkOff = EditorGUILayout.Vector3Field("Link Off Start", mod.linkOff); mod.linkOff1 = EditorGUILayout.Vector3Field("Link Off End", mod.linkOff1); mod.linkPivot = EditorGUILayout.Vector3Field("Link Pivot", mod.linkPivot); mod.rotate = EditorGUILayout.Vector3Field("Rotate", mod.rotate); mod.linkRot = EditorGUILayout.Vector3Field("Link Rot", mod.linkRot); mod.randRot = EditorGUILayout.BeginToggleGroup("Rand Rot", mod.randRot); mod.seed = EditorGUILayout.IntField("Seed", mod.seed); EditorGUILayout.EndToggleGroup(); mod.linkScale = EditorGUILayout.Vector3Field("Scale", mod.linkScale); mod.LinkSize = EditorGUILayout.FloatField("Link Size", mod.LinkSize); mod.trackup = EditorGUILayout.Vector3Field("Track Up", mod.trackup); mod.animate = EditorGUILayout.BeginToggleGroup("Animate", mod.animate); mod.speed = EditorGUILayout.FloatField("Speed", mod.speed); EditorGUILayout.EndToggleGroup(); mod.dolateupdate = EditorGUILayout.Toggle("Do LateUpdate", mod.dolateupdate); mod.InvisibleUpdate = EditorGUILayout.Toggle("Invisible Update", mod.InvisibleUpdate); mod.displayspline = EditorGUILayout.Toggle("Display Spline", mod.displayspline); if (GUI.changed) { mod.rebuild = true; EditorUtility.SetDirty(target); mod.Rebuild(); } }