# ShapeClass.client_canTinker

Called to check whether the [Interactable](../Game-Script-Environment/Userdata/Interactable.md) can be tinkered with at this moment.

**Kind:** Callback

**Environments:** Game

## Game

**Callback side:** Client

``` { .lua .api-signature }
ShapeClass:client_canTinker( character )
```

[Open the full Game reference](../Game-Script-Environment/Classes/ShapeClass.md#client_cantinker)

> **Note:**
> Tinkering usually means opening the upgrade menu for seats.

**Parameters:**

| Name | Type | Description |
| --- | --- | --- |
| `self` | table | The class instance. |
| `character` | [Character](../Game-Script-Environment/Userdata/Character.md) | The [Character](../Game-Script-Environment/Userdata/Character.md) of the [Player](../Game-Script-Environment/Userdata/Player.md) that is looking at the [Shape](../Game-Script-Environment/Userdata/Shape.md). |

**Returns:**

| Type | Description |
| --- | --- |
| boolean | A boolean indicating whether the interactable can be tinkered with or not. (Defaults to true if [client_onTinker](../Game-Script-Environment/Classes/ShapeClass.md#client_ontinker) is implemented, otherwise false) |
