Jump to content

VEICULO ADMIN DAYZ!! ALGUÉM ME AJUDA ??


Recommended Posts

Alguém pode me ajudar com um script?
eu consegui criar um veiculo para a acl "admin" através do comando "carro". Porém não consigo fazer para que respawne apenas um carro por vez. Toda vez que digita o comando "carro" ele continua spawnando o veiculo um do lado do outro.

function veiculodayz(thePlayer)
accountname = getAccountName(getPlayerAccount(thePlayer))
if isObjectInACLGroup("user." .. accountname, aclGetGroup("Admin")) then
do
        local x, y, z = getElementPosition(thePlayer)
        veh = createVehicle(489, x+3, y, z)
        setVehicleColor(veh,0,0,0)
        vehCol = createColSphere(x, y, z, 2.5)
        attachElements( vehCol, veh, 0, 0, 0 )
        setElementData(vehCol,"parent",veh)
        setElementData(veh,"parent",vehCol)
        setElementData(vehCol,"vehicle",true)
        setElementData(vehCol,"Tire_inVehicle",4)
        setElementData(vehCol,"Engine_inVehicle",1)
        setElementData(vehCol,"Parts_inVehicle",1)
        setElementData(vehCol,"fuel",10000)
        end    
    
end

end
addCommandHandler("carro", veiculodayz)

 

Link to comment
  • Other Languages Moderators
  • accountname está sendo usado em outro script ou outra função? Se não estiver, deixe ela como variável local.
  • Aquele do não faz sentido nenhum.
  • Corrija a indentação do código.
  • Existe um end em excesso.
  • Thanks 1
Link to comment

Lord Henry,

 como disse, porém minha duvida é como escrever para respawnar somente um veiculo toda vez que acionado o comando. consegue me ajudar?

https://uploaddeimagens.com.br/imagens/mta-screen_2018-12-17_16-23-48-png

function veiculodayz(thePlayer)
local accountname = getAccountName(getPlayerAccount(thePlayer))
if isObjectInACLGroup("user." .. accountname, aclGetGroup("Admin")) then

        local x, y, z = getElementPosition(thePlayer)
        veh = createVehicle(411, x+3, y, z)
        setVehicleColor(veh,255,255,255)
        vehCol = createColSphere(x, y, z, 2.5)
        attachElements( vehCol, veh, 0, 0, 0 )
        setElementData(vehCol,"parent",veh)
        setElementData(veh,"parent",vehCol)
        setElementData(vehCol,"vehicle",true)
        setElementData(vehCol,"Tire_inVehicle",4)
        setElementData(vehCol,"Engine_inVehicle",1)
        setElementData(vehCol,"Parts_inVehicle",1)
        setElementData(vehCol,"fuel",10000)
        end    
    
end

addCommandHandler("carro", veiculodayz)

 

Edited by P43tous
adição de screen!
Link to comment

Lord Henry  Arrumei o código como me propôs, esta funcionando! Ele criar o veiculo ao lado do player. Minha duvida é como escrever que ao dar o comando "carro" novamente ele destrua o veiculo original e recria outro ao lado. Os output's encontrados na imagem não leve em consideração pois era uma resource que eu estava testando mas ja desativei! 

Link to comment
  1. function veiculodayz(thePlayer)
  2. local accountname = getAccountName(getPlayerAccount(thePlayer))
  3. if isObjectInACLGroup("user." .. accountname, aclGetGroup("Admin")) then
  4.  
  5.         local x, y, z = getElementPosition(thePlayer)
  6.         veh = createVehicle(411, x+3, y, z)
  7.         setVehicleColor(veh,255,255,255)
  8.         vehCol = createColSphere(x, y, z, 2.5)
  9.         attachElements( vehCol, veh, 0, 0, 0 )
  10.         setElementData(vehCol,"parent",veh)
  11.         setElementData(veh,"parent",vehCol)
  12.         setElementData(vehCol,"vehicle",true)
  13.         setElementData(vehCol,"Tire_inVehicle",4)
  14.         setElementData(vehCol,"Engine_inVehicle",1)
  15.         setElementData(vehCol,"Parts_inVehicle",1)
  16.         setElementData(vehCol,"fuel",10000)
  17.         end    
  18.     
  19. end
  20.  
  21. addCommandHandler("carro", veiculodayz)
Link to comment
function veiculodayz(thePlayer)
local accountname = getAccountName(getPlayerAccount(thePlayer))
if isObjectInACLGroup("user." .. accountname, aclGetGroup("Admin")) then
       if veh then
        DestroyElement(veh)
        DestroyElement(vehCol)
      end
        local x, y, z = getElementPosition(thePlayer)
        veh = createVehicle(411, x+3, y, z)
        setVehicleColor(veh,255,255,255)
        vehCol = createColSphere(x, y, z, 2.5)
        attachElements( vehCol, veh, 0, 0, 0 )
        setElementData(vehCol,"parent",veh)
        setElementData(veh,"parent",vehCol)
        setElementData(vehCol,"vehicle",true)
        setElementData(vehCol,"Tire_inVehicle",4)
        setElementData(vehCol,"Engine_inVehicle",1)
        setElementData(vehCol,"Parts_inVehicle",1)
        setElementData(vehCol,"fuel",10000)
        end    
    
end

addCommandHandler("carro", veiculodayz)

 

  • Like 1
Link to comment

 

6 minutes ago, brunob22 said:

 

não entendi

 

Um exemplo:

1 - O player aciona o comando "carro"  e o veiculo desova ao lado do player! Correto?

2- O player deixa o veiculo e começa a se distanciar do veiculo.

3-  Se o player quiser chamar o veiculo novamente ele não consegue. Ou ele volta e pega o veiculo ou ele explode o veiculo.

4- Minha pergunta é, ha possibilidade de quando o player acionar o comando "carro" o veiculo spawnar perto dele novamente sem criar duplicidade, ou seja somente puxar o veiculo pra perto do player?

Edited by P43tous
Link to comment
1 minute ago, P43tous said:

Um exemplo:

1 - O player aciona o comando "carro"  e o veiculo desova ao lado do player! Correto?

2- O player deixa o veiculo e começa a se distanciar do veiculo.

3-  Se o player quiser chamar o veiculo novamente ele não consegue. Ou ele volta e pega o veiculo ou ele explode o veiculo.

4- Minha pergunta é, ha possibilidade de quando o player acionar o comando "carro" o veiculo spawnar perto dele novamente sem criar duplicidade, ou seja somente puxar o veiculo pra perto do player?

tenta isso

veh = {}
vehCol = {}
function veiculodayz(thePlayer)
local accountname = getAccountName(getPlayerAccount(thePlayer))
if isObjectInACLGroup("user." .. accountname, aclGetGroup("Admin")) then
       if veh[thePlayer] then
        DestroyElement(veh[thePlayer])
        DestroyElement(vehCol[thePlayer])
      end
        local x, y, z = getElementPosition(thePlayer)
        veh[thePlayer] = createVehicle(411, x+3, y, z)
        setVehicleColor(veh[thePlayer],255,255,255)
        vehCol[thePlayer] = createColSphere(x, y, z, 2.5)
        attachElements( vehCol, veh, 0, 0, 0 )
        setElementData(vehCol[thePlayer],"parent",veh)
        setElementData(veh[thePlayer],"parent",vehCol)
        setElementData(vehCol[thePlayer],"vehicle",true)
        setElementData(vehCol[thePlayer],"Tire_inVehicle",4)
        setElementData(vehCol[thePlayer],"Engine_inVehicle",1)
        setElementData(vehCol[thePlayer],"Parts_inVehicle",1)
        setElementData(vehCol[thePlayer],"fuel",10000)
        end    
    
end

addCommandHandler("carro", veiculodayz)

não testei

  • Thanks 1
Link to comment

Não funcionou, ele continua do mesmo jeito e ainda não le as configurações de tires, engines, e parts.

6 minutes ago, brunob22 said:

tenta isso


veh = {}
vehCol = {}
function veiculodayz(thePlayer)
local accountname = getAccountName(getPlayerAccount(thePlayer))
if isObjectInACLGroup("user." .. accountname, aclGetGroup("Admin")) then
       if veh[thePlayer] then
        DestroyElement(veh[thePlayer])
        DestroyElement(vehCol[thePlayer])
      end
        local x, y, z = getElementPosition(thePlayer)
        veh[thePlayer] = createVehicle(411, x+3, y, z)
        setVehicleColor(veh[thePlayer],255,255,255)
        vehCol[thePlayer] = createColSphere(x, y, z, 2.5)
        attachElements( vehCol, veh, 0, 0, 0 )
        setElementData(vehCol[thePlayer],"parent",veh)
        setElementData(veh[thePlayer],"parent",vehCol)
        setElementData(vehCol[thePlayer],"vehicle",true)
        setElementData(vehCol[thePlayer],"Tire_inVehicle",4)
        setElementData(vehCol[thePlayer],"Engine_inVehicle",1)
        setElementData(vehCol[thePlayer],"Parts_inVehicle",1)
        setElementData(vehCol[thePlayer],"fuel",10000)
        end    
    
end

addCommandHandler("carro", veiculodayz)

não testei

 

Link to comment
  • Other Languages Moderators

Pronto.

veh = {}
vehCol = {}

function veiculodayz (thePlayer)
	local accountname = getAccountName (getPlayerAccount (thePlayer)) -- accountname recebe o nome da conta do jogador que usou o comando.
	if isObjectInACLGroup ("user."..accountname, aclGetGroup ("Admin")) then -- Se o nome da conta estiver na ACL Group Admin, então:
		local x, y, z = getElementPosition (thePlayer) -- x, y, z recebem a posição do jogador que usou o comando.
		if isElement (veh[thePlayer]) then -- Se já existe o veh[thePlayer] criado, então:
			spawnVehicle (veh[thePlayer], x+3, y, z) -- Spawna ele perto do jogador, sem criar outro.
			setElementData (vehCol[thePlayer], "parent", veh[thePlayer]) -- Reseta as datas do colider.
			setElementData (veh[thePlayer], "parent", vehCol[thePlayer])
			setElementData (vehCol[thePlayer], "vehicle", true)
			setElementData (vehCol[thePlayer], "Tire_inVehicle", 4)
			setElementData (vehCol[thePlayer], "Engine_inVehicle", 1)
			setElementData (vehCol[thePlayer], "Parts_inVehicle", 1)
			setElementData (vehCol[thePlayer], "fuel", 10000)
		else -- Se não existe um veh[thePlayer] criado, então:
			veh[thePlayer] = createVehicle (489, x+3, y, z) -- Cria o veh[thePlayer].
			setVehicleColor (veh[thePlayer], 0, 0, 0) -- Coloca ele na cor preta.
			if isElement (vehCol[thePlayer]) then -- Se já existe o colider (veículo foi deletado e o colider ficou lá), então:
				attachElements (vehCol[thePlayer], veh[thePlayer], 0, 0, 0) -- Anexa o colider novamente ao veh[thePlayer].
			else -- Se não existe colider nenhum, então:
				vehCol[thePlayer] = createColSphere (x, y, z, 2.5) -- Cria o colider.
				attachElements (vehCol[thePlayer], veh[thePlayer], 0, 0, 0) -- Anexa ele ao veh[thePlayer].
			end
			setElementData (vehCol[thePlayer], "parent", veh[thePlayer]) -- Seta as datas no veh[thePlayer] e no colider.
			setElementData (veh[thePlayer], "parent", vehCol[thePlayer])
			setElementData (vehCol[thePlayer], "vehicle", true)
			setElementData (vehCol[thePlayer], "Tire_inVehicle", 4)
			setElementData (vehCol[thePlayer], "Engine_inVehicle", 1)
			setElementData (vehCol[thePlayer], "Parts_inVehicle", 1)
			setElementData (vehCol[thePlayer], "fuel", 10000)
		end
	end
end
addCommandHandler ("carro", veiculodayz)

 

  • Thanks 1
Link to comment

Lord Henry 

Deu certo meu brother!!! Porém só tive que excluir ,

25.                                    end

e acrescentar ,

36.  end 

para fechar a função da linha 4.

Muito obrigado pela ajuda meu brother!!!!????

 

 

veh = {}
vehCol = {}

function veiculodayz (thePlayer)
    local accountname = getAccountName (getPlayerAccount (thePlayer)) -- accountname recebe o nome da conta do jogador que usou o comando.
    if isObjectInACLGroup ("user."..accountname, aclGetGroup ("Admin")) then -- Se o nome da conta estiver na ACL Group Admin, então:
        local x, y, z = getElementPosition (thePlayer) -- x, y, z recebem a posição do jogador que usou o comando.
        if isElement (veh[thePlayer]) then -- Se já existe o veh[thePlayer] criado, então:
            spawnVehicle (veh[thePlayer], x+3, y, z) -- Spawna ele perto do jogador, sem criar outro.
            setElementData (vehCol[thePlayer], "parent", veh[thePlayer]) -- Reseta as datas do colider.
            setElementData (veh[thePlayer], "parent", vehCol[thePlayer])
            setElementData (vehCol[thePlayer], "vehicle", true)
            setElementData (vehCol[thePlayer], "Tire_inVehicle", 4)
            setElementData (vehCol[thePlayer], "Engine_inVehicle", 1)
            setElementData (vehCol[thePlayer], "Parts_inVehicle", 1)
            setElementData (vehCol[thePlayer], "fuel", 10000)
        else -- Se não existe um veh[thePlayer] criado, então:
            veh[thePlayer] = createVehicle (489, x+3, y, z) -- Cria o veh[thePlayer].
            setVehicleColor (veh[thePlayer], 0, 0, 0) -- Coloca ele na cor preta.
            if isElement (vehCol[thePlayer]) then -- Se já existe o colider (veículo foi deletado e o colider ficou lá), então:
                attachElements (vehCol[thePlayer], veh[thePlayer], 0, 0, 0) -- Anexa o colider novamente ao veh[thePlayer].
            else -- Se não existe colider nenhum, então:
                vehCol[thePlayer] = createColSphere (x, y, z, 2.5) -- Cria o colider.
                attachElements (vehCol[thePlayer], veh[thePlayer], 0, 0, 0) -- Anexa ele ao veh[thePlayer].
            
            setElementData (vehCol[thePlayer], "parent", veh[thePlayer]) -- Seta as datas no veh[thePlayer] e no colider.
            setElementData (veh[thePlayer], "parent", vehCol[thePlayer])
            setElementData (vehCol[thePlayer], "vehicle", true)
            setElementData (vehCol[thePlayer], "Tire_inVehicle", 4)
            setElementData (vehCol[thePlayer], "Engine_inVehicle", 1)
            setElementData (vehCol[thePlayer], "Parts_inVehicle", 1)
            setElementData (vehCol[thePlayer], "fuel", 10000)
        end
    end
end
end
addCommandHandler ("carro", veiculodayz)

 

brunob22

Obrigado pela ajuda meu brother deu certo aqui conforme sugestão do Lord Henry ???

abraço!!

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