Jump to content

Remover bind de animação em freeze


Recommended Posts

Boa tarde, possuo 2 scripts, um de assalto e outro de animações por teclas. Quando um jogador está assaltando ele fica em modo freeze, quero manter assim para ter uma ação com oficiais, porém se ele utilizar uma bind de animação o freeze é desativado e ele pode fugir antes de terminar o progresso e ainda sim ganhará o dinheiro, tentei utilizar o unbind no script do assalto porém não funcionou, seguem os códigos.

OBS: Pensei em criar uma flag para o script de assalto e exportar para o de animações, porém não sei exportar uma flag de um script para o outro, teria que criar outra função, e como ficaria?

Assalto:

function sistema1(source)
	if source then
	if isElementWithinMarker(source, loja1) then
						local weaponType = getPedWeapon ( source )
if weaponType == 0 then
    outputChatBox ( "#727272Você está desarmado. #464646Tenha uma arma para assaltar.", source, 255, 255, 255, true )
else
		outputChatBox(" ", source, 255, 255, 255, true)	
		outputChatBox("#cf3f3fINDFO: #e2e2e2Você está começando a roubar o banco Caixa #727272(Aguarde 4 minutos ou será punido). #e41c1cAs autoridades estão vindo.", source, 255, 255, 255, true)
		outputChatBox(" ", source, 255, 255, 255, true)	
		setElementVisibleTo( loja1ass, root, true)
		setElementFrozen( source, true )
		setPedAnimation( source, "bomber", "bom_plant_loop", 240000, true, false, false, false )
		setMarkerSize(loja1, 0)
		outputChatBox(" ", source, 255, 255, 255, true)	
		outputChatBox("#cf3f3fINFO: #e41c1cAtenção todas as autoridades. #e2e2e2O banco Caixa está sendo assaltado, compareçam ao local urgentemente!", root, 255, 255, 255, true)
		outputChatBox(" ", source, 255, 255, 255, true)
		unbindKey ( source, "b", "down")		
		setTimer(function(source)
			givePlayerMoney(source, GranaBanco)
			setElementFrozen( source, false )
			setPlayerWantedLevel( source, 6 )
			outputChatBox("#cf3f3fINFO: #e41c1cVocê assaltou o banco Caixa e ganhou R$ "..GranaBanco, source, 255, 255, 255, true)
		end,8000,1,source)
		bindKey ( source, "b", "down")
		setTimer(function(source)
			setMarkerSize(loja1, 2.5)
			setElementVisibleTo( loja1ass, root, false)
		end,10000,1,source)
	end
end
end
end
addCommandHandler("roubar", sistema1)

Animações:

function animcruzabraco ()
if getElementData ( localPlayer, "cruzabracodt" ) == false then
setElementData(localPlayer, "cruzabracodt", true)
setElementFrozen ( localPlayer, true )
triggerServerEvent("animcruzabraco",localPlayer)
else
setElementFrozen ( localPlayer, false )
setElementData(localPlayer, "cruzabracodt", false)
triggerServerEvent("paraanim",localPlayer)
end
end
bindKey("b", "both", animcruzabraco)

 

Edited by Nadion
Link to comment
48 minutes ago, Eficiencia said:

Cria uma Data quando o assalto for iniciado e verifica na bind se a data é true

Cheguei a criar essa data e fiz até o export, porém agora a animação não funciona nem se o player estiver sem assaltar. Seguem os códigos da animação e do assalto

Assalto:

function sistema1(source)
	local flag = false
	if source then
	if isElementWithinMarker(source, loja1) then
						local weaponType = getPedWeapon ( source )
if weaponType == 0 then
    outputChatBox ( "#727272Você está desarmado. #464646Tenha uma arma para assaltar.", source, 255, 255, 255, true )
else
		setElementData( flag, "true")
		outputChatBox(" ", source, 255, 255, 255, true)	
		outputChatBox("#cf3f3fINDFO: #e2e2e2Você está começando a roubar o banco Caixa #727272(Aguarde 4 minutos ou será punido). #e41c1cAs autoridades estão vindo.", source, 255, 255, 255, true)
		outputChatBox(" ", source, 255, 255, 255, true)	
		setElementVisibleTo( loja1ass, root, true)
		setElementFrozen( source, true )
		setPedAnimation( source, "bomber", "bom_plant_loop", 240000, true, false, false, false )
		setMarkerSize(loja1, 0)
		outputChatBox(" ", source, 255, 255, 255, true)	
		outputChatBox("#cf3f3fINFO: #e41c1cAtenção todas as autoridades. #e2e2e2O banco Caixa está sendo assaltado, compareçam ao local urgentemente!", root, 255, 255, 255, true)
		outputChatBox(" ", source, 255, 255, 255, true)		
		setTimer(function(source)
			givePlayerMoney(source, GranaBanco)
			setElementFrozen( source, false )
			setPlayerWantedLevel( source, 6 )
			outputChatBox("#cf3f3fINFO: #e41c1cVocê assaltou o banco Caixa e ganhou R$ "..GranaBanco, source, 255, 255, 255, true)
		end,240000,1,source)
		setElementData( flag, "false")
		setTimer(function(source)
			setMarkerSize(loja1, 2.5)
			setElementVisibleTo( loja1ass, root, false)
		end,1800000,1,source)
	end
end
end
end
addCommandHandler("roubar", sistema1)

Animação:

function animcruzabraco ()
	if exports.["Ad-Assaltos"]:sistema1("flag") == true then
		cancelEvent()
else
if getElementData ( localPlayer, "cruzabracodt" ) == false then
setElementData(localPlayer, "cruzabracodt", true)
setElementFrozen ( localPlayer, true )
triggerServerEvent("animcruzabraco",localPlayer)
else
setElementFrozen ( localPlayer, false )
setElementData(localPlayer, "cruzabracodt", false)
triggerServerEvent("paraanim",localPlayer)
end
end
end
bindKey("b", "both", animcruzabraco)

 

Edited by Nadion
alterei o export, tinha um erro que percebi, mas ainda assim não funcionou
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...