Jump to content

Ajuda com script


Recommended Posts

Oi , estou criando um script para o jogador chamar a polícia. porém quando ele chama a policia usando o comando /190 a mensagem aparece tanto para os jogadores do servidor quanto os policiais.

Queria deixar a mensagem apenas aparecendo para quem estivesse na ACL da Policia . Tem como?

function help (player)
	outputChatBox("#FF0000190: Cidadão ID "..id.." #bebebeChamou a Polícia, atenda o chamado!",player,255,255,255,true) <<<< Mensagem.
end
addCommandHandler ( "190", help )

Se alguém puder ajudar agradeço demais!

Link to comment

Tente assim:

function help(thePlayer, commandName)
	local players = getElementsByType ("player") --// Aqui estou obtendo todos os elementos do tipo "player";
	for _, cop in ipairs (players) do --// Loop para verificar quem está na ACL
		local account = getAccountName (getPlayerAccount(cop))
		if isObjectInACLGroup ("user."..account, aclGetGroup ("ComandosPolicia")) then --// Altere pela ACL de seus policiais
			outputChatBox("190: Cidadão ID "..id.." #bebebeChamou a Polícia, atenda o chamado!", cop, 255, 0, 0, true)
		end
	end
end
addCommandHandler("190", help)

OBS: Não testado

Edited by #DeltaSCR
Problemas na identação
Link to comment
function chamarPolicia (thePlayer)	
	outputChatBox ("Você chamou os policiais com sucesso, aguarde.", thePlayer, 0, 255, 0) -- Avisa o jogador que usou o comando que a chamada foi efetuada com sucesso.
	for k, player in ipairs (getElementsByType("player")) do	-- Para cada jogador que está na ACL Group "ComandosPolicia", faça:
		if isObjectInACLGroup ("user."..getAccountName (getPlayerAccount(player)), aclGetGroup ("ComandosPolicia")) then -- Se o jogador estiver na ACL "ComandosPolicia", então:
			outputChatBox ("190: Cidadão ID "..id.." #bebebeChamou a Polícia, atenda o chamado!", player, 255, 0, 0, true) -- Os policiais iram receber a denúncia.
		end
	end
end
addCommandHandler ("190", chamarPolicia)

 

  • Thanks 1
Link to comment

No caso , eu coloquei para pegar o ID do jogador em vez do nickname , eu já tinha usado em outros scripts, mas quando digito /190 para usar o comando aparece "Cidadão "nil" " sabe como resolver?

https://imgur.com/a/yRm5FRa

 

function chamarPolicia (thePlayer)	
	outputChatBox ("Você chamou os policiais com sucesso, aguarde.", thePlayer, 0, 255, 0) -- Avisa o jogador que usou o comando que a chamada foi efetuada com sucesso.
	for k, player in ipairs (getElementsByType("player")) do	-- Para cada jogador que está na ACL Group "ComandosPolicia", faça:
		if isObjectInACLGroup ("user."..getAccountName (getPlayerAccount(player)), aclGetGroup ("PoliciaComandos")) then -- Se o jogador estiver na ACL "ComandosPolicia", então:
			outputChatBox ("#2E2EFE190: #848484Cidadão ID "..tostring(playerid).." #bebebeChamou a Polícia, atenda o chamado!", player, 255, 0, 0, true) -- Os policiais iram receber a denúncia.
		end
	end
end
addCommandHandler ("190", chamarPolicia)

 

Link to comment
8 minutes ago, Renazz said:

No caso , eu coloquei para pegar o ID do jogador em vez do nickname , eu já tinha usado em outros scripts, mas quando digito /190 para usar o comando aparece "Cidadão "nil" " sabe como resolver?

https://imgur.com/a/yRm5FRa

 


function chamarPolicia (thePlayer)	
	outputChatBox ("Você chamou os policiais com sucesso, aguarde.", thePlayer, 0, 255, 0) -- Avisa o jogador que usou o comando que a chamada foi efetuada com sucesso.
	for k, player in ipairs (getElementsByType("player")) do	-- Para cada jogador que está na ACL Group "ComandosPolicia", faça:
		if isObjectInACLGroup ("user."..getAccountName (getPlayerAccount(player)), aclGetGroup ("PoliciaComandos")) then -- Se o jogador estiver na ACL "ComandosPolicia", então:
			outputChatBox ("#2E2EFE190: #848484Cidadão ID "..tostring(playerid).." #bebebeChamou a Polícia, atenda o chamado!", player, 255, 0, 0, true) -- Os policiais iram receber a denúncia.
		end
	end
end
addCommandHandler ("190", chamarPolicia)

 

Cade a variável obtendo o ID do player?

Link to comment

Não, não precisa exportar, basta criar uma variável obtendo o ID do Player com getAccountID.

Tente assim:

function chamarPolicia (thePlayer)
	local playerID = getAccountID(getPlayerAccount(thePlayer))
	outputChatBox ("Você chamou os policiais com sucesso, aguarde.", thePlayer, 0, 255, 0) -- Avisa o jogador que usou o comando que a chamada foi efetuada com sucesso.
	for k, player in ipairs (getElementsByType("player")) do	-- Para cada jogador que está na ACL Group "ComandosPolicia", faça:
		if isObjectInACLGroup ("user."..getAccountName (getPlayerAccount(player)), aclGetGroup ("PoliciaComandos")) then -- Se o jogador estiver na ACL "ComandosPolicia", então:
			outputChatBox ("#2E2EFE190: #848484Cidadão ID "..playerID.." #bebebeChamou a Polícia, atenda o chamado!", player, 255, 0, 0, true) -- Os policiais iram receber a denúncia.
		end
	end
end
addCommandHandler ("190", chamarPolicia)

 

Link to comment

foi , mas está aparecendo "false"

 

function chamarPolicia (thePlayer)
	local playerID = exports["[PRS]ID_System"]:getPlayerID(tonumber(playerid))
	outputChatBox ("Você chamou os policiais com sucesso, aguarde.", thePlayer, 0, 255, 0) -- Avisa o jogador que usou o comando que a chamada foi efetuada com sucesso.
	for k, player in ipairs (getElementsByType("player")) do	-- Para cada jogador que está na ACL Group "ComandosPolicia", faça:
		if isObjectInACLGroup ("user."..getAccountName (getPlayerAccount(player)), aclGetGroup ("PoliciaComandos")) then -- Se o jogador estiver na ACL "ComandosPolicia", então:
			outputChatBox ("#2E2EFE190: #848484Cidadão ID "..tostring(playerID).." #bebebeChamou a Polícia, atenda o chamado!", player, 255, 0, 0, true) -- Os policiais iram receber a denúncia.
		end
	end
end
addCommandHandler ("190",chamarPolicia)

já está com o sistema de id exportado.

Link to comment
11 minutes ago, Renazz said:

agora não está aparecendo nada quando uso o comando 

EDIT: ele não tá funcionando por causa de um erro unexpected symbol near '  ' ligne 10 

gerou caracter invisivel

Mande o código via pastebin para mim que eu retiro.

  • Thanks 1
Link to comment
1 minute ago, Jonas^ said:

Mande o código via pastebin para mim que eu retiro.

já resolvi.

1 minute ago, #DeltaSCR said:

É, se for nesse caso sim, agora se ele quiser obter o ID "Padrão" do MTA, Salvo no internal, basta usar o que eu citei anteriormente...

é eu uso um para roleplay , porém não está funcionando mesmo assim fica dando "false" 

3YfZv6I.jpg

Link to comment

gLTiUUz.png

function chamarPolicia (thePlayer)
	local playerID = exports["[PRS]ID_System"]:getPlayerID(tonumber(playerid))
	outputChatBox ("Você chamou os policiais com sucesso, aguarde.", thePlayer, 0, 255, 0) -- Avisa o jogador que usou o comando que a chamada foi efetuada com sucesso.
	for k, player in ipairs (getElementsByType("player")) do	-- Para cada jogador que está na ACL Group "ComandosPolicia", faça:
		if isObjectInACLGroup ("user."..getAccountName (getPlayerAccount(player)), aclGetGroup ("PoliciaComandos")) then -- Se o jogador estiver na ACL "ComandosPolicia", então:
			outputChatBox ("#2E2EFE190: #848484Cidadão ID "..tostring(playerID).." #bebebeChamou a Polícia, atenda o chamado!", player, 255, 0, 0, true) -- Os policiais iram receber a denúncia.
		end
	end
end
addCommandHandler ("190",chamarPolicia)

 

4 minutes ago, Jonas^ said:

já conferiu se o sistema de id esta ativo?

ele está ativo sim

Edited by Renazz
Link to comment

Assim?

function chamarPolicia (thePlayer)
	 playerID = exports["[PRS]ID_System"]:getPlayerID(tonumber(playerid))
	outputChatBox ("Você chamou os policiais com sucesso, aguarde.", thePlayer, 0, 255, 0) -- Avisa o jogador que usou o comando que a chamada foi efetuada com sucesso.
	for k, player in ipairs (getElementsByType("player")) do	-- Para cada jogador que está na ACL Group "ComandosPolicia", faça:
		if isObjectInACLGroup ("user."..getAccountName (getPlayerAccount(player)), aclGetGroup ("PoliciaComandos")) then -- Se o jogador estiver na ACL "ComandosPolicia", então:
			outputChatBox ("#2E2EFE190: #848484Cidadão ID "..tostring(playerID).." #bebebeChamou a Polícia, atenda o chamado!", player, 255, 0, 0, true) -- Os policiais iram receber a denúncia.
		end
	end
end
addCommandHandler ("190",chamarPolicia)

 

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