# GetMouseButtonDown(int)

> Returns true during the frame the user pressed the given mouse button.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine](/engine/6000.0/script-reference/unityengine.md)
* **Assembly:** UnityEngine.InputLegacyModule

```csharp
public static bool GetMouseButtonDown(int button)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)):&#x20;

### Returns

| Type                                                          | Description |
| ------------------------------------------------------------- | ----------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) |             |

### Remarks

**Note**: This API is part of the legacy Input Manager. The recommended best practice is that you don't use this API in new projects. For new projects, use the Input System package. To learn more about input, refer to [Input](/engine/6000.0/script-reference/unityengine/input.md).

Call this function from the [MonoBehaviour.Update()](/engine/6000.0/script-reference/unityengine/monobehaviour/update.md) function, since the state gets reset each frame. It will not return true until the user has released the mouse button and pressed it again. *button* values are 0 for left button, 1 for right button, 2 for the middle button.

### Examples

```csharp
using UnityEngine;
using System.Collections;

// Detects clicks from the mouse and prints a message
// depending on the click detected.

public class ExampleClass : MonoBehaviour
{
    void Update()
    {
        if (Input.GetMouseButtonDown(0))
            Debug.Log("Pressed left-click.");

        if (Input.GetMouseButtonDown(1))
            Debug.Log("Pressed right-click.");

        if (Input.GetMouseButtonDown(2))
            Debug.Log("Pressed middle-click.");
    }
}
```
