Skip to main content
Os eventos permitem que seu código reaja a ações que ocorrem nos scripts. Você pode escutar eventos com AddEventHandler (no cliente ou no servidor) e disparar eventos entre as camadas com TriggerEvent ou TriggerServerEvent. Esta página cobre todos os padrões de uso com exemplos práticos.

Como Escutar Eventos com AddEventHandler

Use AddEventHandler para reagir a eventos disparados pelo script ou por outros recursos:

Como Disparar Eventos com TriggerEvent

Use TriggerEvent para disparar um evento local (na mesma camada — cliente para cliente ou servidor para servidor):

Como Disparar Eventos com TriggerServerEvent

Use TriggerServerEvent no cliente para enviar dados ao servidor. O servidor recebe o evento e tem acesso ao source (ID do jogador que disparou):
Nunca confie em dados vindos do cliente sem validar no servidor. Sempre verifique permissões e inventários do lado do servidor antes de executar ações.

Como Disparar Eventos com TriggerClientEvent

Use TriggerClientEvent no servidor para enviar dados de volta a um jogador específico (ou a todos):

Módulo: Jobs — Eventos

meuScript:onJobChange (Cliente)

Disparado quando o emprego do jogador é alterado.
Parâmetros:
  • jobName (string) — Nome interno do emprego
  • jobLabel (string) — Nome exibido do emprego
  • grade (number) — Número do cargo
  • gradeLabel (string) — Nome exibido do cargo

meuScript:onDutyChange (Cliente)

Disparado quando o status de serviço muda.
Parâmetros:
  • onDuty (boolean) — true se entrou em serviço, false se saiu

Módulo: Inventário — Eventos

meuScript:itemUsed (Servidor)

Disparado quando um jogador usa um item.
Parâmetros:
  • itemName (string) — Nome interno do item usado
  • quantity (number) — Quantidade usada

meuScript:inventoryOpened (Cliente)

Disparado quando o inventário é aberto pelo jogador.

Módulo: Economia — Eventos

meuScript:onMoneyChange (Cliente)

Disparado quando o saldo do jogador é alterado.
Parâmetros:
  • moneyType (string) — 'cash' ou 'bank'
  • amount (number) — Valor alterado (positivo = recebeu, negativo = perdeu)
  • reason (string) — Motivo da transação

meuScript:onPayday (Cliente)

Disparado quando o jogador recebe o pagamento de salário.
Parâmetros:
  • amount (number) — Valor do salário recebido
  • jobLabel (string) — Nome exibido do emprego

Módulo: Admin — Eventos

meuScript:onPlayerBanned (Servidor)

Disparado quando um jogador é banido.
Parâmetros:
  • targetSource (number) — ID do jogador banido
  • adminSource (number) — ID do admin que aplicou o ban
  • reason (string) — Motivo informado
  • duration (string) — Duração do ban (ex: '7d', 'perm')
Use o prefixo do evento configurado em Config.EventPrefix se você personalizou esse valor. Por padrão, o prefixo é o nome do recurso.