> For the complete documentation index, see [llms.txt](https://hiveminddocs.gitbook.io/hivemind/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hiveminddocs.gitbook.io/hivemind/code-systems/ultimate-interaction-system-uis/classes/components/interaction-component.md).

# Interaction Component

To make an actor able to handle interaction events you'll need to add this component to the actor.

This component has a set of bindable events and some properties to help you set up your interactions for your actors.

## <mark style="color:blue;">Functions</mark>

### <mark style="color:blue;">Bindable Events</mark>

* <mark style="color:yellow;">On Interaction Started</mark>: Executed upon interaction start - Handle any logic you wish here upon interaction start.
* <mark style="color:yellow;">On Interaction Triggered</mark>: Executed upon triggering the interaction. This is the most commonly used function, this is where your logic resides for what should happen when the when this actor has been interacted with.
* <mark style="color:yellow;">On Interaction Release</mark>: Executed upon player releasing the interaction. Any logic that should happen upon releasing an interaction should be placed here. Example could be damaging the player upon releasing the interaction before it had finished.
* <mark style="color:yellow;">On Interaction Cancelled</mark>: Executed upon cancelling the interaction. Any logic you want to happen if the interaction has been cancelled should be placed here.

### <mark style="color:blue;">Editable Properties</mark>

* <mark style="color:yellow;">Interaction Execution Mode</mark>: Set the type of player interaction for this interactable here.
* <mark style="color:yellow;">Custom Mode</mark>: The custom mode index
* <mark style="color:yellow;">Time Length</mark>: Determines the length of Timed Interaction Execution mode, or when using the Execute Timed Event function.
* <mark style="color:yellow;">Time Animation Curve</mark>: If you want to change the Timed Event progress update animation (default is linear) then set a curve here to change progress update animation beheavior.
* <mark style="color:yellow;">Use Interaction Limit</mark>: Enables or Disables Use Interaction Limit. This allows you to only let this interactable to be interacted with a Certain amount of times.
* <mark style="color:yellow;">Interaction Limit</mark>: Amount of times this interactable can be interacted with.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://hiveminddocs.gitbook.io/hivemind/code-systems/ultimate-interaction-system-uis/classes/components/interaction-component.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
