Example #1
0
    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();
        }
    }