Jump to content

Set Animation List


Recommended Posts

-- XML
<root>
	<anim AnimName="Dança 1" Anim1="DANCING" Anim2="bd_clap"/>	
</root>
-- Client Side

local screenW,screenH = guiGetScreenSize()
local resW, resH = 1366, 768
local x, y =  (screenW/resW), (screenH/resH)


addEventHandler("onClientResourceStart", resourceRoot,
	function()
	gridAnim = dxGridW:Create(x*429, y*320, x*262, y*167,false)
	column1 = gridAnim:AddColumn("NOMES",260)
	column2 = gridAnim:AddColumn("ID",150)
	column3 = gridAnim:AddColumn("ID2",150)
	xmlAnim = xmlLoadFile("xml/Anim.xml")
	
	for _, anm in ipairs (xmlNodeGetChildren(xmlAnim)) do
	nomer = xmlNodeGetAttribute(anm, "AnimName")
	id1 = xmlNodeGetAttribute(anm, "Anim1")
	id2 = xmlNodeGetAttribute(anm, "Anim2")
	gridAnim:AddItem(1,nomer)
	gridAnim:AddItem(2,id1)
	gridAnim:AddItem(3,id2)
		end
end
)


addEventHandler("onClientDoubleClick", root,
	function()
		if gridAnim:IsVisible() then
			if gridAnim:GetSelectedItem() then
					triggerServerEvent("startAnim", localPlayer, gridAnim:GetItemDetails(2, 3, gridAnim:GetSelectedItem()))
     end
   end
end)
-- Server side

function startAnim ( id1, id2)
	setPedAnimation(source, id1, id2 ,-1, true, false, false, true)
end
addEvent( "startAnim", true )
addEventHandler ("startAnim", root, startAnim)

O Código a cima ta funfando tudo exceto na hr de setar animação (Help-ME)

Link to comment

No Server-side tente isso:

 

function animStart ( id1, id2)
	setPedAnimation(client, id1, id2 ,-1, true, false, false, true)
end
addEvent( "startAnim", true )
addEventHandler ("startAnim", root, animStart)

 

Eu fiz um teste aqui e funcionou, mas usei outra animação, a sua eu não consegui reproduzir.

 

Código de exemplo:

 


GUIEditor = {
    button = {}
}

addEventHandler("onClientResourceStart", resourceRoot,
    function()
        GUIEditor.button[1] = guiCreateButton(564, 364, 170, 37, "Animacao", false)
        guiSetFont(GUIEditor.button[1], "default-bold-small")
        guiSetProperty(GUIEditor.button[1], "NormalTextColour", "FFAAAAAA")    
    end
)

addEventHandler("onClientGUIClick", root,
	function()
		if source == GUIEditor.button[1] then
			triggerServerEvent("startAnim", localPlayer )
		end
	end
)

 

SERVER-SIDE

function animStart () -- Procure não usar nome de função com o mesmo nome do trigger.
	setPedAnimation (client, "FOOD", "EAT_Burger", -1, false, false, nil, false)
end
addEvent( "startAnim", true )
addEventHandler ("startAnim", root, animStart) -- Procure não usar nome de função com o mesmo nome do trigger.

 

Edited by OverKILL
  • Thanks 1
Link to comment

Colocando um iprint na função startAnim você iria perceber que a função não estava recebendo os valores corretos e necessários para a execução da mesma:

function startAnim ( id1, id2)
    iprint(id1, id2)
    setPedAnimation(source, id1, id2 ,-1, true, false, false, true)
end
addEvent( "startAnim", true )
addEventHandler ("startAnim", root, startAnim)

(mostraria false no /debugscript 3)

Isso se deve ao fato de você estar usando o método getItemDetails incorretamente, a sintaxe dele é a seguinte:

string, mixed Gridlist:GetItemDetails ( int columnIndex, int itemIndex )

Você precisa chama-lo duas vezes, uma para a coluna 2 e outra para a coluna 3:

addEventHandler("onClientDoubleClick", root,
    function()
        if (gridAnim:IsVisible()) then
            local selectedItem = gridAnim:GetSelectedItem();

            if (selectedItem ~= -1) then
                triggerServerEvent("startAnim", localPlayer, gridAnim:GetItemDetails(2, selectedItem), gridAnim:GetItemDetails(3, selectedItem));
            end
        end 
    end
);

 

  • Thanks 1
Link to comment
  • Other Languages Moderators
7 hours ago, danilin said:

sim já testei, e não há erros no debugscript, porém na linha 32 ali era pra setar o grupo e a animação mais não está indo e nem ta dando erro.

Então há erro no seu triggerServerEvent. Verifique se os parâmetros declarados depois do localPlayer existem e se estão corretos.

  • Thanks 1
Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...