jzk2024 Posted February 3, 2020 Share Posted February 3, 2020 Estou fazendo um mod de detran porém, não sei como pegar o ultimo carro que entrei para pegar e dar attachelement no carro do detran como posso pegar? Link to comment
Developer. Posted February 3, 2020 Share Posted February 3, 2020 - Crie uma tabela - Insira o veículo dentro da tabela - Use onPlayerVehicleEnter como evento. local viatura = {} -- tabela criada function salvar_Carro (vehicle, seat, jacked) viatura[source] = vehicle -- veiculo inserido end addEventHandler('onPlayerVehicleEnter', getRootElement(), salvar_Carro) -- evento de ativação! 1 Link to comment
jzk2024 Posted February 4, 2020 Author Share Posted February 4, 2020 Obrigado mano vou tentar 1 Link to comment
jzk2024 Posted February 4, 2020 Author Share Posted February 4, 2020 (edited) 17 hours ago, Developer. said: - Crie uma tabela - Insira o veículo dentro da tabela - Use onPlayerVehicleEnter como evento. local viatura = {} -- tabela criada function salvar_Carro (vehicle, seat, jacked) viatura[source] = vehicle -- veiculo inserido end addEventHandler('onPlayerVehicleEnter', getRootElement(), salvar_Carro) -- evento de ativação! Ai não consegui mas vou postar o code aqui pra dar uma olhada: function darCarro (player) outputChatBox("#FFA500[Detran]:#FFFFFFVocê pegou carro do Detran", player, 255, 255, 255, true) if veh and isElement(veh) then destroyElement(veh) veh = nil end veh = createVehicle(578, 1547.663, -2303.496, 13.545,-0, 0, 1.548) warpPedIntoVehicle(player, veh, 0) end addEventHandler("onPickupHit", carro, darCarro) local viatura = {} function salvar_Carro (vehicle, seat, jacked) viatura[source] = vehicle end addEventHandler('onPlayerVehicleEnter', getRootElement(), salvar_Carro) function guinVeh ( command ) local x, y, z = getElementPosition ( veh ) attachElements ( viatura[source], veh, 0, -1, 1 ) end addCommandHandler ( "guinchar", guinVeh ) Edited February 4, 2020 by zking0d Link to comment
Developer. Posted February 4, 2020 Share Posted February 4, 2020 Ta ai, um sistema simples de Detran. local acl = "Detran" -- acl que tem permissão para efetuar os comandos /guinchar /soltar e pegar o carro do detran. local detran = { vtr = {}, last = {}, inUse = {}, guinchado = {}, }; function darCarro(jogador) if isPlayerInACL(jogador, acl) then if detran.inUse[jogador] ~= true then if detran.vtr[jogador] then destroyElement(detran.vtr[jogador]) detran.vtr[jogador] = nil end detran.vtr[jogador] = createVehicle(578, 1547.663, -2303.496, 13.545,-0, 0, 1.548) warpPedIntoVehicle(jogador, detran.vtr[jogador]) outputChatBox("#FFA500[Detran]:#FFFFFFVocê pegou carro do Detran", jogador, 255, 255, 255, true) else outputChatBox("#FFA500[Detran]:#FFFFFFVocê não pode pegar um novo carro do Detran", jogador, 255, 255, 255, true) end end end addEventHandler("onPickupHit", carro, darCarro) function salvar_Carro (vehicle, seat, jacked) if isPlayerInACL(source, acl) then detran.last[source] = vehicle end end addEventHandler('onPlayerVehicleEnter', getRootElement(), salvar_Carro) function guinVeh (jogador) if isPlayerInACL(jogador, acl) then local vtr = detran.vtr[jogador] local veh = detran.last[jogador] local vtrx, vtry, vtrz = getElementPosition(vtr) local vehx, vehy, vehz = getElementPosition(veh) local dist = getDistanceBetweenPoints3D(vtrx, vtry, vtrz, vehx, vehy, vehz) if (vtr) and (veh) then if dist < 5.5 then if not detran.inUse[jogador] then attachElements(veh, vtr, 0, -1, 1) detran.guinchado[jogador] = veh detran.inUse[jogador] = true outputChatBox("#FFA500[Detran]:#FFFFFFVeículo guinchado!", jogador, 255, 255, 255, true) else outputChatBox("#FFA500[Detran]:#FFFFFFVocê já guinchou um veículo!", jogador, 255, 255, 255, true) end else outputChatBox("#FFA500[Detran]:#FFFFFFAproxime o guincho do veículo!", jogador, 255, 255, 255, true) end end end end addCommandHandler("guinchar", guinVeh) function soltarVeh (jogador) if isPlayerInACL(jogador, acl) then local vtr = detran.vtr[jogador] local veh = detran.guinchado[jogador] local jogx, jogy, jogz = getElementPosition(jogador) local vtrx, vtry, vtrz = getElementPosition(vtr) local dist = getDistanceBetweenPoints3D(jogx, jogy, jogz, vtrx, vtry, vtrz) if (vtr) and (veh) then if dist < 3.5 then if detran.inUse[jogador] then detachElements(veh, vtr) detran.inUse[jogador] = false detran.guinchado[jogador] = nil outputChatBox("#FFA500[Detran]:#FFFFFFVeículo liberado!", jogador, 255, 255, 255, true) end else outputChatBox("#FFA500[Detran]:#FFFFFFAproxime-se do guincho!", jogador, 255, 255, 255, true) end end end end addCommandHandler("soltar", soltarVeh) function isPlayerInACL(player, acl) if isElement(player) and getElementType(player) == "player" and aclGetGroup(acl or "") and not isGuestAccount(getPlayerAccount(player)) then local account = getPlayerAccount(player) return isObjectInACLGroup( "user.".. getAccountName(account), aclGetGroup(acl) ) end return false end Se ocorrer algum erro, só estar comentando aqui. Não se esqueça de ativar seu debugscript (/debugscript 3). @zking0d 1 Link to comment
magnux Posted May 4, 2020 Share Posted May 4, 2020 On 04/02/2020 at 15:29, Developer. said: Ta ai, um sistema simples de Detran. local acl = "Detran" -- acl que tem permissão para efetuar os comandos /guinchar /soltar e pegar o carro do detran. local detran = { vtr = {}, last = {}, inUse = {}, guinchado = {}, }; function darCarro(jogador) if isPlayerInACL(jogador, acl) then if detran.inUse[jogador] ~= true then if detran.vtr[jogador] then destroyElement(detran.vtr[jogador]) detran.vtr[jogador] = nil end detran.vtr[jogador] = createVehicle(578, 1547.663, -2303.496, 13.545,-0, 0, 1.548) warpPedIntoVehicle(jogador, detran.vtr[jogador]) outputChatBox("#FFA500[Detran]:#FFFFFFVocê pegou carro do Detran", jogador, 255, 255, 255, true) else outputChatBox("#FFA500[Detran]:#FFFFFFVocê não pode pegar um novo carro do Detran", jogador, 255, 255, 255, true) end end end addEventHandler("onPickupHit", carro, darCarro) function salvar_Carro (vehicle, seat, jacked) if isPlayerInACL(source, acl) then detran.last[source] = vehicle end end addEventHandler('onPlayerVehicleEnter', getRootElement(), salvar_Carro) function guinVeh (jogador) if isPlayerInACL(jogador, acl) then local vtr = detran.vtr[jogador] local veh = detran.last[jogador] local vtrx, vtry, vtrz = getElementPosition(vtr) local vehx, vehy, vehz = getElementPosition(veh) local dist = getDistanceBetweenPoints3D(vtrx, vtry, vtrz, vehx, vehy, vehz) if (vtr) and (veh) then if dist < 5.5 then if not detran.inUse[jogador] then attachElements(veh, vtr, 0, -1, 1) detran.guinchado[jogador] = veh detran.inUse[jogador] = true outputChatBox("#FFA500[Detran]:#FFFFFFVeículo guinchado!", jogador, 255, 255, 255, true) else outputChatBox("#FFA500[Detran]:#FFFFFFVocê já guinchou um veículo!", jogador, 255, 255, 255, true) end else outputChatBox("#FFA500[Detran]:#FFFFFFAproxime o guincho do veículo!", jogador, 255, 255, 255, true) end end end end addCommandHandler("guinchar", guinVeh) function soltarVeh (jogador) if isPlayerInACL(jogador, acl) then local vtr = detran.vtr[jogador] local veh = detran.guinchado[jogador] local jogx, jogy, jogz = getElementPosition(jogador) local vtrx, vtry, vtrz = getElementPosition(vtr) local dist = getDistanceBetweenPoints3D(jogx, jogy, jogz, vtrx, vtry, vtrz) if (vtr) and (veh) then if dist < 3.5 then if detran.inUse[jogador] then detachElements(veh, vtr) detran.inUse[jogador] = false detran.guinchado[jogador] = nil outputChatBox("#FFA500[Detran]:#FFFFFFVeículo liberado!", jogador, 255, 255, 255, true) end else outputChatBox("#FFA500[Detran]:#FFFFFFAproxime-se do guincho!", jogador, 255, 255, 255, true) end end end end addCommandHandler("soltar", soltarVeh) function isPlayerInACL(player, acl) if isElement(player) and getElementType(player) == "player" and aclGetGroup(acl or "") and not isGuestAccount(getPlayerAccount(player)) then local account = getPlayerAccount(player) return isObjectInACLGroup( "user.".. getAccountName(account), aclGetGroup(acl) ) end return false end Se ocorrer algum erro, só estar comentando aqui. Não se esqueça de ativar seu debugscript (/debugscript 3). @zking0d Como consigo bota essa função em um botão DX coloquei mais nem o chatbox sair ajuda Link to comment
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now