Skip to main content

⚡ Hooks

Os hooks são funções chamadas pelo script em momentos específicos. Eles existem para integrar o dk_skinshop com o resto do servidor sem alterar o core. Ficam em:
  • config/client/config.luahooks
  • config/server/config.luahooks
Todos rodam sob pcall: um erro dentro de um hook aparece no console, mas nunca derruba o recurso.
Os hooks que começam com onBefore cancelam a ação quando retornam exatamente false. Retornar nil ou esquecer o return não cancela.

Client

O onClothesApplied dispara no login, ao carregar um outfit, ao visualizar um outfit recebido e ao cancelar a prova. Ele não dispara na troca de uma peça isolada dentro da loja.É o lugar certo para reaplicar tatuagens, overlays ou props de outros scripts.

Bloquear a abertura

Casos comuns para o onBeforeOpenUi: jogador algemado, em combate, ferido, dentro de um veículo ou com outra interface aberta.

Reaplicar overlays depois de vestir


Server

Compra

O totalPrice é o valor efetivamente debitado, já com os descontos aplicados. Ele pode ser 0 quando o jogador já era dono de todas as peças.

Roupa atual

Use para sincronizar a roupa com outros recursos que mantêm o próprio cache.

Outfits pessoais

Compartilhamento

Outfits de organização

Pontos do mapa


Client ou server?

Client

Efeitos visuais, bloqueio de abertura, integração com outras interfaces e reaplicação de overlays no ped.

Server

Regras de negócio, cobrança, permissões, persistência e qualquer coisa que não pode depender do client.
Regra de decisão: se o hook precisa impedir alguma coisa de verdade, coloque a lógica no servidor. Um hook de client protege contra acidente, não contra má-fé.

Exports

As funções que outros scripts podem chamar no dk_skinshop.