Jump to content

problema com elementos


Recommended Posts

opa estou tendo um problema no timer quando acaba o tempo o player nao é transportado 

server:

veicletestdrive = {}
addEvent("testdrive", true)
addEventHandler("testdrive", getRootElement(), 
	function(player,veicleid)
		veicletestdrive[player] = createVehicle(veicleid,-2422.01147, -605.47894, 132.56250)
		warpPedIntoVehicle(player,veicletestdrive[player])
		 setTimer(function()
		 destroyElement(veicletestdrive[player])
		 setElementPosition(player, -2412.01294, -596.52393, 132.64844)
end, 30000, 1)
	end
)

client:

triggerServerEvent("testdrive",localPlayer,localPlayer,veicleid)

 

Link to comment
veicletestdrive = {}
addEvent("testdrive", true)
addEventHandler("testdrive", getRootElement(), 
	function(player,veicleid)
		veicletestdrive[player] = createVehicle(veicleid,-2422.01147, -605.47894, 132.56250)
		warpPedIntoVehicle(player,veicletestdrive[player])
		 setTimer(function(player)
		 destroyElement(veicletestdrive[player])
		 setElementPosition(player, -2412.01294, -596.52393, 132.64844)
end, 30000, 1, player)
	end
)

:)

Link to comment
veicletestdrive = {}
addEvent("testdrive", true)
addEventHandler("testdrive", getRootElement(), 
	function(player,veicleid)
		veicletestdrive[player] = createVehicle(veicleid,-2422.01147, -605.47894, 132.56250)
		warpPedIntoVehicle(player, veicletestdrive[player])
		setTimer(function(player)
			removePedFromVehicle(player) 
			destroyElement(veicletestdrive[player])
			setElementPosition(player, -2412.01294, -596.52393, 132.64844)
		end, 30000, 1, player)
	end
)

Try this code

  • Like 1
Link to comment
9 hours ago, Dandnix said:

continua na mesma o veiculo é destruido porem eu nao sou teleportado

ja tentei um monte de forma mas n vai ja tou a 3h horas nisso q dor de cabeça?

veicletestdrive = {}
addEvent("testdrive", true)
addEventHandler("testdrive", getRootElement(), 
    function(player,veicleid)
        veicletestdrive[player] = createVehicle(veicleid,-2422.01147, -605.47894, 132.56250)
        warpPedIntoVehicle(player,veicletestdrive[player])
         setTimer(function(player) --pass player to timer
         destroyElement(veicletestdrive[player])
         setElementPosition(player, -2412.01294, -596.52393, 132.64844)
         end, 30000, 1, player) --pass player to timer
    end
)

tente isso @Dandnix

Link to comment
  • Other Languages Moderators
  • Corrigida a indentação.
  • Código comentado com dicas.
  • Testado e funcionando.

server-side:

veicletestdrive = {} -- Optei por não mudar o nome da sua variável, apesar dela estar com nome zoado.

addEvent("testdrive", true)
addEventHandler("testdrive", root, function(vehID) -- Evite usar tipos de elementos como parâmetro. E não precisa passar o localPlayer como parâmetro, use a variável nativa 'client' que é o localPlayer que acionou o trigger.
    if (isElement(client)) then
        veicletestdrive[client] = createVehicle(vehID, -2422.011, -605.479, 132.563)
        warpPedIntoVehicle(client, veicletestdrive[client])
        setTimer(function(thePlayer) -- É necessário passar client como parâmetro de função do setTimer, pois ele deixa de existir dentro do timer. Então thePlayer = client.
            destroyElement(veicletestdrive[thePlayer])
            setElementPosition(thePlayer, -2412.013, -596.524, 132.648) -- Não é necessário mais do que 3 decimais.
        end, 30000, 1, client)
    end
end)

client-side:

triggerServerEvent("testdrive", resourceRoot, 490) -- Passei o ID direto pois não tenho o resto do seu código para usar a variável.
-- Não é recomendado passar 'localPlayer' como source do evento pois pode ocorrer conflito.
-- Também não passe o 'root' inteiro pois ele é muito pesado, exceto se for acionar por meio de outro resource.
-- resourceRoot já é o suficiente se o trigger estiver no mesmo resource.

 

Link to comment
  • 2 weeks later...
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...