Pular para o conteúdo

triggerLatentServerEvent

Cliente Manipulação de eventos

Envia um evento ao servidor com banda limitada.

bool triggerLatentServerEvent ( string nomeDoEvento [, int banda = 5000, bool persistir = false ], element origem [, ... ] )
NomeTipoPadrãoDescrição
nomeDoEventostring—Evento a disparar no servidor. Um número vira texto.
bandanumber5000Bytes por segundo que o envio pode usar.
persistirboolfalseCom false, um envio que não terminou é descartado se o seu resource parar. true deixa ele terminar mesmo assim.
origemelement—Elemento de origem, que vira source no manipulador do servidor. Precisa ser um elemento que o servidor conhece.
...any—Argumentos repassados ao manipulador.

true quando o envio entra na fila. Um nomeDoEvento, uma banda ou uma origem inválidos registram um aviso e devolvem false. Também devolve false, sem aviso, quando origem é um elemento criado por um script de cliente, ou quando algum argumento é um elemento assim ou outro userdata que não atravessa a rede — dentro de uma tabela, esses valores chegam como nil.

A função não devolve um identificador. Para acompanhar ou cancelar o envio, chame getLatentEventHandles logo em seguida: o envio novo é a última entrada.

Existe uma única fila para o servidor, e os envios saem dela em ordem, um de cada vez, na maior banda entre os que estão esperando (nunca abaixo de 500 bytes por segundo). Um envio é entregue inteiro quando o tempo de transferência dele acaba; no servidor ele então se comporta exatamente como um vindo de triggerServerEvent — o nome precisa ter sido registrado lá com addEvent(nomeDoEvento, true), e a global client aponta quem enviou.

-- manda uma tabela grande sem travar o tráfego do próprio jogo
triggerLatentServerEvent("onClientRelatorio", 2000, false, localPlayer, dadosDoRelatorio)