Exemple #1
0
    void Start()
    {
        sH = Screen.height;
        sW = Screen.width;

        touchDriveManager = transform.parent.GetComponent(typeof(TouchDriveManager)) as TouchDriveManager;
    }
Exemple #2
0
 void Start()
 {
     touchDriveManager = transform.parent.GetComponent(typeof(TouchDriveManager)) as TouchDriveManager;
     ButtonTexture     = transform.GetComponent(typeof(GUITexture)) as GUITexture;
 }
Exemple #3
0
    internal static void CreateTouchDriveInspector(TouchDriveManager TDManager)
    {
        int iAlignmentSpace = (Screen.width - 310) / 2;

        GUILayout.Space(10);
        GUILayoutOption[] options = new GUILayoutOption[] { };

        //Logo
        GUILayout.BeginHorizontal(options);
        GUILayout.Space(iAlignmentSpace);
        GUILayout.Box(TouchDriveLogo, GUIStyle.none, GUILayout.Width(310), GUILayout.Height(60));
        GUILayout.EndHorizontal();
        //logo end
        EditorGUILayout.Space();


        CreateVersionHeader("Touch Drive Pro v1.0");
        GUI.changed = false;
        GUILayout.BeginVertical("Box");
        EditorGUILayout.LabelField("Control Templates", EditorStyles.boldLabel);
        TDManager.ControlTemplate = (TouchDriveManager.eControlTemplate)EditorGUILayout.EnumPopup("Current Template", TDManager.ControlTemplate);
        if (TDManager.ControlTemplate != TDManager.oldTemplate)
        {
            TDManager.oldTemplate = TDManager.ControlTemplate;
            TDManager.SwitchTemplate(TDManager.ControlTemplate);
        }
        GUILayout.EndVertical();

        EditorGUILayout.Space();

        GUILayout.BeginVertical("Box");
        EditorGUILayout.LabelField("Vehicle Controls", EditorStyles.boldLabel);
        UnityEngine.Object throttleObject = EditorGUILayout.ObjectField("Throttle", (UnityEngine.Object)TDManager.Throttle, typeof(TouchItemBase), true);
        TDManager.Throttle = throttleObject as TouchItemBase;

        UnityEngine.Object brakeObject = (TouchItemBase)EditorGUILayout.ObjectField("Brake", (UnityEngine.Object)TDManager.Brake, typeof(TouchItemBase), true);
        TDManager.Brake = brakeObject as TouchItemBase;
        EditorGUILayout.Space();
        TDManager.SteerLeft  = (TouchButton)EditorGUILayout.ObjectField("Left Steer", TDManager.SteerLeft, typeof(TouchButton), true);
        TDManager.SteerRight = (TouchButton)EditorGUILayout.ObjectField("Right Steer", TDManager.SteerRight, typeof(TouchButton), true);
        EditorGUILayout.Space();
        TDManager.ShiftUp   = (TouchButton)EditorGUILayout.ObjectField("Shift Up", TDManager.ShiftUp, typeof(TouchButton), true);
        TDManager.ShiftDown = (TouchButton)EditorGUILayout.ObjectField("Shift Down", TDManager.ShiftDown, typeof(TouchButton), true);
        EditorGUILayout.Space();
        TDManager.Wheel = (TouchWheel)EditorGUILayout.ObjectField("Touch Wheel", TDManager.Wheel, typeof(TouchWheel), true);
        EditorGUILayout.Space();
        GUILayout.EndVertical();

        EditorGUILayout.Space();

        GUILayout.BeginVertical("Box");
        EditorGUILayout.LabelField("Misc Controls", EditorStyles.boldLabel);
        TDManager.CameraButton = (TouchButton)EditorGUILayout.ObjectField("Change Camera", TDManager.CameraButton, typeof(TouchButton), true);
        TDManager.MirrorButton = (TouchButton)EditorGUILayout.ObjectField("Mirror/Show Back Camera", TDManager.MirrorButton, typeof(TouchButton), true);
        TDManager.ResetButton  = (TouchButton)EditorGUILayout.ObjectField("Reset Vehicle", TDManager.ResetButton, typeof(TouchButton), true);
        TDManager.PauseButton  = (TouchButton)EditorGUILayout.ObjectField("Pause", TDManager.PauseButton, typeof(TouchButton), true);
        TDManager.Misc1Button  = (TouchItemBase)EditorGUILayout.ObjectField("Misc Button 1", TDManager.Misc1Button, typeof(TouchItemBase), true);
        TDManager.Misc2Button  = (TouchItemBase)EditorGUILayout.ObjectField("Misc Button 2", TDManager.Misc2Button, typeof(TouchItemBase), true);
        GUILayout.EndVertical();
        EditorGUILayout.Space();

        GUILayout.BeginVertical("Box");
        EditorGUILayout.LabelField("Control Positions", EditorStyles.boldLabel);
        TDManager.EnableEditControlPositions = EditorGUILayout.Toggle("Edit Control Positions", TDManager.EnableEditControlPositions);
        if (TDManager.EnableEditControlPositions)
        {
            EditorGUILayout.HelpBox("In this table you can edit final positions of the controls. Template changes uses this control points to move buttons to given positions.", MessageType.Warning, true);
            EditorGUILayout.BeginHorizontal();
            TDManager.showPA    = EditorGUILayout.Toggle("", TDManager.showPA, GUILayout.Width(30));
            TDManager.PositionA = (Vector4)EditorGUILayout.Vector4Field("Throttle (Position A)", TDManager.PositionA);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            TDManager.showPB1    = EditorGUILayout.Toggle("", TDManager.showPB1, GUILayout.Width(30));
            TDManager.PositionB1 = (Vector4)EditorGUILayout.Vector4Field("Brake (Position B 1)", TDManager.PositionB1);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            TDManager.showPB2    = EditorGUILayout.Toggle("", TDManager.showPB2, GUILayout.Width(30));
            TDManager.PositionB2 = (Vector4)EditorGUILayout.Vector4Field("Brake (Position B 2)", TDManager.PositionB2);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            TDManager.showPC    = EditorGUILayout.Toggle("", TDManager.showPC, GUILayout.Width(30));
            TDManager.PositionC = (Vector4)EditorGUILayout.Vector4Field("Throttle or Brake Alone (Position C)", TDManager.PositionC);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            TDManager.showPD    = EditorGUILayout.Toggle("", TDManager.showPD, GUILayout.Width(30));
            TDManager.PositionD = (Vector4)EditorGUILayout.Vector4Field("Steer Left (Position D)", TDManager.PositionD);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            TDManager.showPE    = EditorGUILayout.Toggle("", TDManager.showPE, GUILayout.Width(30));
            TDManager.PositionE = (Vector4)EditorGUILayout.Vector4Field("Steer Right (Position E)", TDManager.PositionE);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            TDManager.showPF    = EditorGUILayout.Toggle("", TDManager.showPF, GUILayout.Width(30));
            TDManager.PositionF = (Vector4)EditorGUILayout.Vector4Field("Touch Wheel (Position F)", TDManager.PositionF);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            TDManager.showPG    = EditorGUILayout.Toggle("", TDManager.showPG, GUILayout.Width(30));
            TDManager.PositionG = (Vector4)EditorGUILayout.Vector4Field("Shift Up (Position G)", TDManager.PositionG);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            TDManager.showPH    = EditorGUILayout.Toggle("", TDManager.showPH, GUILayout.Width(30));
            TDManager.PositionH = (Vector4)EditorGUILayout.Vector4Field("Shift Down (Position H)", TDManager.PositionH);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            TDManager.showPI    = EditorGUILayout.Toggle("", TDManager.showPI, GUILayout.Width(30));
            TDManager.PositionI = (Vector4)EditorGUILayout.Vector4Field("Misc Button 1 (Position I)", TDManager.PositionI);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.BeginHorizontal();
            TDManager.showPJ    = EditorGUILayout.Toggle("", TDManager.showPJ, GUILayout.Width(30));
            TDManager.PositionJ = (Vector4)EditorGUILayout.Vector4Field("Misc Button 2 (Position J)", TDManager.PositionJ);
            EditorGUILayout.EndHorizontal();

            EditorGUILayout.Space();
        }
        TDManager.FlipPositions = EditorGUILayout.Toggle("Flip Positions", TDManager.FlipPositions);
        if (TDManager.FlipPositions)
        {
            EditorGUILayout.HelpBox("WARNING : Control positions swapped! This means your configured controls will display opposite side of screen. As example, if you configured Throttle at right, with this settings it will display at left!", MessageType.Warning, true);
        }
        if (TDManager.oldFlipPosition != TDManager.FlipPositions)
        {
            TDManager.oldFlipPosition = TDManager.FlipPositions;
            TDManager.SwitchTemplate(TDManager.ControlTemplate);
        }
        GUILayout.EndVertical();
        EditorGUILayout.Space();


        GUILayout.BeginVertical("Box");
        EditorGUILayout.LabelField("Options", EditorStyles.boldLabel);
        TDManager.EnableTouch = EditorGUILayout.Toggle("Enable Touch Inputs", TDManager.EnableTouch);
        if (!TDManager.EnableTouch)
        {
            EditorGUILayout.HelpBox("WARNING : Touch Inputs are not enabled. This means TouchDriveManager will not handled control buttons. This happens moslty when game paused.", MessageType.Warning, true);
        }

        TDManager.EnableMouseEmulation = EditorGUILayout.Toggle("Enable Mouse Emulation", TDManager.EnableMouseEmulation);
        EditorGUILayout.Space();

        GUILayout.EndVertical();
        EditorGUILayout.Space();

        GUILayout.BeginVertical("Box");
        EditorGUILayout.LabelField("Driving Features", EditorStyles.boldLabel);
        TDManager._EnableDrivingOptions = EditorGUILayout.Toggle("Enable Driving Features", TDManager._EnableDrivingOptions);
        EditorGUILayout.HelpBox("This values are set by templates.", MessageType.Info);
        EditorGUI.BeginDisabledGroup(true);
        EditorGUILayout.Toggle("Auto Throttle", TDManager._EnableAutoThrottle);
        EditorGUILayout.Toggle("Auto Brake", TDManager._EnableAutoBrake);
        EditorGUILayout.Toggle("Auto Gear Shifting", TDManager._EnableAutoGear);
        EditorGUILayout.Toggle("Tilt Steer", TDManager._EnableTiltSteer);
        EditorGUILayout.Toggle("Button Steer", TDManager._EnableButtonSteer);
        EditorGUILayout.Toggle("Touch Wheel Steer", TDManager._EnableTouchWheelSteer);
        EditorGUILayout.Space();
        EditorGUI.EndDisabledGroup();
        TDManager._UseXAxis   = EditorGUILayout.Toggle("Use X Axis", TDManager._UseXAxis);
        TDManager._InvertAxis = EditorGUILayout.Toggle("Invert Axis", TDManager._InvertAxis);
        EditorGUILayout.Space();
        TDManager._SteerSensitivity = EditorGUILayout.Slider("Steer Sensitivity", TDManager._SteerSensitivity, 1, 10);

        GUILayout.EndVertical();
        EditorGUILayout.Space();

        if (GUI.changed)
        {
            EditorUtility.SetDirty(TDManager);
        }
    }
Exemple #4
0
 public override void OnInspectorGUI()
 {
     TouchDriveManager = target as TouchDriveManager;
     EditorGUIUtility.LookLikeInspector();
     TouchDriveManagerHelper.CreateTouchDriveInspector(TouchDriveManager);
 }