# Advanced

You can look in the **Demo** folder, you have some examples.

#### Actor Component - Events

To bind an event to an actor component, there are several possibilities.\
1\. Click on the actor component and look at the `Events` category in the `Details` menu\
2\. You can bind via functions in the blueprints<br>

{% hint style="info" %}
**Client Side:**

"OnInteract (Player,Component,Layer,Type)"\
"OnHoveredInteract (Player,Component)"\
"OnUnHoveredInteract (Player,Component)"\
"OnInteractTextChange (Text)"\
"OnStartHoldInteract (Player,Type,Layer)"\
"OnFinishHoldInteract (Player,Type,Layer)"\
"OnMultipleTap (Component)"\
"OnFinishMultipleTap (Player,Layer)"\
"OnInteractReset"\
"OnInteractionRestart"\
"OnStopInteraction (Actor,Type,Layer,Cancelled)"\
"OnChangeInteract (Old Actor,Old Component,New Actor,New Component)"

**\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_**

\
Player = Pawn\
Actor = A\_MIS\_InteractComponent\
Component = Scene Component\
Type = E\_MIS\_InteractType\
Layer = Integer\
Cancelled = Boolean\
Text = Text
{% endhint %}

#### BPI\_MIS

The `BPI_MIS` interface allows to manage the interaction on the actor himself so the parent of the child actor.

{% hint style="info" %}
**Client Side:**

"CanInteract (Player,Component,Layer)": If the player can interact with or not\
"GetInteractionText (Player,Component)": The text that will be displayed\
\
Player = Pawn\
Component = A\_MIS\_InteractComponent\
Layer = Integer
{% endhint %}

#### Child Actor - Events

To bind an event to a child actor it is important to get the `Child Actor` variable and cast it to `A_MIS_InteractComponent`, then you can bind the event you want

{% hint style="info" %}
**Server Side:**

"ED\_OnInteract (Player, Component)": when interaction is valid and made

**Client Side:**\
"ED\_OnHovered (Player, Component)": when an interaction is hovered\
"ED\_OnUnHovered (Player, Component)": when an interaction is unhovered\
"ED\_OnMultipleTapChanged (Current, Required)": when a Multiple Tap interaction changes

\
Player = Pawn\
Component = A\_MIS\_InteractComponent\
Current/Required = Integer
{% endhint %}


---

# 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://400-interactive.gitbook.io/mis/advanced.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.
