示例#1
0
        public void SetAxisValue(Xbox360Axis axis, short value)
        {
            switch (axis.Name)
            {
            case "LeftThumbX":
                _nativeReport.sThumbLX = value;
                break;

            case "LeftThumbY":
                _nativeReport.sThumbLY = value;
                break;

            case "RightThumbX":
                _nativeReport.sThumbRX = value;
                break;

            case "RightThumbY":
                _nativeReport.sThumbRY = value;
                break;
            }

            if (AutoSubmitReport)
            {
                SubmitNativeReport(_nativeReport);
            }
        }
示例#2
0
 private void SetValueIfNeeded(Xbox360Axis axis, double?value)
 {
     if (value.HasValue)
     {
         var newValue = (short)((value.Value - 0.5) * 2 * short.MaxValue);
         controller.SetAxisValue(axis, newValue);
     }
 }
示例#3
0
    private static string GetXboxAxisName(uint in_index, Xbox360Axis in_axis)
    {
        string str = null;

        switch (in_axis)
        {
        case Xbox360Axis.LeftX:
            str = "L_XAxis_";
            break;

        case Xbox360Axis.LeftY:
            str = "L_YAxis_";
            break;

        case Xbox360Axis.RightX:
            str = "R_XAxis_";
            break;

        case Xbox360Axis.RightY:
            str = "R_YAxis_";
            break;

        case Xbox360Axis.LT:
            str = "TriggersL_";
            break;

        case Xbox360Axis.RT:
            str = "TriggersR_";
            break;

        case Xbox360Axis.DpadX:
            str = "DPad_XAxis_";
            break;

        case Xbox360Axis.DpadY:
            str = "DPad_YAxis_";
            break;

        default:
            DebugUtil.Assert(false);
            break;
        }
        return(str + (in_index + 1u));
    }
示例#4
0
    public static int GetXboxAxis(uint in_index, Xbox360Axis in_axis)
    {
        float val = GetXboxAxisValue(in_index, in_axis);

        return(Mathf.Approximately(val, 0.0f) ? 0 : Mathf.CeilToInt(val));
    }
示例#5
0
 public static float GetXboxAxisValue(uint in_index, Xbox360Axis in_axis)
 {
     return(Input.GetAxis(GetXboxAxisName(in_index, in_axis)));
 }
示例#6
0
 public VigemXbox360AxisMapping(Xbox360Axis axis)
 {
     Type = axis;
 }
 public static void SetAxis(int controllerId, Xbox360Axis axis, short value)
 {
     singleton.gamepads[controllerId].SetAxisValue(axis, value);
 }