# getVehicleWheelFrictionState (Client)

> Tells how a vehicle's wheels are gripping the ground.

- **Platform**: MY Multiplayer (MYMP)
- **Kind**: Lua Function
- **Side**: Client
- **Category**: Vehicles
- **URL**: https://wiki.mymp.gg/en/getVehicleWheelFrictionState

## Syntax

```lua
int|table|false getVehicleWheelFrictionState(vehicle vehicle, int|string|table wheels)
```

## Parameters

| Name | Type | Description |
| --- | --- | --- |
| `vehicle` | `vehicle` | The vehicle. |
| `wheels` | `int\|string\|table` | Which wheels: a number (0 front left, 1 rear left, 2 front right, 3 rear right, -1 all), a name (`wheel_lf`, `wheel_lr`, `wheel_rf`, `wheel_rr`), a group (`all`, `front_wheels`, `rear_wheels`, `left_wheels`, `right_wheels`) or a table of these. |

## Returns

0 rolling normally, 1 spinning, 2 skidding, 3 locked. A single value when `wheels` is one number or name outside a table; otherwise a table with each wheel's value, keyed by wheel name. `false` if the vehicle lacks any of the wheels asked for. A vehicle that is streamed out gives 0.

## Example

```lua
addEventHandler("onClientRender", root, function()
    local vehicle = getPedOccupiedVehicle(localPlayer)
    if not vehicle then return end
    local states = getVehicleWheelFrictionState(vehicle, "rear_wheels")
    if states and (states.wheel_lr == 2 or states.wheel_rr == 2) then
        dxDrawText("DRIFT", 40, 300)
    end
end)
```

### Coming from MTA

Besides the wheel number, it takes wheel names, groups and tables.

## See also

- [isVehicleWheelOnGround (Client)](https://wiki.mymp.gg/en/isVehicleWheelOnGround.md): Tells whether a vehicle's wheels are touching something.
- [getVehicleWheelState (Shared)](https://wiki.mymp.gg/en/getVehicleWheelState.md): Returns the state of one or more wheels of a vehicle.
- [isVehicleOnGround (Shared)](https://wiki.mymp.gg/en/isVehicleOnGround.md): Returns whether a vehicle is resting on the ground.
