Page cover

▫️snt-animations

• Eventos Gerais

Com isso, você pode fazer com que todas as animações da sua base sejam gerenciadas pelo snt-animations!

-- Triggar uma animação
Via server -> TriggerClientEvent("snt/animations/play",src,animData)
Via client -> TriggerEvent("snt/animations/play",animData)        
 --[src: playerSrc (se server-side); animData*: table com infos da animação];
 -- *animData example: {
 --   dict = "mp_player_intdrink", 
 --   anim = "loop_bottle",
 --   walk = true,
 --   loop = true,
 --   -- opcionais \/
 --   clearBefore = true, (limpar a animação atual antes)
 --   prop = "prop_ld_flow_bottle",
 --   bone = 60309,
 --   prop_placement = {0.0,0.0,0.02,0.0,0.0,130.0}
 -- }
 
 
-- Limpar as animações
Via server -> TriggerClientEvent("snt/animations/stop",src)
Via client -> TriggerEvent("snt/animations/stop")
 -- params [src: playerSrc (se server-side);]


-- AnimBlocked
-- Este evento serve para bloquear que o player limpe/cancele (F6, por padrão) as animações. Também serve para bloquear que ele faça novas animações. É uma variável. Deve ser ativada e desativada. * Bloqueará também o acesso aos menus *
Via server -> TriggerClientEvent("snt/animations/setBlocked",src,toggle)
Via client -> TriggerEvent("snt/animations/setBlocked",toggle)
-- params [src: playerSrc (se server-side); toggle: true or false - block]
-- Também é possível realizar este bloqueio utilizando o state "animBlocked".
-- Ex: LocalPlayer.state.animBlocked = true

• Adicionar animações ao menu

insertAnimation(category,name,data) -- inserir uma animação

-- Essa função devem ser utilizada dentro de uma thread, em um arquivo client,
-- carregado em src/ após o main.client.lua. Ex: criar o arquivo threads.client.lua
-- dentro de src/ e colocar nele.

-- name: nome conforme menu.
-- data: informações da animação, como no exemplo em "eventos gerais".
-- category: categoria em que a animação será adicionada, dentre as disponíveis:
-- 'others', 'physical', 'dances', 'trend', 'poses', 'objects', 'services', 'expressions', 'walks'
-- EXEMPLOS

Citizen.CreateThread(function()

    -- inserindo uma animação básica sem prop
    local data = { 
        dict = 'anim@amb@board_room@whiteboard@', 
        anim = 'curious_01_amy_skater_01', 
        walk = false, 
        loop = true 
    }
    insertAnimation('poses','curioso',data)

    -- inserindo uma animação básica com prop
    local data = {
        dict = 'rcmnigel1d',
        anim = 'base_club_shoulder',
        walk = true,
        loop = true,
        prop = 'bandeira021',
        bone = 18905,
        prop_placement = { 0.0800, -0.2090, 0.0900, -82.6677, -141.2988, 12.3308 }
    }
    insertAnimation('objects','bandeira021',data)
    

end)

Last updated