# UserInputState

## Overview

UserInputState is an Enum that represents the state of user input that is currently occurring or has recently completed.

This is widely used in the UserInputState property of InputObject and various events of UserInputService and GuiObject. The behavior of this Enum may vary depending on the input type (Enum.UserInputType).

## Items

| Name   | Value | Description                                                                                                                                                            |
| ------ | ----- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Begin  | 0     | Occurs when InputObject starts interacting with the game, e.g., pressing a key, clicking a mouse button, or starting a screen tap.                                     |
| Change | 1     | Occurs when the state continuously changes during sustained input, e.g., mouse movement, gamepad thumbstick movement, or touch dragging.                               |
| End    | 2     | Occurs when interaction with InputObject ends, e.g., when a key is released, a mouse button is released, or a touch ends.                                              |
| Cancel | 3     | Occurs when input is no longer associated with bound actions. This is mainly used in conjunction with ContextActionService, e.g., when input is unbound or reassigned. |
| None   | 4     | The default value that does not represent a specific state.                                                                                                            |

## See also

{% content-ref url="/pages/SZGuVp7JPyahII6ztV8f" %}
[InputObject](/development/api-reference/classes/inputobject.md)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.overdare.com/development/api-reference/enums/userinputstate.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
