Roblox UtilitiesDevlHub Roblox Documentation

Class

InputAction

Inherits
Instance › Object
Memory category
Instances

Defines a gameplay action mechanic. These actions are then mapped to hardware inputs using InputBinding.

InputAction defines a gameplay action mechanic such as "Jump," "Sprint," or "Shoot." These actions are then mapped to hardware inputs using InputBinding. An InputAction will check for its first ancestor type of InputContext and register itself to that context (if there is no ancestor context, it will be registered to a default context).

Properties 9#

BoolStatebooleanNon-scriptable read-only property useful for debugging Bool input actions.Read: RobloxScriptSecurityWrite: RobloxScriptSecurityReadSafeReadOnlyNotReplicatedNotScriptable
Direction1DStatefloatNon-scriptable read-only property useful for debugging Direction1D input actions.Read: RobloxScriptSecurityWrite: RobloxScriptSecurityReadSafeReadOnlyNotReplicatedNotScriptable
Direction2DStateVector2Non-scriptable read-only property useful for debugging Direction2D input actions.Read: RobloxScriptSecurityWrite: RobloxScriptSecurityReadSafeReadOnlyNotReplicatedNotScriptable
Direction3DStateVector3Non-scriptable read-only property useful for debugging Direction3D input actions.Read: RobloxScriptSecurityWrite: RobloxScriptSecurityReadSafeReadOnlyNotReplicatedNotScriptable
DisplayNamestringLocalized display name for this action.ReadSafe
EnabledbooleanDetermines if the InputAction is enabled or not.ReadSafe
PreferredBindingInputBindingThe InputBinding best matching the player's current input device.ReadSafeReadOnlyNotReplicated
TypeInputActionTypeSpecifies what type of input value the action is expecting.ReadSafe
ViewportPositionStateVector2Non-scriptable read-only property useful for debugging ViewportPosition input actions.Read: RobloxScriptSecurityWrite: RobloxScriptSecurityReadSafeReadOnlyNotReplicatedNotScriptable

BoolState: boolean#

ReadOnlyNotReplicatedNotScriptableRead: RobloxScriptSecurityWrite: RobloxScriptSecurityReadSafe

A non-scriptable read-only property only visible in Studio, primarily useful for debugging while testing an InputAction with Type of Bool.

Direction1DState: float#

ReadOnlyNotReplicatedNotScriptableRead: RobloxScriptSecurityWrite: RobloxScriptSecurityReadSafe

A non-scriptable read-only property only visible in Studio, primarily useful for debugging while testing an InputAction with Type of Direction1D.

Direction2DState: Vector2#

ReadOnlyNotReplicatedNotScriptableRead: RobloxScriptSecurityWrite: RobloxScriptSecurityReadSafe

A non-scriptable read-only property only visible in Studio, primarily useful for debugging while testing an InputAction with Type of Direction2D.

Direction3DState: Vector3#

ReadOnlyNotReplicatedNotScriptableRead: RobloxScriptSecurityWrite: RobloxScriptSecurityReadSafe

A non-scriptable read-only property only visible in Studio, primarily useful for debugging while testing an InputAction with Type of Direction3D.

DisplayName: string#

ReadSafe

A custom string used to show a localized display name for this action in UI elements such as a controls help menu.

Enabled: boolean#

ReadSafe

Determines if the InputAction is enabled or not. The action state will be reset if this property is toggled to false.

PreferredBinding: InputBinding#

ReadOnlyNotReplicatedReadSafe

A read-only reference to the InputBinding child that matches the player's current input device using UserInputService.PreferredInput.

Type: InputActionType#

ReadSafe

Specifies what type of input value the action is expecting. See InputActionType for more details.

ViewportPositionState: Vector2#

ReadOnlyNotReplicatedNotScriptableRead: RobloxScriptSecurityWrite: RobloxScriptSecurityReadSafe

A non-scriptable read-only property only visible in Studio, primarily useful for debugging while testing an InputAction with Type of ViewportPosition.

Methods 2#

FireUpdates the InputAction to the given state and fires the appropriate signals.Deprecated
GetStateReturns the current state of the InputAction.Safe

Fire(state: Variant): ()#

DeprecatedDeprecated

Deprecated. Use InputBinding:Fire() with a Scriptable binding instead.

Updates the InputAction to the given state and fires the appropriate signals. This method is most useful for script‑triggered "input" where the passed state should trigger events like Pressed or StateChanged regardless of whether the player triggered that state through normal inputs.

This method will only accept a state parameter that matches the Type and attempting to call it with a mismatched type will cause an error, for example passing a state of 0.5 when the Type is Bool.

Note that this method follows the conditions of Pressed, Released, and StateChanged. For example, if you make multiple consecutive calls to Fire() with a state of true, StateChanged will only fire on the first state change and the subsequent calls to Fire() will do nothing.

NameTypeDefaultDescription
stateVariant
Returns
  • ()

GetState(): Variant#

Safe

Returns the current state of the InputAction, for example true for an action with Type set to Bool.

Returns

Events 3#

PressedFires only when the InputAction.Type is set to Bool on a state transition from false to true.
ReleasedFires only when the InputAction.Type is set to Bool on a state transition from true to false.
StateChangedFires for all InputActionType types whenever the state changes, except if the state attempts to transition to the same state.

Pressed()#

This event fires only when the Type is set to Bool, and only when the state transitions from false to true.

Released()#

This event fires only when the Type is set to Bool, and only when the state transitions from true to false.

StateChanged(value: Variant)#

This event fires for all InputActionType types whenever the state changes, except if the state attempts to transition to the same state.

NameTypeDefaultDescription
valueVariantThe new state of the InputAction.

Inherited members#

Inherited from Instance 58
Inherited from Object 6
Properties (2)

ClassName, className

Events (1)

Changed