# On Mouse Scroll

## Overview

![The On Mouse Scroll Node with Object base.](https://2561100106-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ff6JZovzOqBctA4C1o76u%2Fuploads%2Fgit-blob-b926bf64772daa11b1ea369fb9c9a99aeeb3a7f5%2Fon-mouse-scroll-objbase.png?alt=media)

![The On Mouse Scroll Node with Screen base.](https://2561100106-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ff6JZovzOqBctA4C1o76u%2Fuploads%2Fgit-blob-ba3730bfeedbb281b8cb2df4e73a874cc525b635%2Fon-mouse-scroll-scrbase.png?alt=media)

**On Mouse Scroll** is an **Event Listener** **Node** used for executing a **Logic Branch** when the user scrolls either over an **Object** or anywhere in the **Screen**.

The **Attributes** allow the user to choose whether the `Event Base` is a specific **Object** or the entire **Screen**.

[**Scope**](https://docs.incari.com/incari-studio/2023.2/overview#scopes): **Scene**, **Prefab**.

## Attributes

![The On Mouse Scroll Node Attributes.](https://2561100106-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Ff6JZovzOqBctA4C1o76u%2Fuploads%2Fgit-blob-08cf2d08116df8dee23631911db3457fb44ed2f3%2Fon-mouse-scroll-attri.png?alt=media)

### Event Base

| Attribute    | Type          | Description                                                                                               |
| ------------ | ------------- | --------------------------------------------------------------------------------------------------------- |
| `Event Base` | **Drop-down** | Whether the **Logic** will be triggered when the cursor enters a particular **Object** or the **Screen**. |

## Inputs

Note: **Input Sockets** only available when `Event Base` is set to `Object`.

| Input           | Type         | Description                                                                        |
| --------------- | ------------ | ---------------------------------------------------------------------------------- |
| `Object ID`     | **ObjectID** | The **Object** in which scrolling over triggers the **Logic Branch**.              |
| `Subscribe` (►) | **Pulse**    | An **Input Pulse** that needs to be triggered to start listening to the **Event**. |

## Outputs

| Output             | Type         | Description                                                                                                                                                                                      |
| ------------------ | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| *Pulse Output* (►) | **Pulse**    | A standard **Output Pulse**, to move onto the next **Node** along the **Logic Branch**, once this **Node** has finished its execution.                                                           |
| `Direction`        | **Vector2**  | **Vector** whose Y-coordinate indicates the direction and speed of the scrolling.                                                                                                                |
| `Object ID`        | **ObjectID** | The **Object ID** of the **Object** where the scroll occurs. If there is no **Object** on that part of the **Screen**, the output is the **Object ID** `00000000-0000-0000-0000-000000000000`.   |
| `Event ID`         | **ObjectID** | The ID of the current **Event**. This can be connected to the [**Unsubscribe Node**](https://docs.incari.com/incari-studio/2023.2/toolbox/events/unsubscribe) to unsubscribe from the **Event**. |

## See Also

* [**Events**](https://docs.incari.com/incari-studio/2023.2/toolbox/events)
* [**Mouse**](https://docs.incari.com/incari-studio/2023.2/toolbox/events/mouse)
