示例#1
0
    float GetAxisRaw(AxisType axisType)
    {
        InputDeviceConfig.AxisMapping mapping = config.GetAxisMapping(axisType);
        if (mapping == null)
        {
            return(0);
        }

        string axisStr = mapping.axis;

        if (config.isJoystick)
        {
            axisStr = axisStr.Replace("#", deviceId.ToString());
            return(Input.GetAxisRaw(axisStr) * mapping.InverseFactor);
        }
        else
        {
            string[] axisStringSplit = axisStr.Split(' ');
            int      axisVal         = 0;
            if (Input.GetKey(axisStringSplit[0]))
            {
                axisVal++;
            }
            if (Input.GetKey(axisStringSplit[1]))
            {
                axisVal--;
            }
            return(axisVal * mapping.InverseFactor);
        }
    }
示例#2
0
 public MinMaxNormAxisInput(AxisType axis)
 {
     Axis = axis;
     InputDeviceConfig.AxisMapping axisMapping = InputManager.activeDevice.config.GetAxisMapping(axis);
     DebugUtil.Assert(axisMapping != null, string.Format("Axis {0} have to be mapped.", axis));
     MinInput = axisMapping.min;
     MaxInput = axisMapping.max;
 }
示例#3
0
 internal bool hasAxis(AxisType axisType)
 {
     InputDeviceConfig.AxisMapping axisMapping = config.GetAxisMapping(axisType);
     return(axisMapping != null);
 }