> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dkscripts.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Configurações de Utilitários

# Utilitários e Funções de Integração

Este arquivo contém configurações utilitárias e, mais importante, as funções de "ponte" (wrapper) que permitem integrar o script de animações facilmente com outros recursos do seu servidor, como sistemas de notificação e de requisição (pedidos).

<Note>
    📁 dk\_animations\_ext > config > shared > utils.lua
</Note>

***

## Configurações Gerais

### Tecla de Cancelamento

A variável `Config.cancelButton` define qual tecla o jogador deve pressionar para cancelar uma animação (quando permitido pela configuração da própria animação).

* `Config.cancelButton = 167`: O valor padrão `167` corresponde à tecla **F6**. Você pode consultar a lista de [códigos de tecla do FiveM](https://docs.fivem.net/docs/game-references/controls/) para alterar este valor.

### AttachmentSanitization (OneSync)

Esta é uma configuração avançada relacionada a como o OneSync lida com entidades anexadas.

* `Config.attachmentSanitization = false`: Esta opção deve ser mantida como `false` caso você não utilize a nativa `OnesyncEnableRemoteAttachmentSanitization` no seu servidor para evitar problemas.

***

## Funções de Integração (Wrappers)

Estas funções são projetadas para serem facilmente modificadas, permitindo que o script "converse" com os sistemas que você já utiliza em seu servidor.

* **`Notification(...)`**: Esta função é chamada toda vez que o script precisa enviar uma notificação para um jogador. Por padrão, ela aciona a função `DkNotify`, mas você pode alterá-la para usar seu próprio sistema.
* **`Request(...)`**: Esta função gerencia os pedidos de interação — quando uma animação requer que o jogador alvo aceite ou recuse. Por padrão, utiliza `DkRequest`, mas pode ser trocada para integrar-se ao seu menu de interações.

<Tip>
  Para usar seu próprio sistema de notificações (como `ox_lib`), basta substituir o conteúdo da função `Notification`. Por exemplo, troque `DkNotify(...)` por `exports.ox_lib:notify(...)`, ajustando os parâmetros conforme a necessidade do seu script. O mesmo princípio se aplica à função `Request`.
</Tip>

***

## Código Fonte

```lua dk_animations_ext/config/shared/utils.lua theme={null}
---Caso você utilize a nativa 'OnesyncEnableRemoteAttachmentSanitization'
Config.attachmentSanitization = false

---Cancelar por botão
Config.cancelButton = 167

---Acionada a cada notificação para os players, tanto em client quanto server.
---@param ... unknown
function Notification(...)
    DkNotify(...)
end

---Acionada a cada request para os players, tanto em client quanto server.
---@param ... unknown
---@return boolean
function Request(...)
    return DkRequest(...)
end
```

***

🔔 **Resumo:**

* Este arquivo centraliza configurações diversas e funções de integração.
* `Config.cancelButton` define a tecla para parar animações (padrão **F6**).
* A função `Notification` atua como uma ponte para seu sistema de notificações customizado.
* A função `Request` atua como uma ponte para seu sistema de menus de interação e pedidos.
* Modificar este arquivo é a maneira correta de fazer o script ser compatível com outros sistemas do seu servidor.
