# Input Manager

## Old Input System

The **InputManager** script on the player object allows you to modify inputs.

<div align="left"><figure><img src="https://2072522777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFBh2TZqtexSybhI3ygp%2Fuploads%2FsEkaLNfu4h2q0W8yXAls%2Fimage.png?alt=media&#x26;token=3dc8e2cc-7423-47ce-871d-a1bffa02f723" alt=""><figcaption></figcaption></figure></div>

**Locmotion**

| Key        | Use                                          |
| ---------- | -------------------------------------------- |
| Jump Key   | Jumping                                      |
| Drop key   | This key is used to jump down from the ledge |
| Move Type  | Switches walking and running modes           |
| Sprint Key | You can sprint by holding this key           |

**Parkour**

| Key                | Use                                                                 |
| ------------------ | ------------------------------------------------------------------- |
| Jump Key           | Jumping/Climbing                                                    |
| Drop key           | This key is used to drop from the hang and jump down from the ledge |
| Jump From Hang Key | It's used to jump from hang                                         |

Use the **arrow keys** or **W, S, A**, and **D** to move horizontally and vertically.

**Buttons** are Unity's default input buttons. You can create and edit those buttons from Unity's **Input Manager (**<mark style="color:green;">Edit> Project Settings</mark>**)**

<div align="left"><figure><img src="https://2072522777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFBh2TZqtexSybhI3ygp%2Fuploads%2FdIWDJzwAewZlAeEzHpcp%2FScreenshot%202023-09-07%20161902.png?alt=media&#x26;token=342e0ba1-59a1-41f9-9713-b154406c2679" alt=""><figcaption></figcaption></figure></div>

## New Input System

To use the New Input System:

1. Ensure the **Input System** package is installed via the Package Manager.
2. Open **Tools > FS System**, then go to the **Dependencies** tab.
3. Enable the **New Input System** option.

This will configure the FS System to work with Unity’s New Input System.\
![](https://2072522777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFBh2TZqtexSybhI3ygp%2Fuploads%2F0K0qocLLYdNBE0ifMg2c%2FScreenshot%202025-07-29%20201029.png?alt=media\&token=a889c4a0-5a66-4098-ae6a-7825fc75c58d)

To customize parkour related input actions using the New Input System:

1. **Open the Input Action Asset**\
   Navigate to:\
   `ThirdPersonController/InputAction/FSSystemsInputAction` and open the asset.

<div align="left"><figure><img src="https://2072522777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFBh2TZqtexSybhI3ygp%2Fuploads%2FqcJQpnvtX2CSSwTk95PV%2Fimage.png?alt=media&#x26;token=e8171405-5533-426e-9a9e-e155617cd814" alt=""><figcaption></figcaption></figure></div>

<div align="left"><figure><img src="https://2072522777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFBh2TZqtexSybhI3ygp%2Fuploads%2FgOL4wpdkevifmHHEXJk1%2Fimage.png?alt=media&#x26;token=2571560f-26cc-41d2-bead-fa643d93f7a7" alt=""><figcaption></figcaption></figure></div>

1. **Select the Action Map**\
   In the **Action Maps** panel (left), select the `Parkour/Locomotion` action map.
2. **Customize Input Bindings**\
   After selecting an action (e.g., `Jump` or `MoveInput`):

   * You'll see associated bindings like **Left Button \[Mouse]** or **Right Trigger \[Gamepad]**.
   * Click a binding to modify it.

   ➕ You can add multiple bindings for different devices (e.g., mouse, gamepad) by clicking the `+` next to the action.

|                                   | Keyboard input          | Controller input |
| --------------------------------- | ----------------------- | ---------------- |
| Directional input & move          | W, A, S, D & Arrow Keys | Left Stick       |
| Sprint key                        | LeftShift               | RT               |
| Move type                         | Tab                     | LB               |
| Jump & Climb                      | Space                   | A                |
| Jump/Climb to specified direction | Space + Direction       | A + Direction    |
| Jump from hang                    | Q + Direction           | RT + Direction   |
| Drop                              | E                       | B                |
| Jump down                         | E + Direction           | B + Direction    |
| Camera rotation                   | Mouse                   | Right Stick      |

## Mobile Controller

If you want to use mobile controller, enable new input system support from the Tools/Climbing System/Welcome window. But keep in mind that the input system package must be installed before enabling this option

<figure><img src="https://2072522777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFBh2TZqtexSybhI3ygp%2Fuploads%2FD5VX0NYQqNFZsT8nPOij%2FScreenshot%202023-10-12%20112401.png?alt=media&#x26;token=1dbd99f8-6931-45b9-9020-a3a730f24f7e" alt=""><figcaption></figcaption></figure>

<div align="left"><figure><img src="https://2072522777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFBh2TZqtexSybhI3ygp%2Fuploads%2F8l2LmJEJM7k2GP3mXAoe%2FScreenshot%202023-11-06%20224302.png?alt=media&#x26;token=c68bfccf-3c0d-4b1c-aefa-acf14aab2733" alt=""><figcaption></figcaption></figure></div>

Enable the **Parkour Mobile Controller** game object.

<div align="left"><figure><img src="https://2072522777-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJFBh2TZqtexSybhI3ygp%2Fuploads%2FIjSVd6XutFVrHh2m9MIY%2FScreenshot%202024-09-03%20112919.png?alt=media&#x26;token=36abdd04-1a59-4ba6-9a8d-78593342a634" alt=""><figcaption></figcaption></figure></div>
