Dandnix Posted November 26, 2022 Share Posted November 26, 2022 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
mafioz Posted November 26, 2022 Share Posted November 26, 2022 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
Dandnix Posted November 26, 2022 Author Share Posted November 26, 2022 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 Link to comment
mafioz Posted November 26, 2022 Share Posted November 26, 2022 Muito estranho.. Isso causa algum erro de depuração? Link to comment
Cadu12 Posted November 27, 2022 Share Posted November 27, 2022 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 1 Link to comment
Vampire Posted November 27, 2022 Share Posted November 27, 2022 Olá @Dandnix Movi seu tópico para a seção de Programação em Português do fórum para que você possa obter uma melhor assistência em seu idioma nativo. Lembre-se de sempre escrever em Inglês ao postar fora desta seção. Link to comment
Shady1 Posted November 27, 2022 Share Posted November 27, 2022 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 Lord Henry Posted December 3, 2022 Other Languages Moderators Share Posted December 3, 2022 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
Recommended Posts