Jump to content

Recommended Posts

Eu novamente aqui skkssk, Então meus irmãos,  é um script que baixei do site original do mta, muitos devem conhece-l, é o script de danças do fortnite!

Mais assim, parece que ele nao esta configurado e eu meio que nao entendo sobre arquivos ifp de dança, o author desse script, colocou um exemplo nele, que quando troca de nick exibe a animação e realmente apaguei os -- e funcionou, eu ate entendi, o script vem com 13 danças, porem nao estou conseguindo configurar! 

server.lua

 
function setPedFortniteAnimation (ped,animation,tiempo,repetir,mover,interrumpible)
if (type(animation) ~= "string" or type(tiempo) ~= "number" or type(repetir) ~= "boolean" or type(mover) ~= "boolean" or type(interrumpible) ~= "boolean") then return false end
if isElement(ped) then
if animation == "baile 1" or animation == "baile 2" or animation == "baile 3" or animation == "baile 4" or animation == "baile 5" or animation == "baile 6" or animation == "baile 7" or animation == "baile 8" or animation == "baile 9" or animation == "baile 10" or animation == "baile 11" or animation == "baile 12" or animation == "baile 13" then
for i = 1,3 do
triggerClientEvent ( root, "setPedFortniteAnimation", root, ped,animation,tiempo,repetir,mover,interrumpible )
if tiempo > 1 then
setTimer(setPedAnimation,tiempo,1,ped,false)
setTimer(setPedAnimation,tiempo+100,1,ped,false)
end
end
end
end
 
end
--[[
EJEMPLO/EXAMPLE
CUANDO CAMBIA EL NICK
WHEN NICK IS CHANGED

function wasNickChangedByUser(oldNick, newNick, changedByUser)
setPedFortniteAnimation(source,"baile 8",7000,true,false,false,false)
end
addEventHandler("onPlayerChangeNick", getRootElement(), wasNickChangedByUser) -- add an event handler




--]]

function howtouse ( player, command, dance )
if isElement(player) then
exports.fortnitedances:setPedFortniteAnimation(player,"baile "..dance.."",-1,true,false,false,false)
end
end
addCommandHandler ( "dance", howtouse )

 

 

 

client.lua

local customIfp = nil 

function setPedFortniteAnimation (ped,animation,tiempo,repetir,mover,interrumpible)
if (type(animation) ~= "string" or type(tiempo) ~= "number" or type(repetir) ~= "boolean" or type(mover) ~= "boolean" or type(interrumpible) ~= "boolean") then return false end
if isElement(ped) then
if animation == "baile 1" or animation == "baile 2" or animation == "baile 3" or animation == "baile 4" or animation == "baile 5" or animation == "baile 6" or animation == "baile 7" or animation == "baile 8" or animation == "baile 9" or animation == "baile 10" or animation == "baile 11" or animation == "baile 12" or animation == "baile 13" then
for i = 1,3 do
setPedAnimation(ped, "Fortnite_"..i.."", animation, tiempo, true, false, false) 
if tiempo > 1 then
setTimer(setPedAnimation,tiempo,1,ped,false)
setTimer(setPedAnimation,tiempo+100,1,ped,false)
end
end
end
end
end
addEvent("setPedFortniteAnimation",true)
addEventHandler("setPedFortniteAnimation",getRootElement(),setPedFortniteAnimation)

addEventHandler("onClientResourceStart", resourceRoot,
    function ( startedRes )
    customIfp = engineLoadIFP ("Fortnite pt1.ifp", "Fortnite_1")
    customIfp2 = engineLoadIFP ("Fortnite pt2.ifp", "Fortnite_2")
    customIfp3 = engineLoadIFP ("Fortnite pt3.ifp", "Fortnite_3")
    if customIfp and customIfp2 and customIfp3 then 
    
    outputDebugString ("Animaciones de Fortnite cargadas")
    
    else
    outputDebugString ("Las animaciones de Fortnite no fueron cargadas")
    end
    end
)

Vou colocar o meta.xml tambem pra voces verem o export caso possa ser isso tambem

 

 

meta.xml

<meta>
	<info author="Drex" version="1.1" name="Bailes de Fortnite" type="script" />
	<export function="setPedFortniteAnimation" type="shared" />
	<file src="Fortnite pt1.ifp" />
	<file src="Fortnite pt2.ifp" />
	<file src="Fortnite pt3.ifp" />
    <script src="client.lua" type="client" cache="false" />
    <script src="server.lua" type="sever" cache="false" />
</meta>

 

Link to comment
  • Other Languages Moderators
local totalDances		= 13;

addCommandHandler ( "dance", function ( player, _, ... )

	local _ARG			= { ... };
	local DANCE_ID		= tonumber ( _ARG[1] );
	
	if ( not DANCE_ID ) then
		return false;
	end
	
	if ( DANCE_ID > totalDances ) then
		return outputChatBox ( "* ERRO: Há apenas " .. totalDances .. " animações. Use /dance [1-" .. totalDances .. "].", player, 255, 0, 0 );
	end
	
	exports.fortnitedances:setPedFortniteAnimation ( player, "baile " .. DANCE_ID, -1, true, false, false, false );
end )

Basta colocar esse código em qualquer arquivo server-side. O comando é simples, basta digitar /dance <id>. São 13 danças.

Link to comment
1 hour ago, asrzk said:

local totalDances		= 13;

addCommandHandler ( "dance", function ( player, _, ... )

	local _ARG			= { ... };
	local DANCE_ID		= tonumber ( _ARG[1] );
	
	if ( not DANCE_ID ) then
		return false;
	end
	
	if ( DANCE_ID > totalDances ) then
		return outputChatBox ( "* ERRO: Há apenas " .. totalDances .. " animações. Use /dance [1-" .. totalDances .. "].", player, 255, 0, 0 );
	end
	
	exports.fortnitedances:setPedFortniteAnimation ( player, "baile " .. DANCE_ID, -1, true, false, false, false );
end )

Basta colocar esse código em qualquer arquivo server-side. O comando é simples, basta digitar /dance <id>. São 13 danças.

Eitss não entendi muito bem, me explica ? Eu preciso apenas colocar este código no server.lua certo ? 

Edited by #Horus
Link to comment
12 hours ago, asrzk said:

Exatamente. O código já faz tudo.

OBS.: o resource "fortnitedances" deve estar ligado no seu servidor.

Eu tinha colocado no server-side do "fortnitedances" mas não deu! Então eu preciso criar um arquivo server.lua e colocar o código nesse server.lua separadamente certo ? Nesse server.lua acompanhando o meta.xml é lógico kk, mais e então e só fazer o que falei ali em cima ?

Link to comment

1. Não se usa cache false em server-side até porque ele não é mostrado após o jogador baixar.

2. Você esta fazendo errado, a maneira certa é essa que irei mostrar.

3. Você deve arrumar o código, colocar nas posições certinhas para encontrar os erros facilmente, ou até mesmo evitar possíveis warnings ou até mesmo erro, fiz isso por você.

OBS: Coloque o nome da pasta aonde esta sendo executado os arquivos client e server como fortnitedances

-------------------

Código:

CLIENT-SIDE

local customIfp = nil 

function setPedFortniteAnimation (ped,animation,tiempo,repetir,mover,interrumpible)
	if (type(animation) ~= "string" or type(tiempo) ~= "number" or type(repetir) ~= "boolean" or type(mover) ~= "boolean" or type(interrumpible) ~= "boolean") then return false end
		if isElement(ped) then
			if animation == "baile 1" or animation == "baile 2" or animation == "baile 3" or animation == "baile 4" or animation == "baile 5" or animation == "baile 6" or animation == "baile 7" or animation == "baile 8" or animation == "baile 9" or animation == "baile 10" or animation == "baile 11" or animation == "baile 12" or animation == "baile 13" then
			for i = 1,3 do
				setPedAnimation(ped, "Fortnite_"..i.."", animation, tiempo, true, false, false) 
				if tiempo > 1 then
					setTimer(setPedAnimation,tiempo,1,ped,false)
					setTimer(setPedAnimation,tiempo+100,1,ped,false)
				end
			end
		end
	end
end
addEvent("setPedFortniteAnimation",true)
addEventHandler("setPedFortniteAnimation",getRootElement(),setPedFortniteAnimation)

addEventHandler("onClientResourceStart", resourceRoot,
    function ( startedRes )
		customIfp = engineLoadIFP ("Fortnite pt1.ifp", "Fortnite_1")
		customIfp2 = engineLoadIFP ("Fortnite pt2.ifp", "Fortnite_2")
		customIfp3 = engineLoadIFP ("Fortnite pt3.ifp", "Fortnite_3")
		if customIfp and customIfp2 and customIfp3 then   
			outputDebugString ("Animaciones de Fortnite cargadas")
		else
			outputDebugString ("Las animaciones de Fortnite no fueron cargadas")
		end
    end
)

SERVER-SIDE

local totalDances = 13;
function setPedFortniteAnimation (ped,animation,tiempo,repetir,mover,interrumpible)
	if (type(animation) ~= "string" or type(tiempo) ~= "number" or type(repetir) ~= "boolean" or type(mover) ~= "boolean" or type(interrumpible) ~= "boolean") then return false end
		if isElement(ped) then
			if animation == "baile 1" or animation == "baile 2" or animation == "baile 3" or animation == "baile 4" or animation == "baile 5" or animation == "baile 6" or animation == "baile 7" or animation == "baile 8" or animation == "baile 9" or animation == "baile 10" or animation == "baile 11" or animation == "baile 12" or animation == "baile 13" then
			for i = 1,3 do
				triggerClientEvent ( root, "setPedFortniteAnimation", root, ped,animation,tiempo,repetir,mover,interrumpible )
				if tiempo > 1 then
					setTimer(setPedAnimation,tiempo,1,ped,false)
					setTimer(setPedAnimation,tiempo+100,1,ped,false)
				end
			end
		end
	end 
end

addCommandHandler ( "dance", function ( player, _, ... )
	local _ARG = { ... };
	local DANCE_ID = tonumber( _ARG[1] );
	if ( not DANCE_ID ) then
		return false;
	end
	if (tonumber(DANCE_ID) > totalDances) then
		return outputChatBox ( "* ERRO: Há apenas " .. totalDances .. " animações. Use /dance [1-" .. totalDances .. "].", player, 255, 0, 0 );
	end
	exports.fortnitedances:setPedFortniteAnimation ( player, "baile " .. DANCE_ID, -1, true, false, false, false );
end)

 

Link to comment
5 hours ago, OverKILL said:

1. Não se usa cache false em server-side até porque ele não é mostrado após o jogador baixar.

2. Você esta fazendo errado, a maneira certa é essa que irei mostrar.

3. Você deve arrumar o código, colocar nas posições certinhas para encontrar os erros facilmente, ou até mesmo evitar possíveis warnings ou até mesmo erro, fiz isso por você.

OBS: Coloque o nome da pasta aonde esta sendo executado os arquivos client e server como fortnitedances

-------------------

Código:

CLIENT-SIDE


local customIfp = nil 

function setPedFortniteAnimation (ped,animation,tiempo,repetir,mover,interrumpible)
	if (type(animation) ~= "string" or type(tiempo) ~= "number" or type(repetir) ~= "boolean" or type(mover) ~= "boolean" or type(interrumpible) ~= "boolean") then return false end
		if isElement(ped) then
			if animation == "baile 1" or animation == "baile 2" or animation == "baile 3" or animation == "baile 4" or animation == "baile 5" or animation == "baile 6" or animation == "baile 7" or animation == "baile 8" or animation == "baile 9" or animation == "baile 10" or animation == "baile 11" or animation == "baile 12" or animation == "baile 13" then
			for i = 1,3 do
				setPedAnimation(ped, "Fortnite_"..i.."", animation, tiempo, true, false, false) 
				if tiempo > 1 then
					setTimer(setPedAnimation,tiempo,1,ped,false)
					setTimer(setPedAnimation,tiempo+100,1,ped,false)
				end
			end
		end
	end
end
addEvent("setPedFortniteAnimation",true)
addEventHandler("setPedFortniteAnimation",getRootElement(),setPedFortniteAnimation)

addEventHandler("onClientResourceStart", resourceRoot,
    function ( startedRes )
		customIfp = engineLoadIFP ("Fortnite pt1.ifp", "Fortnite_1")
		customIfp2 = engineLoadIFP ("Fortnite pt2.ifp", "Fortnite_2")
		customIfp3 = engineLoadIFP ("Fortnite pt3.ifp", "Fortnite_3")
		if customIfp and customIfp2 and customIfp3 then   
			outputDebugString ("Animaciones de Fortnite cargadas")
		else
			outputDebugString ("Las animaciones de Fortnite no fueron cargadas")
		end
    end
)

SERVER-SIDE


local totalDances = 13;
function setPedFortniteAnimation (ped,animation,tiempo,repetir,mover,interrumpible)
	if (type(animation) ~= "string" or type(tiempo) ~= "number" or type(repetir) ~= "boolean" or type(mover) ~= "boolean" or type(interrumpible) ~= "boolean") then return false end
		if isElement(ped) then
			if animation == "baile 1" or animation == "baile 2" or animation == "baile 3" or animation == "baile 4" or animation == "baile 5" or animation == "baile 6" or animation == "baile 7" or animation == "baile 8" or animation == "baile 9" or animation == "baile 10" or animation == "baile 11" or animation == "baile 12" or animation == "baile 13" then
			for i = 1,3 do
				triggerClientEvent ( root, "setPedFortniteAnimation", root, ped,animation,tiempo,repetir,mover,interrumpible )
				if tiempo > 1 then
					setTimer(setPedAnimation,tiempo,1,ped,false)
					setTimer(setPedAnimation,tiempo+100,1,ped,false)
				end
			end
		end
	end 
end

addCommandHandler ( "dance", function ( player, _, ... )
	local _ARG = { ... };
	local DANCE_ID = tonumber( _ARG[1] );
	if ( not DANCE_ID ) then
		return false;
	end
	if (tonumber(DANCE_ID) > totalDances) then
		return outputChatBox ( "* ERRO: Há apenas " .. totalDances .. " animações. Use /dance [1-" .. totalDances .. "].", player, 255, 0, 0 );
	end
	exports.fortnitedances:setPedFortniteAnimation ( player, "baile " .. DANCE_ID, -1, true, false, false, false );
end)

 

Obrigado! Preciso colocar o nome da pasta como "fortnitedances" certo ? 

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...