Jump to content

Alguem poderia me ajudar


Recommended Posts

Posted (edited)
Gostaria de Por um tempo de 5 minutos para o blip sumir

function Chamado (splayer)
	local players = getElementsByType ("player")
	local blip = createBlipAttachedTo (splayer, 62)
	setElementVisibleTo (blip, root, false) -- oculta o blip para todos elementos
	
	for _, driver in ipairs (players) do
		local account = getAccountName (getPlayerAccount(driver))
		if isObjectInACLGroup ("user."..account, aclGetGroup ("Policia")) then
			setElementVisibleTo (blip, driver, true) -- mostra o blip para todos do grupo "Policia"
		end
	end
end
addCommandHandler ("190", Chamado)

 

Edited by zW1Z4RD
Posted
function Chamado (splayer)
	local players = getElementsByType ("player")
	local blip = createBlipAttachedTo (splayer, 62)
	setElementVisibleTo (blip, root, false) -- oculta o blip para todos elementos
	
	for _, driver in ipairs (players) do
		local account = getAccountName (getPlayerAccount(driver))
		if isObjectInACLGroup ("user."..account, aclGetGroup ("Policia")) then
			setElementVisibleTo (blip, driver, true) -- mostra o blip para todos do grupo "Policia"	 
			
	  Timer = setTimer (function() -- Timer    
			setElementVisibleTo (blip, driver, false) -- oculta o blip para todos elementos
	  end,10000,1) -- Tempo pra tudo isso acima acontecer
	  
		end
	end
end
addCommandHandler ("190", Chamado)

Tente isso.

  • Thanks 1

Meu comentário foi útil? Deixe um Thanks :D

  • Moderators
Posted

Estou prevendo os seguintes erros neste código:

  • O timer irá bugar se o usuário ficar usando /190 várias vezes. Pois não existe nenhuma verificação que impede o spam do comando.
  • O timer irá duplicar, pois não há nenhuma verificação se ele já existe antes de criá-lo novamente.
  • Um timer de 5 minutos não é 10000 milissegundos, isso é só 10 segundos. 5 minutos são 300000 milissegundos.
  • Erros de indentação no código.
  • Like 2

Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanksspacer.png

Minhas contribuições para a comunidade: LordHenry - MTA Wiki Profile
Inscreva-se no meu canal do YouTube: Lord Henry - Entertainment
Discord Oficial do MTA: https://mtasa.com/discord
Blacklist e Whitelist de Scripters: Planilha

Por favor, não me envie mensagens privadas solicitando suporte. Crie um tópico no fórum em vez disso.

Posted
9 hours ago, Lord Henry said:

Estou prevendo os seguintes erros neste código:

  • O timer irá bugar se o usuário ficar usando /190 várias vezes. Pois não existe nenhuma verificação que impede o spam do comando.
  • O timer irá duplicar, pois não há nenhuma verificação se ele já existe antes de criá-lo novamente.
  • Um timer de 5 minutos não é 10000 milissegundos, isso é só 10 segundos. 5 minutos são 300000 milissegundos.
  • Erros de indentação no código.

Como posso fazer essa verificação

Posted (edited)

Adiciona o timer numa tabela com o jogador no índice/chave e verifica no inicio do comando se ele já existe.

Já existem vários tópicos pelo fórum com esse mesmo tipo de assunto, só dar uma garimpada pelo fórum.

Edited by DNL291

Please do not PM me with scripting related question nor support, use the forums instead.

  • Moderators
Posted (edited)

Para verificar se um timer já existe, use a função isTimer.

Exemplo:

timers = {}

function verificar (thePlayer)
	if not isTimer (timers[thePlayer]) then -- Se não existe o timer, então:
		timers[thePlayer] = setTimer (outputChatBox, 5000, 1, "Timer concluído.", thePlayer) -- Cria o timer, que irá mandar uma mensagem daqui a 5 segundos.
	else -- Se existe o timer, então:
		outputChatBox ("Já existe um timer criado.", thePlayer) -- Manda isso pro jogador que executou o comando.
	end
end
addCommandHandler ("eae", verificar)

 

Edited by Lord Henry

Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanksspacer.png

Minhas contribuições para a comunidade: LordHenry - MTA Wiki Profile
Inscreva-se no meu canal do YouTube: Lord Henry - Entertainment
Discord Oficial do MTA: https://mtasa.com/discord
Blacklist e Whitelist de Scripters: Planilha

Por favor, não me envie mensagens privadas solicitando suporte. Crie um tópico no fórum em vez disso.

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