# triggerLatentClientEvent (Servidor)

> Envía un evento a los clientes de los jugadores poco a poco, en segundo plano, a no más de `bandwidth` bytes por segundo por jugador. Sirve para datos grandes que no deben frenar el resto del tráfico.

- **Plataforma**: MY Multiplayer (MYMP)
- **Tipo**: Función Lua
- **Lado**: Servidor
- **Categoría**: Eventos
- **URL**: https://wiki.mymp.gg/es/triggerLatentClientEvent

## Sintaxis

```lua
bool triggerLatentClientEvent(string eventName, element source, any ... [, player|table|element sendTo = root, int bandwidth = 5000, bool persist = false])
```

## Parámetros

| Nombre | Tipo | Descripción |
| --- | --- | --- |
| `sendTo` | `player\|table\|element` | Un jugador, una tabla de jugadores o un elemento cuyos jugadores descendientes reciben el evento. Si se omite, va a todos los jugadores. *(por defecto: `root`)* |
| `eventName` | `string` | Nombre del evento en los clientes. |
| `bandwidth` | `int` | Bytes por segundo, desde 1. Por encima de 128 KB por segundo vale 128 KB. *(por defecto: `5000`)* |
| `persist` | `bool` | Seguir enviando después de que este recurso se detenga. Con `false`, el envío se cancela cuando el recurso se detiene. *(por defecto: `false`)* |
| `source` | `element` | Elemento donde ocurre el evento en los clientes. |
| `...` | `any` | Argumentos pasados a los handlers del otro lado: `nil`, booleanos, números, cadenas, elementos, vectores y tablas de ellos. |

## Retorno

`true` si el evento entró en la cola, `false` si pasa de 16 MB o de un millón de valores.

Cada jugador recibe su propia copia, con su propio handle. Los eventos latentes hacia el mismo destino salen de uno en uno, en el orden en que se dispararon. `getLatentEventHandles` da el handle de cada uno, para seguirlo con `getLatentEventStatus` o detenerlo con `cancelLatentEvent`.

## Ejemplo

```lua
addEventHandler("onPlayerJoin", root, function()
    local map = { name = "downtown", objects = {} }
    triggerLatentClientEvent(source, "onMapDownload", 50000, resourceRoot, map)
end)
```

### Atención

El cliente solo acepta el evento si lo registró con `addEvent(eventName, true)`.

## Ver también

- [triggerClientEvent (Servidor)](https://wiki.mymp.gg/es/triggerClientEvent.md): Envía un evento a los clientes de los jugadores, que lo disparan en source. La función vuelve antes de que los clientes lo reciban.
- [getLatentEventHandles (Servidor)](https://wiki.mymp.gg/es/getLatentEventHandles-server.md): Lista los eventos latentes que el servidor aún está enviando a un jugador.
- [getLatentEventStatus (Servidor)](https://wiki.mymp.gg/es/getLatentEventStatus-server.md): Indica cómo va el envío de un evento latente del servidor a un jugador.
- [cancelLatentEvent (Servidor)](https://wiki.mymp.gg/es/cancelLatentEvent-server.md): Detiene el envío de un evento latente del servidor a un jugador. El cliente descarta lo que ya había recibido y el evento no se dispara allí.
