GetAnalogControlState: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
m (fix typo)
(5 intermediate revisions by 2 users not shown)
Line 2: Line 2:
{{Client function}}
{{Client function}}
This retrieves the analog control state of a control.  This is useful for detecting sensitive controls, such as those used on a joypad.
This retrieves the analog control state of a control.  This is useful for detecting sensitive controls, such as those used on a joypad.
To get the analog control state for a [[ped]], please use [[getPedAnalogControlState]].


==Syntax==
==Syntax==
<syntaxhighlight lang="lua">float getAnalogControlState ( string controlName )</syntaxhighlight>
<syntaxhighlight lang="lua">float getAnalogControlState ( string control [, bool rawValue ] )</syntaxhighlight>


===Required Arguments===
===Required Arguments===
*'''controlName :''' the name of the control you wish to get the analog state of. Possible values are:
*'''control:''' The control that you want to get the state of. See [[control names]] for a list of possible controls.
**'''left'''
 
**'''right'''
===Optional Arguments===
**'''forwards'''
{{New feature/item|3.0160|1.5.7|20383|
**'''backwards'''
*'''rawValue:''' A bool indicating whether to poll for raw controller state, which ignores keyboard input and any overrides from [[setAnalogControlState]] and others. When set to true, and a controller is not used, the function will always return 0.
**'''vehicle_left'''
}}
**'''vehicle_right'''
**'''steer_forward'''
**'''steer_back'''
**'''accelerate'''
**'''brake_reverse'''
**'''special_control_left'''
**'''special_control_right'''
**'''special_control_up'''
**'''special_control_down'''


===Returns===
===Returns===
Returns a float between 0 and 1 indicating the amount the control is pressed.
Returns a [[float]] between 0 and 1 indicating the amount the control is pressed.


==Example==
==Example==

Revision as of 20:12, 16 January 2020

This retrieves the analog control state of a control. This is useful for detecting sensitive controls, such as those used on a joypad.

To get the analog control state for a ped, please use getPedAnalogControlState.

Syntax

float getAnalogControlState ( string control [, bool rawValue ] )

Required Arguments

  • control: The control that you want to get the state of. See control names for a list of possible controls.

Optional Arguments

  • rawValue: A bool indicating whether to poll for raw controller state, which ignores keyboard input and any overrides from setAnalogControlState and others. When set to true, and a controller is not used, the function will always return 0.

Returns

Returns a float between 0 and 1 indicating the amount the control is pressed.

Example

This creates an /forwards command, which toggles your forwards control state between 0 and 1.

addCommandHandler( "forwards",
    function( )
        if ( getAnalogControlState( "forwards" ) == 0 ) then
            setAnalogControlState( "forwards", 1 )
        else
            setAnalogControlState( "forwards", 0 )
        end
    end
)

See Also