Comandos para Executar Animações

Nesta seção, você aprenderá como personalizar os comandos usados para ativar as animações no script Animações em Dupla. Além do modelo tradicional com comandos separados, você também pode usar um comando único com prefixo personalizado, como /d carregar1, para facilitar o uso e economizar registros.
📁 dk_animations > config > client > commands.lua

Modelo Padrão

O script registra automaticamente comandos individuais com base na configuração em Config.animsList, desde que a animação esteja ativa.
dk_animations/config/client/commands.lua
-- Carrega os comandos das animações ao iniciar o script.
OnLoad(function()
    for index, animDatas in pairs(Config.animsList) do
        if animDatas.actived then
            RegisterCommand(animDatas.command, function()
                exports["dk_animations"]:playAnimation(index)
            end)
        end
    end
end)
Exemplo: Se no Config.animsList existir uma animação com command = "carregar1", o jogador poderá digitar /carregar1 no chat para ativar.

Usando um Comando com Prefixo

Se preferir usar um único comando com prefixo (por exemplo, /d carregar1), você pode fazer isso com um pequeno ajuste:
dk_animations/config/client/commands.lua
RegisterCommand("d", function(source, args)
    local animKey = args[1]
    if animKey and Config.animsList[animKey] then
        exports["dk_animations"]:playAnimation(animKey)
    else
        print("Animação não encontrada ou nome incorreto.")
    end
end)
Com esse comando único:
  • O jogador digita /d carregar1 para executar a animação chamada "carregar1".
  • O args[1] é o nome da animação, conforme configurado no Config.animsList.
Essa abordagem evita a criação de múltiplos comandos e mantém a organização no seu servidor, especialmente útil para servidores com muitos scripts.

Integração com Script Target

Você também pode acionar animações através de sistemas de target:
dk_animations/config/client/commands.lua
RegisterNetEvent("dk_animations/playFromTarget")
AddEventHandler("dk_animations/playFromTarget", function(animKey)
    exports["dk_animations"]:playAnimation(animKey)
end)
target
{
    event = "dk_animations/playFromTarget",
    args = "carregar1",
    label = "Executar Animação: Carregar",
    tunnel = "client"
}

🔔 Resumo:
  • O script já registra comandos separados automaticamente via Config.animsList.
  • Você pode usar um comando com prefixo (/d) para centralizar o acesso às animações.
  • Também é possível integrar com sistemas de target.
Essa flexibilidade permite adaptar a execução das animações ao estilo do seu servidor — seja com comandos separados, prefixados ou interações no mundo.