Pular para o conteúdo

addEventHandler

Compartilhada Manipulação de eventos

Registra uma função para rodar quando um evento dispara.

bool addEventHandler ( string nomeDoEvento, element anexadoA, function manipulador [, bool propagar = true, string prioridade = "normal" ] )
NomeTipoPadrãoDescrição
nomeDoEventostring—Evento a escutar.
anexadoAelement—Ponto da árvore de elementos a escutar.
manipuladorfunction—Função a chamar.
propagarbooltrueCom false, o manipulador só roda quando anexadoA é o próprio source do evento — eventos vindos dos ancestrais ou dos filhos dele são ignorados.
prioridadestring"normal""low", "normal" ou "high", em maiúsculas ou minúsculas, opcionalmente seguido de um modificador como "high+5" ou "low-1.5". Entre manipuladores no mesmo ponto da árvore, a prioridade mais alta roda primeiro, e o modificador desempata.

true se o manipulador foi registrado. Devolve false quando o nome está vazio, quando anexadoA não é um elemento, quando manipulador não é uma função, quando prioridade não é um nível válido ou quando essa mesma função já está presa àquele elemento para aquele evento ('<nome>' with this function is already handled). Todos esses casos registram um aviso.

Os argumentos do evento chegam como parâmetros da sua função, na ordem em que foram passados a triggerEvent.

addEventHandler("onPlayerChat", root, function(mensagem)
outputDebugString(getPlayerName(source) .. ": " .. mensagem)
end)

Todos os manipuladores de um resource são removidos quando ele para — não é preciso limpar nada no onResourceStop. Os manipuladores pertencem ao resource que os registrou: dois resources podem prender, cada um, o seu próprio manipulador no mesmo evento e no mesmo elemento, e a checagem de duplicata acima só olha os seus.

  • addEvent — Cria um evento novo, para que ele possa ser disparado com triggerEvent.
  • removeEventHandler — Desfaz um addEventHandler.
  • getEventHandlers — Lista os manipuladores que o seu resource anexou a um elemento.
  • triggerEvent — Dispara um evento no lado que o chama.
  • cancelEvent — Cancela o evento em execução.
  • wasEventCancelled — Diz se um evento foi cancelado — o que está rodando, no servidor; o último que terminou, no cliente.
  • getCancelReason — Devolve o motivo passado ao cancelEvent.