beast99 Posted February 16, 2020 Share Posted February 16, 2020 Bom dia, vim aqui esclarecer uma coisa. Estou fazendo o emprego de carregador, e o mesmo precisa de 5 caixas entregues para puder pegar o camião e sair. 1º- Quero que ao chegar no marker "Marker_Entregar[source]" , ele adicione +1 elementData. 2º Quero que quando o veículo saia dali, ele faça uma vericação se não tem nada naquele local e spawne outro veículo na mesma posição. veh_pc = {} local markercarregar = createMarker(2795.09546, -2425.29395, 13.63188-1.1, "cylinder", 2, 30,144,255) ocupado = { -- x, y, z, ocupado [1] = {2787.782, -2424.239, 13.634, 0, 0, 180, false, 2787.803, -2420.378, 13.634}, -- Esta coordenada está no seu script. [2] = {2788.123, -2410.558, 13.634, 0, 0, 0, false, 2788.146, -2414.291, 13.634}, -- Esta coordenada eu inventei. [3] = {2750, -2431.782, 13.643, 0, 0, 270, false, 2746.177, -2431.841, 13.643}, [4] = {2750, -2441.882, 13.643, 0, 0, 270, false, 2746.153, -2441.895, 13.643}, [5] = {2750, -2448.111, 13.643, 0, 0, 270, false, 2746.181, -2448.31, 13.648}, } function showMarker() local Emprego = getElementData(source, "Emprego") if Emprego == "Carregador" then for i, vaga in ipairs (ocupado) do local x, y, z, r, g, b, status, a, c, d = unpack(vaga) marcacao = createMarker( a, c, 12, "cylinder", 1.5, 30,144,255, 180 ) attachElements ( marcacao, veh_pc[source], 0, -4, -1 ) outputDebugString("02") end end end addEvent( "ShowMarkers", true) addEventHandler( "ShowMarkers", getRootElement(), showMarker) function createVeh(thePlayer) local Emprego = getElementData(source, "Emprego") for i, vaga in ipairs (ocupado) do local x, y, z, r, g, b, status, a, c, d = unpack(vaga) veh_pc[source] = createVehicle ( 414, x, y, z, r, g, b) setVehicleLocked( veh_pc[source], true) outputDebugString("01") end end addEventHandler( "onResourceStart", getRootElement(), createVeh ) function tempo(thePlayer) if getElementData(thePlayer, "veiculoalreadyspawnado") == true then setTimer(function() setElementData(source, "veiculoalreadyspawnado", false) end, 3000, 1) end end function setartempo(source) setElementData(source, "veiculoalreadyspawnado", false) end addCommandHandler("fodasse", setartempo) -------------------------------------------- --JOB-- Object_Caixa = {} Marker_Entregar = {} Blip_Entregar = {} local Blip_Emprego = createBlipAttachedTo( markercarregar, 16 ) setBlipVisibleDistance(markercarregar, 150) function Mesa_Caixa (source) local Emprego = getElementData ( source, "Emprego" ) local Px, Py, Pz = getElementPosition( markercarregar ) local Caixa = getElementData( source, "Caixa" ) if isElementWithinMarker(source, markercarregar) then if Caixa == false then if Emprego == "Carregador" then setPedAnimation( source, "CARRY", "liftup", 1.0, false ) setTimer(function() if isElement( Object_Caixa[source] ) then destroyElement( Object_Caixa[source] ) end if isElement( Marker_Entregar[source] ) then destroyElement( Marker_Entregar[source] ) end if isElement( Blip_Entregar[source] ) then destroyElement( Blip_Entregar[source] ) end setElementData(source, "Recompensa", 0) setPedAnimation( source, nil ) setElementData( source, "Caixa", true ) toggleControl( source, "jump", false ) toggleControl( source, "fire", false ) toggleControl(source, "aim_weapon", false) setPedAnimation( source, "CARRY", "crry_prtial", 4.1, true, true, true ) Object_Caixa[source] = createObject( 1271, Px, Py, Pz ) Marker_Entregar[source] = createMarker (2787.84521, -2420.40527, 13.63365-1.1, "cylinder", 2.5, 16, 111, 231, 50) Blip_Entregar[source] = createBlipAttachedTo( Marker_Entregar[source], 0 ) setElementVisibleTo ( Marker_Entregar[source], root, false ) setElementVisibleTo ( Blip_Entregar[source], root, false ) setElementVisibleTo ( Marker_Entregar[source], source, true ) setElementVisibleTo ( Blip_Entregar[source], source, true ) exports.bone_attach:attachElementToBone(Object_Caixa[source], source, 4, 0, 0.4, - 0.6, -90, 0, 0 ) end, 1000, 1) end end end end addCommandHandler("caixa", Mesa_Caixa) function Fim_Emprego (source) local Caixa = getElementData( source, "Caixa" ) local pay = math.random(100,200) local Recompensa = math.random(1, 35) if not isPedInVehicle ( source ) then if isElementWithinMarker(source, Marker_Entregar[source]) then if Caixa == true then setPedAnimation( source, "CARRY", "putdwn", 1.0, false, false, false, true ) setTimer(function() if isElement( Object_Caixa[source] ) then destroyElement( Object_Caixa[source] ) end if isElement( Marker_Entregar[source] ) then destroyElement( Marker_Entregar[source] ) end if isElement( Blip_Entregar[source] ) then destroyElement( Blip_Entregar[source] ) end setElementData( source, "Caixa", false ) toggleControl( source, "jump", true ) toggleControl( source, "fire", true ) toggleControl(source, "aim_weapon", true) setPedAnimation( source, "CARRY", "liftup", 0.0, false, false, false, false) setElementData(source,"char:money", getElementData(source,"char:money") + pay) setElementData(source,"Entregues", tonumber(getElementData(source,"Entregues") + 1)) exports.Scripts_Dxmessages:outputDx ( source, "Você entregou a caixa e ganhou: "..getElementData(source, "Recompensa").."$", "success" ) end, 1200, 1) end end end end addCommandHandler( "entregar", Fim_Emprego) fds = createMarker (2796.03687, -2420.05981, 13.63165-1.1, "cylinder", 2.5, 16, 111, 231, 50) function setardata(source) if getElementData( source, "Caixa" ) == true then setElementData( source, "Caixa", false ) end end addCommandHandler("a", setardata) function aaaa(source) cona = tonumber(getElementData(source, "Entregues")) if cona >= 1 then outputDebugString(""..cona.."") end end addEventHandler( "onMarkerHit", fds, aaaa ) addEventHandler( "onPlayerQuit", root, function() if isElement( Object_Caixa[source] ) then destroyElement( Object_Caixa[source] ) end if isElement( Marker_Entregar[source] ) then destroyElement( Marker_Entregar[source] ) end if isElement( Blip_Entregar[source] ) then destroyElement( Blip_Entregar[source] ) end end) addEventHandler( "onPlayerWasted", root, function() if isElement( Object_Caixa[source] ) then destroyElement( Object_Caixa[source] ) end if isElement( Marker_Entregar[source] ) then destroyElement( Marker_Entregar[source] ) end if isElement( Blip_Entregar[source] ) then destroyElement( Blip_Entregar[source] ) end setElementData( source, "Caixa", false ) toggleControl( source, "jump", true ) toggleControl( source, "fire", true ) toggleControl(source, "aim_weapon", true) end) Link to comment
beast99 Posted February 16, 2020 Author Share Posted February 16, 2020 (edited) Poderiam me ajudar? Edited February 16, 2020 by MesaDowN Link to comment
Angelo Pereira Posted February 16, 2020 Share Posted February 16, 2020 11 hours ago, MesaDowN said: 1º- Quero que ao chegar no marker "Marker_Entregar[source]" , ele adicione +1 elementData. Explique com detalhes, o que você quer dizer em adicionar +1 elementoData? Para você adicionar +1 Element, basta seta-lo, utilizando setElementData(_,"Nome_do_Elemento", _) 11 hours ago, MesaDowN said: 2º Quero que quando o veículo saia dali, ele faça uma vericação se não tem nada naquele local e spawne outro veículo na mesma posição. Crie um veiculo pelo editor de maps, e salve-o no local que você o deseja, é a melhor forma de fazer, ou terá que fazer por meio de script. 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