zW1Z4RD Posted December 31, 2018 Share Posted December 31, 2018 (edited) Bom Dia(Em Geral) Então estou fazendo esse trabalho de traficante, ele está pra entregar em uma favela so q queria por para entregar em varias favelas so q n sei como fazer E se possivel por para quando ele pegar o trabalho pegar 1 nivel de procurado Se puder me ajudar fico grato ------------------------------------------------------------------------------------------------------------------------------------------------------------ StartEmprego02 = createMarker (775.66833496094, -2138.0109863281, 36.464061737061 -1, "cylinder", 1.2, 0 ,26 ,255, 95) -- Local Onde Pega O Emprego ------------------------------------------------------------------------------------------------------------------------------------------------------------ StopEmprego02 = createMarker (1135.3686523438, -2004.0344238281, 69.0078125 , "cylinder", 7, 0 ,26 ,255, 95) -- Local Onde Finaliza O Emprego setElementVisibleTo ( StopEmprego02, root, false ) ------------------------------------------------------------------------------------------------------------------------------------------------------------ LetraTEmprego02 = createBlipAttachedTo ( StartEmprego02, 23 ) -- Letra T setBlipVisibleDistance( LetraTEmprego02 , 700) -- Distancia Letra T "200" = 200 Metros Pra Ficar Visivel ------------------------------------------------------------------------------------------------------------------------------------------------------------ BlipFinalEmprego02 = createBlipAttachedTo ( StopEmprego02, 0 ) -- Blip De Entrega, "0" - Vermelho Padrao setElementVisibleTo ( BlipFinalEmprego02, root, false ) -- Blip Visivel Apenas Para Jogadores Trabalhando ------------------------------------------------------------------------------------------------------------------------------------------------------------ function HitarMarkerJobEmprego02 ( ThePlayer ) if isPedInVehicle(ThePlayer) then return end outputChatBox("#ffffff[ #001AFFTrabalho De Traficante #ffffff] - #FFFFFFDigite#001AFF/trafico #ffffff- Para pegar as drogas!", ThePlayer, 255, 255, 255, true) end addEventHandler("onMarkerHit", StartEmprego02, HitarMarkerJobEmprego02) ------------------------------------------------------------------------------------------------------------------------------------------------------------ vehEmprego02 = {} function ComecoDeTudoEmprego02 (source) if isElementWithinMarker(source, StartEmprego02) then if isPedInVehicle(source) then return end if vehEmprego02[source] and isElement( vehEmprego02[source] ) then destroyElement ( vehEmprego02[source] ) vehEmprego02[source] = nil end x,y,z = getElementPosition(source) Trabalho = true vehEmprego02[source] = createVehicle(482, 818.57098388672, -2143.6784667969, 35.606742858887) setElementRotation(vehEmprego02[source], 0,0,0) setVehicleLocked(vehEmprego02[source],true) setElementVisibleTo ( BlipFinalEmprego02, source, true ) setElementVisibleTo ( StopEmprego02, source, true ) warpPedIntoVehicle ( source, vehEmprego02[source] ) outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFAgora Você É Um Traficante", source, 255, 255, 255, true) -- Mensagem Apos Pegar O Emprego outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFLeve a Van até o Local Indicado no Mapa", source, 255, 255, 255, true) outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFSe você for pego pela policia será preso! Então tome cuidado.", source, 255, 255, 255, true) -- Mensagem Apos Pegar O Emprego end end addCommandHandler ( "trafico", ComecoDeTudoEmprego02 ) -- Comando Pra Pegar O Emprego ------------------------------------------------------------------------------------------------------------------------------------------------------------ function FimDeTudoEmprego02 (source) if isElementWithinMarker(source, StopEmprego02) then if vehEmprego02[source] and isElement(vehEmprego02[source]) then givePlayerMoney(source,200) -- Dinheiro Apos Finalizar O Emprego setElementVisibleTo ( BlipFinalEmprego02, source, false ) setElementVisibleTo ( StopEmprego02, source, false ) outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFEntrega Finalizada, Você recebeu R$200.",source,0,0,0,true) -- Mensagem Apos Finalizar O Emprego destroyElement (vehEmprego02[source]) end end end addCommandHandler ( "entregar", FimDeTudoEmprego02 ) function AvisoEntregaFimEmprego02 (source) if vehEmprego02[source] and isElement(vehEmprego02[source]) then outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFDigite #001AFF/entregar #FFFFFFPara Concluir o Trabalho",source,0,0,0,true) end end addEventHandler("onMarkerHit",StopEmprego02 ,AvisoEntregaFimEmprego02) ------------------------------------------------------------------------------------------------------------------------------------------------------------ function SaiuDoEmprego02 (source) if (vehEmprego02[source]) and isElement(vehEmprego02[source]) then setElementVisibleTo ( BlipFinalEmprego02, source, false ) setElementVisibleTo ( StopEmprego02, source, false ) destroyElement (vehEmprego02[source]) outputChatBox ("#ffffff[#001AFFTrabalho #ffffff] - #FFFFFFVocê Saiu Da Van E A Droga Foi Presa.", source ,0,0,0,true) -- Perder O Emprego Apos Sair Do Veiculo else end end addEventHandler ( "onVehicleExit", getRootElement(), SaiuDoEmprego02 ) ------------------------------------------------------------------------------------------------------------------------------------------------------------ function MorreuNoEmprego02 ( ammo, attacker, weapon, bodypart ) if isElement(vehEmprego02[source]) then destroyElement (vehEmprego02[source]) setElementVisibleTo ( BlipFinalEmprego02, source, false ) setElementVisibleTo ( StopEmprego02, source, false ) outputChatBox ("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFVoce Morreu e Perdeu o Emprego", source ,0,0,0,true) -- Perder O Emprego Apos Morrer end end addEventHandler ( "onPlayerWasted", getRootElement(), MorreuNoEmprego02 ) ------------------------------------------------------------------------------------------------------------------------------------------------------------ function SaiuDoServerEmprego02 ( quitType ) if isElement(vehEmprego02[source]) then destroyElement (vehEmprego02[source]) -- Destruir Veiculo Apos Jogador Sair Do Servidor No Emprego end end addEventHandler ( "onPlayerQuit", getRootElement(), SaiuDoServerEmprego02 ) ------------------------------------------------------------------------------------------------------------------------------------------------------------ Edited December 31, 2018 by zW1Z4RD Link to comment
brunob22 Posted January 1, 2019 Share Posted January 1, 2019 isso ta muito com cara que não foi voce que fez Link to comment
zW1Z4RD Posted January 1, 2019 Author Share Posted January 1, 2019 42 minutes ago, brunob22 said: isso ta muito com cara que não foi voce que fez Eu que fiz sei fazer o trab so n sei adicionar as coisas que eu sitei Link to comment
Tommy. Posted January 1, 2019 Share Posted January 1, 2019 você quer várias rotas ou uma rota aleatória ? Link to comment
zW1Z4RD Posted January 1, 2019 Author Share Posted January 1, 2019 50 minutes ago, Tommy. said: você quer várias rotas ou uma rota aleatória ? varias rotas Link to comment
Jonas^ Posted January 1, 2019 Share Posted January 1, 2019 (edited) 1. Indente o código e resolva as pequenas coisas desnecessárias que tem no código. Edited January 1, 2019 by OverKILL Link to comment
DNL291 Posted January 2, 2019 Share Posted January 2, 2019 (edited) Eu faria só a marker de entrar no trabalho no lado server, as markers da missão te recomendo deixar no lado client. Eu editei o script e deixei da forma que eu faria, espero que você entenda a lógica do código e aprenda a fazer nesse mesmo padrão (que você pode utilizar para outros tipos trabalhos). Server: local StartEmprego02 = createMarker (775.66833496094, -2138.0109863281, 36.464061737061 -1, "cylinder", 1.2, 0 ,26 ,255, 95) -- Local Onde Pega O Emprego ------------------------------------------------------------------------------------------------------------------------------------------------------------ local LetraTEmprego02 = createBlipAttachedTo ( StartEmprego02, 23 ) -- Letra T setBlipVisibleDistance( LetraTEmprego02 , 700) -- Distancia Letra T "200" = 200 Metros Pra Ficar Visivel ------------------------------------------------------------------------------------------------------------------------------------------------------------ function HitarMarkerJobEmprego02 ( ThePlayer, d ) if getElementType(ThePlayer) == "player" and d and isPedInVehicle(ThePlayer) ~= true then outputChatBox("#ffffff[ #001AFFTrabalho De Traficante #ffffff] - #FFFFFFDigite#001AFF/trafico #ffffff- Para pegar as drogas!", ThePlayer, 255, 255, 255, true) end end addEventHandler("onMarkerHit", StartEmprego02, HitarMarkerJobEmprego02) ------------------------------------------------------------------------------------------------------------------------------------------------------------ local vehEmprego02 = {} function ComecoDeTudoEmprego02 (source) if isElementWithinMarker(source, StartEmprego02) and isPedInVehicle(source) ~= true and getElementDimension(source) == getElementDimension(StartEmprego02) then if vehEmprego02[source] and isElement( vehEmprego02[source] ) then destroyElement ( vehEmprego02[source] ) end local x,y,z = getElementPosition(source) setElementData( source, "Trabalho", "traficante de drogas" ) vehEmprego02[source] = createVehicle(482, 818.57098388672, -2143.6784667969, 35.606742858887) setVehicleLocked(vehEmprego02[source],true) warpPedIntoVehicle ( source, vehEmprego02[source] ) setPlayerWantedLevel( source, 1 ) triggerClientEvent( player, "traficante:onRequestDoAction", player, "create" ) outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFAgora Você É Um Traficante", source, 255, 255, 255, true) -- Mensagem Apos Pegar O Emprego outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFLeve a Van até o Local Indicado no Mapa", source, 255, 255, 255, true) outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFSe você for pego pela policia será preso! Então tome cuidado.", source, 255, 255, 255, true) -- Mensagem Apos Pegar O Emprego local vehOwner = source addEventHandler( "onVehicleExplode", vehEmprego02[source], function() removePlayerFromJob( vehOwner, source, true ) outputChatBox( "#ffffff[ #001AFFTrabalho #ffffff] - O seu veículo explodiu e você perdeu o emprego!", vehOwner, 230, 0, 0 ) end ) end end addCommandHandler ( "trafico", ComecoDeTudoEmprego02 ) -- Comando Pra Pegar O Emprego addEvent( "traficante:onPlayerFinishMission", true ) addEventHandler("traficante:onPlayerFinishMission", root, function() givePlayerMoney(client, 200) outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFEntrega Finalizada, Você recebeu R$200.",client,0,0,0,true) -- Mensagem Apos Finalizar O Emprego removePlayerFromJob( client, vehEmprego02[client] ) end ) ------------------------------------------------------------------------------------------------------------------------------------------------------------ function SaiuDoEmprego02 (player) if (vehEmprego02[player]) and isElement(vehEmprego02[player]) then removePlayerFromJob( player, vehEmprego02[player], true ) outputChatBox ("#ffffff[#001AFFTrabalho #ffffff] - #FFFFFFVocê Saiu Da Van E A Droga Foi Presa.", player ,0,0,0,true) -- Perder O Emprego Apos Sair Do Veiculo end end addEventHandler ( "onVehicleExit", resourceRoot, SaiuDoEmprego02 ) ------------------------------------------------------------------------------------------------------------------------------------------------------------ function MorreuNoEmprego02 ( ammo, attacker, weapon, bodypart ) if isElement(vehEmprego02[source]) then removePlayerFromJob( source, vehEmprego02[source], true ) outputChatBox ("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFVoce Morreu e Perdeu o Emprego", source ,0,0,0,true) -- Perder O Emprego Apos Morrer end end addEventHandler ( "onPlayerWasted", getRootElement(), MorreuNoEmprego02 ) ------------------------------------------------------------------------------------------------------------------------------------------------------------ function SaiuDoServerEmprego02 ( quitType ) if isElement(vehEmprego02[source]) then destroyElement (vehEmprego02[source]) -- Destruir Veiculo Apos Jogador Sair Do Servidor No Emprego end end addEventHandler ( "onPlayerQuit", getRootElement(), SaiuDoServerEmprego02 ) function removePlayerFromJob( player, pVeh, removeFromClient ) if isElement(player) and isElement(pVeh) then setElementData( player, "Trabalho", nil ) destroyElement( pVeh ) if removeFromClient then triggerClientEvent( player, "traficante:onRequestDoAction", player, "destroy" ) end end end local _destroyElement = destroyElement function destroyElement(elem) if isElement(elem) then return _destroyElement(elem) end return false end ------------------------------------------------------------------------------------------------------------------------------------------------------------ Client local traficante_locations = { { 1135.3686523438, -2004.0344238281, 69.0078125 }, { 1130, -2010, 69 } --{ x, y, z }, --{ x, y, z }, --{ x, y, z } } local traficante = {} function onRequestDoActionFunc ( actionstr ) if actionstr == "create" then createLocation( 1 ) elseif actionstr == "destroy" then destroyElement( traficante.StopEmprego02 ) destroyElement( traficante.BlipFinalEmprego02 ) traficante.StopEmprego02, traficante.BlipFinalEmprego02 = nil, nil end end addEvent( "traficante:onRequestDoAction", true ) addEventHandler( "traficante:onRequestDoAction", root, onRequestDoActionFunc ) function FimDeTudoEmprego02 () if traficante.StopEmprego02 and isElementWithinMarker(localPlayer, traficante.StopEmprego02) and getElementData( localPlayer, "trabalho" ) == "traficante de drogas" then if indexID == #traficante_locations then indexID = nil destroyElement( traficante.StopEmprego02 ) destroyElement( traficante.BlipFinalEmprego02 ) traficante.StopEmprego02, traficante.BlipFinalEmprego02 = nil, nil return triggerServerEvent( "traficante:onPlayerFinishMission", localPlayer ) end outputChatBox( "#ffffff[ #001AFFTrabalho #ffffff] - Outra entrega disponível, leve a van até o local", 0,0,0,true ) createLocation( indexID + 1 ) end end addCommandHandler ( "entregar", FimDeTudoEmprego02 ) function AvisoEntregaFimEmprego02 (hitElement, dim) if isPedInVehicle(hitElement) and hitElement == localPlayer and dim and source == traficante.StopEmprego02 then outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFDigite #001AFF/entregar #FFFFFFPara Concluir o Trabalho",0,0,0,true) end end addEventHandler( "onClientMarkerHit", resourceRoot, AvisoEntregaFimEmprego02 ) function createLocation( id ) indexID = tonumber(id) or 1 destroyElement( traficante.StopEmprego02 ) destroyElement( traficante.BlipFinalEmprego02 ) local x,y,z = unpack( markerTruck[indexID] ) traficante.StopEmprego02 = createMarker( x, y, z, "cylinder", 7, 0 ,26 ,255, 95 ) traficante.BlipFinalEmprego02 = createBlipAttachedTo( traficante.StopEmprego02, 0 ) return indexID end local _destroyElement = destroyElement function destroyElement(elem) if isElement(elem) then return _destroyElement(elem) end -- return false end As coordenadas basta você adicionar na tabela traficante_locations. Não testei o código em nenhum momento, então pode haver erros. Edited January 2, 2019 by DNL291 1 Link to comment
miiguelz Posted January 2, 2019 Share Posted January 2, 2019 12 hours ago, DNL291 said: Eu faria só a marker de entrar no trabalho no lado server, as markers da missão te recomendo deixar no lado client. Eu editei o script e deixei da forma que eu faria, espero que você entenda a lógica do código e aprenda a fazer nesse mesmo padrão (que você pode utilizar para outros tipos trabalhos). Server: local StartEmprego02 = createMarker (775.66833496094, -2138.0109863281, 36.464061737061 -1, "cylinder", 1.2, 0 ,26 ,255, 95) -- Local Onde Pega O Emprego ------------------------------------------------------------------------------------------------------------------------------------------------------------ local LetraTEmprego02 = createBlipAttachedTo ( StartEmprego02, 23 ) -- Letra T setBlipVisibleDistance( LetraTEmprego02 , 700) -- Distancia Letra T "200" = 200 Metros Pra Ficar Visivel ------------------------------------------------------------------------------------------------------------------------------------------------------------ function HitarMarkerJobEmprego02 ( ThePlayer, d ) if getElementType(ThePlayer) == "player" and d and isPedInVehicle(ThePlayer) ~= true then outputChatBox("#ffffff[ #001AFFTrabalho De Traficante #ffffff] - #FFFFFFDigite#001AFF/trafico #ffffff- Para pegar as drogas!", ThePlayer, 255, 255, 255, true) end end addEventHandler("onMarkerHit", StartEmprego02, HitarMarkerJobEmprego02) ------------------------------------------------------------------------------------------------------------------------------------------------------------ local vehEmprego02 = {} function ComecoDeTudoEmprego02 (source) if isElementWithinMarker(source, StartEmprego02) and isPedInVehicle(source) ~= true and getElementDimension(source) == getElementDimension(StartEmprego02) then if vehEmprego02[source] and isElement( vehEmprego02[source] ) then destroyElement ( vehEmprego02[source] ) end local x,y,z = getElementPosition(source) setElementData( source, "Trabalho", "traficante de drogas" ) vehEmprego02[source] = createVehicle(482, 818.57098388672, -2143.6784667969, 35.606742858887) setVehicleLocked(vehEmprego02[source],true) warpPedIntoVehicle ( source, vehEmprego02[source] ) setPlayerWantedLevel( source, 1 ) triggerClientEvent( player, "traficante:onRequestDoAction", player, "create" ) outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFAgora Você É Um Traficante", source, 255, 255, 255, true) -- Mensagem Apos Pegar O Emprego outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFLeve a Van até o Local Indicado no Mapa", source, 255, 255, 255, true) outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFSe você for pego pela policia será preso! Então tome cuidado.", source, 255, 255, 255, true) -- Mensagem Apos Pegar O Emprego local vehOwner = source addEventHandler( "onVehicleExplode", vehEmprego02[source], function() removePlayerFromJob( vehOwner, source, true ) outputChatBox( "#ffffff[ #001AFFTrabalho #ffffff] - O seu veículo explodiu e você perdeu o emprego!", vehOwner, 230, 0, 0 ) end ) end end addCommandHandler ( "trafico", ComecoDeTudoEmprego02 ) -- Comando Pra Pegar O Emprego addEvent( "traficante:onPlayerFinishMission", true ) addEventHandler("traficante:onPlayerFinishMission", root, function() givePlayerMoney(client, 200) outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFEntrega Finalizada, Você recebeu R$200.",client,0,0,0,true) -- Mensagem Apos Finalizar O Emprego removePlayerFromJob( client, vehEmprego02[client] ) end ) ------------------------------------------------------------------------------------------------------------------------------------------------------------ function SaiuDoEmprego02 (player) if (vehEmprego02[player]) and isElement(vehEmprego02[player]) then removePlayerFromJob( player, vehEmprego02[player], true ) outputChatBox ("#ffffff[#001AFFTrabalho #ffffff] - #FFFFFFVocê Saiu Da Van E A Droga Foi Presa.", player ,0,0,0,true) -- Perder O Emprego Apos Sair Do Veiculo end end addEventHandler ( "onVehicleExit", resourceRoot, SaiuDoEmprego02 ) ------------------------------------------------------------------------------------------------------------------------------------------------------------ function MorreuNoEmprego02 ( ammo, attacker, weapon, bodypart ) if isElement(vehEmprego02[source]) then removePlayerFromJob( source, vehEmprego02[source], true ) outputChatBox ("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFVoce Morreu e Perdeu o Emprego", source ,0,0,0,true) -- Perder O Emprego Apos Morrer end end addEventHandler ( "onPlayerWasted", getRootElement(), MorreuNoEmprego02 ) ------------------------------------------------------------------------------------------------------------------------------------------------------------ function SaiuDoServerEmprego02 ( quitType ) if isElement(vehEmprego02[source]) then destroyElement (vehEmprego02[source]) -- Destruir Veiculo Apos Jogador Sair Do Servidor No Emprego end end addEventHandler ( "onPlayerQuit", getRootElement(), SaiuDoServerEmprego02 ) function removePlayerFromJob( player, pVeh, removeFromClient ) if isElement(player) and isElement(pVeh) then setElementData( player, "Trabalho", nil ) destroyElement( pVeh ) if removeFromClient then triggerClientEvent( player, "traficante:onRequestDoAction", player, "destroy" ) end end end local _destroyElement = destroyElement function destroyElement(elem) if isElement(elem) then return _destroyElement(elem) end return false end ------------------------------------------------------------------------------------------------------------------------------------------------------------ Client local traficante_locations = { { 1135.3686523438, -2004.0344238281, 69.0078125 }, { 1130, -2010, 69 } --{ x, y, z }, --{ x, y, z }, --{ x, y, z }}local traficante = {}function onRequestDoActionFunc ( actionstr ) if actionstr == "create" then createLocation( 1 ) elseif actionstr == "destroy" then destroyElement( traficante.StopEmprego02 ) destroyElement( traficante.BlipFinalEmprego02 ) traficante.StopEmprego02, traficante.BlipFinalEmprego02 = nil, nil endendaddEvent( "traficante:onRequestDoAction", true )addEventHandler( "traficante:onRequestDoAction", root, onRequestDoActionFunc )function FimDeTudoEmprego02 () if traficante.StopEmprego02 and isElementWithinMarker(localPlayer, traficante.StopEmprego02) and getElementData( localPlayer, "trabalho" ) == "traficante de drogas" then if indexID == #traficante_locations then indexID = nil destroyElement( traficante.StopEmprego02 ) destroyElement( traficante.BlipFinalEmprego02 ) traficante.StopEmprego02, traficante.BlipFinalEmprego02 = nil, nil return triggerServerEvent( "traficante:onPlayerFinishMission", localPlayer ) end outputChatBox( "#ffffff[ #001AFFTrabalho #ffffff] - Outra entrega disponível, leve a van até o local", 0,0,0,true ) createLocation( indexID + 1 ) endendaddCommandHandler ( "entregar", FimDeTudoEmprego02 )function AvisoEntregaFimEmprego02 (hitElement, dim) if isPedInVehicle(hitElement) and hitElement == localPlayer and dim and source == traficante.StopEmprego02 then outputChatBox("#ffffff[ #001AFFTrabalho #ffffff] - #FFFFFFDigite #001AFF/entregar #FFFFFFPara Concluir o Trabalho",0,0,0,true) endendaddEventHandler( "onClientMarkerHit", resourceRoot, AvisoEntregaFimEmprego02 )function createLocation( id ) indexID = tonumber(id) or 1 destroyElement( traficante.StopEmprego02 ) destroyElement( traficante.BlipFinalEmprego02 ) local x,y,z = unpack( markerTruck[indexID] ) traficante.StopEmprego02 = createMarker( x, y, z, "cylinder", 7, 0 ,26 ,255, 95 ) traficante.BlipFinalEmprego02 = createBlipAttachedTo( traficante.StopEmprego02, 0 ) return indexIDendlocal _destroyElement = destroyElementfunction destroyElement(elem) if isElement(elem) then return _destroyElement(elem) end -- return falseend As coordenadas basta você adicionar na tabela traficante_locations. Não testei o código em nenhum momento, então pode haver erros. Eu comentei com o @OverKILL para ele coloca uma parte do código em client-side e outra parte em server-side. Link to comment
Jonas^ Posted January 2, 2019 Share Posted January 2, 2019 Desta forma que foi feito, acho que não tem como dividir o script em 2 lados. A mais viável então seria desta forma. Link to comment
DNL291 Posted January 3, 2019 Share Posted January 3, 2019 Eu acho que essa função setElementVisibleTo acaba complicando ainda mais pra fazer o script, principalmente quem tem um nível iniciante em script. Vai ser uma só função que vai exigir o uso vários vezes: quando o jogador entrar no trabalho, quando sair e quando o elemento for criado. Quando cria um elemento, pegando este código como exemplo: StopEmprego02 = createMarker (1135.3686523438, -2004.0344238281, 69.0078125 , "cylinder", 7, 0 ,26 ,255, 95) -- Local Onde Finaliza O Emprego setElementVisibleTo ( StopEmprego02, root, false ) Isso é uma maneira errada de fazer isso e o elemento poderá ser visto por uma fração de tempo no radar (cerca de 50 ms. Se for um blip por exemplo). Qual seria a forma mais eficiente de fazer isso então? R: Usando resourceRoot em vez de root. Outra coisa a se prestar atenção, é o último argumento. Em createMarker e createBlip tem o argumento visibleTo que é o último: createMarker ( float x, float y, float z [, string theType = "checkpoint", float size = 4.0, int r = 0, int g = 0, int b = 255, int a = 255, visibleTo = getRootElement( ) ] ) Então basta utilizar ele quando se cria o elemento. Então resumindo, a forma correta de criar o blip/marker e ocultá-lo: StopEmprego02 = createMarker (1135.3686523438, -2004.0344238281, 69.0078125 , "cylinder", 7, 0 ,26 ,255, 95, resourceRoot) -- Local Onde Finaliza O Emprego Nesse caso não será visto por ninguém já que nenhum jogador é um filho de resourceRoot. Leia: https://wiki.multitheftauto.com/wiki/Visibility 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