# setControlState (Cliente)

> Pulsa o suelta un control de un ped como si fuera una tecla, por ejemplo para que camine, salte o dispare.

- **Plataforma**: MY Multiplayer (MYMP)
- **Tipo**: Función Lua
- **Lado**: Cliente
- **Categoría**: Controles
- **URL**: https://wiki.mymp.gg/es/setControlState-client
- **Contraparte**: También existe en el servidor, con otra implementación: [setControlState (Servidor)](https://wiki.mymp.gg/es/setControlState-server.md)

## Sintaxis

```lua
bool setControlState(string control, bool state [, ped thePed = localPlayer])
```

## Parámetros

| Nombre | Tipo | Descripción |
| --- | --- | --- |
| `thePed` | `ped` | El ped o el jugador local. Se puede omitir; entonces es el jugador local. *(por defecto: `localPlayer`)* |
| `control` | `string` | El nombre del control, sin distinguir mayúsculas. |
| `state` | `bool` | `true` para mantenerlo pulsado, `false` para soltarlo. |

## Retorno

`true` si se aplicó el estado. `false` si el nombre del control no existe o si el ped no puede recibir controles.

En un control analógico (caminar, girar, acelerar, frenar), `true` lo pulsa a fondo y suelta el control opuesto. Un control desactivado con `toggleControl` no llega al juego, aunque un script lo pulse.

## Ejemplo

```lua
addCommandHandler("autorun", function()
    local running = not getControlState("forwards")
    setControlState("forwards", running)
    setControlState("sprint", running)
end)
```

### Si vienes de MTA

Además de los controles de MTA, MYMP tiene `block` (bloqueo cuerpo a cuerpo) y `reload` (recargar).

### Atención

En un jugador remoto la función devuelve `true` pero no tiene efecto. En el jugador local, la propia entrada del jugador en ese control reemplaza el estado del script.

## Ver también

- [getControlState (Cliente)](https://wiki.mymp.gg/es/getControlState-client.md): Indica si un control de un ped está pulsado, como forwards, fire o accelerate.
- [setPedAnalogControlState (Cliente)](https://wiki.mymp.gg/es/setPedAnalogControlState.md): Pulsa solo en parte un control analógico de un ped, por ejemplo para que camine despacio o gire suave.
- [toggleControl (Cliente)](https://wiki.mymp.gg/es/toggleControl-client.md): Activa o desactiva un control del jugador local. Un control desactivado no llega al juego, aunque se mantenga pulsada su tecla.
- [setControlState (Servidor)](https://wiki.mymp.gg/es/setControlState-server.md): Pulsa o suelta un control de un jugador como si fuera una tecla. La orden va a su cliente, que la aplica como setControlState en el jugador local.
