SkillZNT Posted January 21, 2020 Share Posted January 21, 2020 Olá quero por um tempo de espera com mensagem de 5 segundos nesses dois teleportes quem pode ajudar local posicoes = { { 2488, -1670, 14 }, } function PosicaoPlayer ( thePlayer, command ) local azar = math.random ( #posicoes ) local veh = getPedOccupiedVehicle(thePlayer) if (veh) then setElementPosition(veh, unpack ( posicoes [ azar ] ) ) else setElementPosition(thePlayer, unpack ( posicoes [ azar ] ) ) end outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF' .. getPlayerName(thePlayer) .. ' #828282Foi Para A Casa Do Cj #FFFFFF(#00FF00 /cj #FFFFFF)', root, 255, 255, 255, true) end addCommandHandler ( "cj", PosicaoPlayer ) --- local posicoes = { { 324, -1779, 5 }, } function PosicaoPlayer ( thePlayer, command ) local azar = math.random ( #posicoes ) local veh = getPedOccupiedVehicle(thePlayer) if (veh) then setElementPosition(veh, unpack ( posicoes [ azar ] ) ) else setElementPosition(thePlayer, unpack ( posicoes [ azar ] ) ) end outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF' .. getPlayerName(thePlayer) .. ' #828282Foi Para A Praia #FFFFFF(#00FF00 /praia #FFFFFF)', root, 255, 255, 255, true) end addCommandHandler ( "praia", PosicaoPlayer ) --- Link to comment
Mature Posted January 21, 2020 Share Posted January 21, 2020 37 minutes ago, SkillZNT said: Olá quero por um tempo de espera com mensagem de 5 segundos nesses dois teleportes quem pode ajudar local posicoes = { { 2488, -1670, 14 }, } function PosicaoPlayer ( thePlayer, command ) local azar = math.random ( #posicoes ) local veh = getPedOccupiedVehicle(thePlayer) if (veh) then setElementPosition(veh, unpack ( posicoes [ azar ] ) ) else setElementPosition(thePlayer, unpack ( posicoes [ azar ] ) ) end outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF' .. getPlayerName(thePlayer) .. ' #828282Foi Para A Casa Do Cj #FFFFFF(#00FF00 /cj #FFFFFF)', root, 255, 255, 255, true) end addCommandHandler ( "cj", PosicaoPlayer ) --- local posicoes = { { 324, -1779, 5 }, } function PosicaoPlayer ( thePlayer, command ) local azar = math.random ( #posicoes ) local veh = getPedOccupiedVehicle(thePlayer) if (veh) then setElementPosition(veh, unpack ( posicoes [ azar ] ) ) else setElementPosition(thePlayer, unpack ( posicoes [ azar ] ) ) end outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF' .. getPlayerName(thePlayer) .. ' #828282Foi Para A Praia #FFFFFF(#00FF00 /praia #FFFFFF)', root, 255, 255, 255, true) end addCommandHandler ( "praia", PosicaoPlayer ) --- local posicoes = { { 2488, -1670, 14 }, } function PosicaoPlayer ( thePlayer, command ) setTimer(function() local azar = math.random ( #posicoes ) local veh = getPedOccupiedVehicle(thePlayer) if (veh) then setElementPosition(veh, unpack ( posicoes [ azar ] ) ) else setElementPosition(thePlayer, unpack ( posicoes [ azar ] ) ) end outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF' .. getPlayerName(thePlayer) .. ' #828282Foi Para A Casa Do Cj #FFFFFF(#00FF00 /cj #FFFFFF)', root, 255, 255, 255, true) end, 5000, 1) end addCommandHandler ( "cj", PosicaoPlayer ) --- local posicoes = { { 324, -1779, 5 }, } function PosicaoPlayer ( thePlayer, command ) setTimer(function() local azar = math.random ( #posicoes ) local veh = getPedOccupiedVehicle(thePlayer) if (veh) then setElementPosition(veh, unpack ( posicoes [ azar ] ) ) else setElementPosition(thePlayer, unpack ( posicoes [ azar ] ) ) end outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF' .. getPlayerName(thePlayer) .. ' #828282Foi Para A Praia #FFFFFF(#00FF00 /praia #FFFFFF)', root, 255, 255, 255, true) end, 5000, 1) end addCommandHandler ( "praia", PosicaoPlayer ) Link to comment
SkillZNT Posted January 21, 2020 Author Share Posted January 21, 2020 7 hours ago, Hazardinho said: local posicoes = { { 2488, -1670, 14 }, } function PosicaoPlayer ( thePlayer, command ) setTimer(function() local azar = math.random ( #posicoes ) local veh = getPedOccupiedVehicle(thePlayer) if (veh) then setElementPosition(veh, unpack ( posicoes [ azar ] ) ) else setElementPosition(thePlayer, unpack ( posicoes [ azar ] ) ) end outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF' .. getPlayerName(thePlayer) .. ' #828282Foi Para A Casa Do Cj #FFFFFF(#00FF00 /cj #FFFFFF)', root, 255, 255, 255, true) end, 5000, 1) end addCommandHandler ( "cj", PosicaoPlayer ) --- local posicoes = { { 324, -1779, 5 }, } function PosicaoPlayer ( thePlayer, command ) setTimer(function() local azar = math.random ( #posicoes ) local veh = getPedOccupiedVehicle(thePlayer) if (veh) then setElementPosition(veh, unpack ( posicoes [ azar ] ) ) else setElementPosition(thePlayer, unpack ( posicoes [ azar ] ) ) end outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF' .. getPlayerName(thePlayer) .. ' #828282Foi Para A Praia #FFFFFF(#00FF00 /praia #FFFFFF)', root, 255, 255, 255, true) end, 5000, 1) end addCommandHandler ( "praia", PosicaoPlayer ) Eu testei não e bem isso e tipo assim o player so pode usar o comando dps de 5 segundos entendeu pra evitar flood se poder ajudar plis E tambem pq maioria dos players floodam ultilizando comando dos teleportes sabe ai por isso queria colocar uma mensagem com um tempo pra usar o comando denovo assim Aguarde 5 segundos para ultilizar o teleporte novamente! So queria resolver isso com um tempo de espera pra usar o comando dnv Link to comment
Developer. Posted January 21, 2020 Share Posted January 21, 2020 local posicoesCJ = { { 2488, -1670, 14 }, }; local posicoesPraia = { { 324, -1779, 5 }, }; local segundos = 5 -- tempo em segundos local tempo = {} -- tabela que salva o tempo do jogador. function PosicaoPlayer ( jogador, comando ) if (getTickCount() - tempo[jogador] or 0) >= segundos * 1000) then -- faz a contagem se já passou os 5 segundos para o jogador. local veh = getPedOccupiedVehicle(jogador) local nome = getPlayerName(jogador) if comando == "cj" then if (veh) then setElementPosition(veh, unpack(posicoesCJ[math.random(#posicoesCJ)])) else setElementPosition(jogador, unpack(posicoesCJ[math.random(#posicoesCJ )])) end tempo[jogador] = getTickCount() outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF'..nome..' #828282Foi Para A Casa Do Cj #FFFFFF(#00FF00 /cj #FFFFFF)', root, 255, 255, 255, true) elseif comando == "praia" then if (veh) then setElementPosition(veh, unpack(posicoesPraia[math.random( #posicoesPraia )])) else setElementPosition(jogador, unpack(posicoesPraia[math.random(#posicoesPraia)])) end tempo[jogador] = getTickCount() outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF'..nome..' #828282Foi Para A Praia #FFFFFF(#00FF00 /praia #FFFFFF)', root, 255, 255, 255, true) end else outputChatBox ('#FFFFFF[ #00FF00Anti-flood#FFFFFF ]: #FFFFFFAguarde Para utilizar o comando novamente!', jogador, 255, 255, 255, true) end end addCommandHandler("cj", PosicaoPlayer) addCommandHandler("praia", PosicaoPlayer) Obs: Não testado! Ligue primeiro seu debug ( /debugscript 3) e depois inicie o resource! 7 Caso de algum erro só mandar aqui que irei consertar. @SkillZNT Link to comment
SkillZNT Posted January 21, 2020 Author Share Posted January 21, 2020 1 hour ago, Developer. said: local posicoesCJ = { { 2488, -1670, 14 }, }; local posicoesPraia = { { 324, -1779, 5 }, }; local segundos = 5 -- tempo em segundos local tempo = {} -- tabela que salva o tempo do jogador. function PosicaoPlayer ( jogador, comando ) if (getTickCount() - tempo[jogador] or 0) >= segundos * 1000) then -- faz a contagem se já passou os 5 segundos para o jogador. local veh = getPedOccupiedVehicle(jogador) local nome = getPlayerName(jogador) if comando == "cj" then if (veh) then setElementPosition(veh, unpack(posicoesCJ[math.random(#posicoesCJ)])) else setElementPosition(jogador, unpack(posicoesCJ[math.random(#posicoesCJ )])) end tempo[jogador] = getTickCount() outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF'..nome..' #828282Foi Para A Casa Do Cj #FFFFFF(#00FF00 /cj #FFFFFF)', root, 255, 255, 255, true) elseif comando == "praia" then if (veh) then setElementPosition(veh, unpack(posicoesPraia[math.random( #posicoesPraia )])) else setElementPosition(jogador, unpack(posicoesPraia[math.random(#posicoesPraia)])) end tempo[jogador] = getTickCount() outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF'..nome..' #828282Foi Para A Praia #FFFFFF(#00FF00 /praia #FFFFFF)', root, 255, 255, 255, true) end else outputChatBox ('#FFFFFF[ #00FF00Anti-flood#FFFFFF ]: #FFFFFFAguarde Para utilizar o comando novamente!', jogador, 255, 255, 255, true) end end addCommandHandler("cj", PosicaoPlayer) addCommandHandler("praia", PosicaoPlayer) Obs: Não testado! Ligue primeiro seu debug ( /debugscript 3) e depois inicie o resource! 7 Caso de algum erro só mandar aqui que irei consertar. @SkillZNT Deu erro no debug como você disse Link to comment
Developer. Posted January 21, 2020 Share Posted January 21, 2020 (edited) local posicoesCJ = { { 2488, -1670, 14 }, } local posicoesPraia = { { 324, -1779, 5 }, } local segundos = 5 -- tempo em segundos local tempo = {} -- tabela que salva o tempo. function PosicaoPlayer ( jogador, comando ) if getTickCount() - (tempo[jogador] or 0) >= segundos * 1000 then -- faz a contagem se já passou os 5 segundos para o player. local veh = getPedOccupiedVehicle(jogador) local nome = getPlayerName(jogador) if comando == "cj" then if (veh) then setElementPosition(veh, unpack(posicoesCJ[math.random(#posicoesCJ)])) else setElementPosition(jogador, unpack(posicoesCJ[math.random(#posicoesCJ )])) end tempo[jogador] = getTickCount() outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF'..nome..' #828282Foi Para A Casa Do Cj #FFFFFF(#00FF00 /cj #FFFFFF)', root, 255, 255, 255, true) elseif comando == "praia" then if (veh) then setElementPosition(veh, unpack(posicoesPraia[math.random( #posicoesPraia )])) else setElementPosition(jogador, unpack(posicoesPraia[math.random(#posicoesPraia)])) end tempo[jogador] = getTickCount() outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF'..nome..' #828282Foi Para A Praia #FFFFFF(#00FF00 /praia #FFFFFF)', root, 255, 255, 255, true) end else outputChatBox ('#FFFFFF[ #00FF00Anti-flood#FFFFFF ]: #FFFFFFAguarde Para utilizar o comando novamente!', jogador, 255, 255, 255, true) end end addCommandHandler("cj", PosicaoPlayer) addCommandHandler("praia", PosicaoPlayer) Testado! Pronto, arrumado. O erro estava nos Parênteses da linha 16 @SkillZNT Edited January 21, 2020 by Developer. Link to comment
SkillZNT Posted January 21, 2020 Author Share Posted January 21, 2020 48 minutes ago, Developer. said: local posicoesCJ = { { 2488, -1670, 14 }, } local posicoesPraia = { { 324, -1779, 5 }, }local segundos = 5 -- tempo em segundoslocal tempo = {} -- tabela que salva o tempo.function PosicaoPlayer ( jogador, comando ) if getTickCount() - (tempo[jogador] or 0) >= segundos * 1000 then -- faz a contagem se já passou os 5 segundos para o player. local veh = getPedOccupiedVehicle(jogador) local nome = getPlayerName(jogador) if comando == "cj" then if (veh) then setElementPosition(veh, unpack(posicoesCJ[math.random(#posicoesCJ)])) else setElementPosition(jogador, unpack(posicoesCJ[math.random(#posicoesCJ )])) end tempo[jogador] = getTickCount() outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF'..nome..' #828282Foi Para A Casa Do Cj #FFFFFF(#00FF00 /cj #FFFFFF)', root, 255, 255, 255, true) elseif comando == "praia" then if (veh) then setElementPosition(veh, unpack(posicoesPraia[math.random( #posicoesPraia )])) else setElementPosition(jogador, unpack(posicoesPraia[math.random(#posicoesPraia)])) end tempo[jogador] = getTickCount() outputChatBox ('#FFFFFF[ #00FF00Tele#FFFFFF ]: #FFFFFF'..nome..' #828282Foi Para A Praia #FFFFFF(#00FF00 /praia #FFFFFF)', root, 255, 255, 255, true) end else outputChatBox ('#FFFFFF[ #00FF00Anti-flood#FFFFFF ]: #FFFFFFAguarde Para utilizar o comando novamente!', jogador, 255, 255, 255, true) endendaddCommandHandler("cj", PosicaoPlayer)addCommandHandler("praia", PosicaoPlayer) Testado! Pronto, arrumado. O erro estava nos Parênteses da linha 16 @SkillZNT Ei quase esqueci sobre aquele script de algemar sabe ele ta com um erro no debug sim Quando uso /a apareçe isso ai Se poder ajudar tambem nessa parte kkkk sabe Eu tentei ate hj arrumar kk so q ficava dando ums erros no debug as vezes pouco erro as vezes algums esse aq e o seu q so apareçeu um erro no debug ao digitar o /a Codigo sem alterar nada apenas o setPedAnimationSpeed function setPedAnimationSpeed(player,anim,speed) setPedAnimation(player,anim,speed) end function setCuffPlayer(player) setPedAnimation(player, nil) setPedAnimation(player,'ped', 'pass_Smoke_in_car', 0, true, true, true) setTimer(setPedAnimationSpeed,60,1,player, 'pass_Smoke_in_car', 0) local x, y, z = getElementPosition(player) local box = createObject(364, x, y, z) exports.bone_attach:attachElementToBone(box, player, 12, 0,0,0, 0,40,-10) setElementCollisionsEnabled(box, false) setElementData(player,'cuffOb', box) toggleControl(player, 'jump', false) setTimer(function(player) if getElementData(player,'cuff') and getElementData(player,'cuff') == true then toggleControl(player, 'fire', false) end end,60,0,player) toggleControl(player, 'crouch', false) end local corpACLS = { -- NOME DAS ACLS Q PODEM ALGEMAR UMA PESSOA! "BOPE", "PMRJ", } function cuff(hit,_,name) local player = getPlayerFromName(name) local x,y,z = getElementPosition(player) local x1,y1,z1 = getElementPosition(hit) if isPlayerPermission(hit) then -- FUNÇÃO UTIL, BASICAMENTE VERIFICA SE O POLICIAL (hit) ESTA DENTRO DE UMA DAS ACL'S BOPE OU PMRJ! if getDistanceBetweenPoints3D(x1,y1,z1,x,y,z) <= 20 then if not getElementData(player,'cuff') or getElementData(player,'cuff') ~= true then if isPedInVehicle(player) then setControlState(player,'enter_exit',true) setTimer(setCuffPlayer,2800,1,player) setElementData(player,'cuff', true) else setCuffPlayer(player) setElementData(player,'cuff', true) end outputChatBox(' '..getPlayerName(hit)..'#ff0000 Algemou você',player,255,255,255,true) else removeElementData(player,'cuff') destroyElement(getElementData(player,'cuffOb')) removeElementData(player, 'cuff') toggleControl(player, 'jump', true) toggleControl(player, 'crouch', true) toggleControl(player, 'fire', true) setPedAnimation(player, 'ped', 'pass_Smoke_in_car', 0, false, false, false, false) outputChatBox(' '..getPlayerName(hit)..'#008800 Soltou suas algemas',player,255,255,255,true) end else outputChatBox("Você está longe demais!",hit,255,0,0,true) end end -- end do if ifPlayerPermission then end addCommandHandler('a',cuff) addEventHandler('onPlayerQuit', root,function() if getElementData(source,'cuff') == true then destroyElement(getElementData(source,'cuffOb')) removeElementData(source, 'cuff') end end) addEventHandler('onPlayerWasted',root,function() if getElementData(source,'cuff') == true then destroyElement(getElementData(source,'cuffOb')) removeElementData(source, 'cuff') end end) addEventHandler('onVehicleStartEnter', getRootElement(), function(player, seat) if getElementData(player,'cuff') == true then if seat ~= 0 then destroyElement(getElementData(player,'cuffOb')) else cancelEvent() outputChatBox('Você não pode dirigir você tem algemas!',player,255,0,0) end end end) setTimer(function() for _,player in ipairs(getElementsByType("player")) do if getElementData(player,'cuff') == true then if isPedInWater(player) then setTimer(function(player) if isPedInWater(player) then killPed(player) end end,5000,1,player) end end end end,1000,0) addEventHandler('onVehicleExit', getRootElement(), function(player, seat) if getElementData(player,'cuff') == true then setCuffPlayer(player) end end) -- ABAIXO UMA FUNÇÃO UTIL QUE FOI DEMONSTRADA por @MainSCR no seu outro post, deveria ter usado isto em vez da outra! function isPlayerPermission(thePlayer) -- faz um loop das acls declaradas na tabela e verifica se a acl do jogador é uma das acls declarada na tabela if isElement(thePlayer) and getElementType(thePlayer) == "player" then if isGuestAccount(getPlayerAccount(thePlayer)) then return end for _, group in ipairs(corpACLS) do if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(thePlayer)), aclGetGroup(group)) then -- preste atenção acima, ("user."..Nome da Conta , qual a acl )) return true end end end return false end Debugscript 3: ERRO:algemas/server.Lua:33: attempt to compare boolean with number Link to comment
Developer. Posted January 21, 2020 Share Posted January 21, 2020 tem duas formas de vc arrumar esse erro. 1 - em vez de passar direito, atribua uma variável ao getDistanceBetweenPoints3D e depois faz a verificação: local dist = getDistanceBetweenPoints3D(x1,y1,z1,x,y,z) if isPlayerPermission(hit) then if dist <= 20 then 2 - ou usar tonumber() no if: if tonumber(getDistanceBetweenPoints3D(x1,y1,z1,x,y,z)) <= 20 then Link to comment
SkillZNT Posted January 21, 2020 Author Share Posted January 21, 2020 20 minutes ago, Developer. said: tem duas formas de vc arrumar esse erro. 1 - em vez de passar direito, atribua uma variável ao getDistanceBetweenPoints3D e depois faz a verificação: local dist = getDistanceBetweenPoints3D(x1,y1,z1,x,y,z) if isPlayerPermission(hit) then if dist <= 20 then 2 - ou usar tonumber() no if: if tonumber(getDistanceBetweenPoints3D(x1,y1,z1,x,y,z)) <= 20 then 23 minutes ago, Developer. said: tem duas formas de vc arrumar esse erro. 1 - em vez de passar direito, atribua uma variável ao getDistanceBetweenPoints3D e depois faz a verificação: local dist = getDistanceBetweenPoints3D(x1,y1,z1,x,y,z) if isPlayerPermission(hit) then if dist <= 20 then 2 - ou usar tonumber() no if: if tonumber(getDistanceBetweenPoints3D(x1,y1,z1,x,y,z)) <= 20 then function cuff(hit,_,name) local player = getPlayerFromName(name) local x,y,z = getElementPosition(player) local x1,y1,z1 = getElementPosition(hit) if isPlayerPermission(hit) then -- FUNÇÃO UTIL, BASICAMENTE VERIFICA SE O POLICIAL (hit) ESTA DENTRO DE UMA DAS ACL'S BOPE OU PMRJ! if tonumber(getDistanceBetweenPoints3D(x1,y1,z1,x,y,z)) <= 20 then if not getElementData(player,'cuff') or getElementData(player,'cuff') ~= true then if isPedInVehicle(player) then setControlState(player,'enter_exit',true) setTimer(setCuffPlayer,2800,1,player) setElementData(player,'cuff', true) else setCuffPlayer(player) setElementData(player,'cuff', true) end outputChatBox(' '..getPlayerName(hit)..'#ff0000 Algemou você',player,255,255,255,true) else removeElementData(player,'cuff') destroyElement(getElementData(player,'cuffOb')) removeElementData(player, 'cuff') toggleControl(player, 'jump', true) toggleControl(player, 'crouch', true) toggleControl(player, 'fire', true) setPedAnimation(player, 'ped', 'pass_Smoke_in_car', 0, false, false, false, false) outputChatBox(' '..getPlayerName(hit)..'#008800 Soltou suas algemas',player,255,255,255,true) end else outputChatBox("Você está longe demais!",hit,255,0,0,true) end end -- end do if ifPlayerPermission then end addCommandHandler('a',cuff) Assim? Link to comment
Developer. Posted January 21, 2020 Share Posted January 21, 2020 Sim, a tbm recomendo você mudar aquele getPlayerFromName() por getPlayerFromPartialName() isso muda a forma que vc tem q digitar exemplo se vc quiser me algemar com getPlayerFromName(), você teria que digitar /a eder já com getPlayerFromPartialName() você pode simplesmente digitar /a ede ou /a ed que a função já retorna o player. se não me engano o Jonas^ mandou essa function no seu outro post, da uma procurada lá. Link to comment
SkillZNT Posted January 21, 2020 Author Share Posted January 21, 2020 1 hour ago, Developer. said: Sim, a tbm recomendo você mudar aquele getPlayerFromName() por getPlayerFromPartialName() isso muda a forma que vc tem q digitar exemplo se vc quiser me algemar com getPlayerFromName(), você teria que digitar /a eder já com getPlayerFromPartialName() você pode simplesmente digitar /a ede ou /a ed que a função já retorna o player. se não me engano o Jonas^ mandou essa function no seu outro post, da uma procurada lá. Eu acho q errei alguma coisa no codigo :p consegue dar uma arrumada não sei se coloquei algo de errado no codigo function setPedAnimationSpeed(player,anim,speed) setPedAnimation(player,anim,speed) end function setCuffPlayer(player) setPedAnimation(player, nil) setPedAnimation(player,'ped', 'pass_Smoke_in_car', 0, true, true, true) setTimer(setPedAnimationSpeed,60,1,player, 'pass_Smoke_in_car', 0) local x, y, z = getElementPosition(player) local box = createObject(364, x, y, z) exports.bone_attach:attachElementToBone(box, player, 12, 0,0,0, 0,40,-10) setElementCollisionsEnabled(box, false) setElementData(player,'cuffOb', box) toggleControl(player, 'jump', false) setTimer(function(player) if getElementData(player,'cuff') and getElementData(player,'cuff') == true then toggleControl(player, 'fire', false) end end,60,0,player) toggleControl(player, 'crouch', false) end local corpACLS = { -- NOME DAS ACLS Q PODEM ALGEMAR UMA PESSOA! "BOPE", "PMRJ", } function cuff(hit,_,name) local player = getPlayerFromPartialName() local x,y,z = getElementPosition(player) local x1,y1,z1 = getElementPosition(hit) if isPlayerPermission(hit) then -- FUNÇÃO UTIL, BASICAMENTE VERIFICA SE O POLICIAL (hit) ESTA DENTRO DE UMA DAS ACL'S BOPE OU PMRJ! if tonumber(getDistanceBetweenPoints3D(x1,y1,z1,x,y,z)) <= 20 then if not getElementData(player,'cuff') or getElementData(player,'cuff') ~= true then if isPedInVehicle(player) then setControlState(player,'enter_exit',true) setTimer(setCuffPlayer,2800,1,player) setElementData(player,'cuff', true) else setCuffPlayer(player) setElementData(player,'cuff', true) end outputChatBox(' '..getPlayerName(hit)..'#ff0000 Algemou você',player,255,255,255,true) else removeElementData(player,'cuff') destroyElement(getElementData(player,'cuffOb')) removeElementData(player, 'cuff') toggleControl(player, 'jump', true) toggleControl(player, 'crouch', true) toggleControl(player, 'fire', true) setPedAnimation(player, 'ped', 'pass_Smoke_in_car', 0, false, false, false, false) outputChatBox(' '..getPlayerName(hit)..'#008800 Soltou suas algemas',player,255,255,255,true) end else outputChatBox("Você está longe demais!",hit,255,0,0,true) end end -- end do if ifPlayerPermission then end addCommandHandler('a',cuff) addEventHandler('onPlayerQuit', root,function() if getElementData(source,'cuff') == true then destroyElement(getElementData(source,'cuffOb')) removeElementData(source, 'cuff') end end) addEventHandler('onPlayerWasted',root,function() if getElementData(source,'cuff') == true then destroyElement(getElementData(source,'cuffOb')) removeElementData(source, 'cuff') end end) addEventHandler('onVehicleStartEnter', getRootElement(), function(player, seat) if getElementData(player,'cuff') == true then if seat ~= 0 then destroyElement(getElementData(player,'cuffOb')) else cancelEvent() outputChatBox('Você não pode dirigir você tem algemas!',player,255,0,0) end end end) setTimer(function() for _,player in ipairs(getElementsByType("player")) do if getElementData(player,'cuff') == true then if isPedInWater(player) then setTimer(function(player) if isPedInWater(player) then killPed(player) end end,5000,1,player) end end end end,1000,0) addEventHandler('onVehicleExit', getRootElement(), function(player, seat) if getElementData(player,'cuff') == true then setCuffPlayer(player) end end) -- ABAIXO UMA FUNÇÃO UTIL QUE FOI DEMONSTRADA por @MainSCR no seu outro post, deveria ter usado isto em vez da outra! function isPlayerPermission(thePlayer) -- faz um loop das acls declaradas na tabela e verifica se a acl do jogador é uma das acls declarada na tabela if isElement(thePlayer) and getElementType(thePlayer) == "player" then if isGuestAccount(getPlayerAccount(thePlayer)) then return end for _, group in ipairs(corpACLS) do if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(thePlayer)), aclGetGroup(group)) then -- preste atenção acima, ("user."..Nome da Conta , qual a acl )) return true end end end return false end Link to comment
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now