wesssley Posted February 27, 2023 Share Posted February 27, 2023 Como faço para abrir uma tabela para markers? para não ficar tendo que copiar e colocar o mesmo script várias vezes? Tenho o seguinte código: pegarT = createMarker(-2409.32764, -600.28540, 132.64844 -1, "cylinder", 1.1,255,255,255,50) -- Marker Policial createPickup(-2409.32764, -600.28540, 132.64844 , 3, 1247, 1) ------------------------------------------ function salariopm(player) -- Policial if isElementWithinMarker(player, pegarT) then if isObjectInACLGroup ( "user." ..getAccountName(getPlayerAccount(player)), aclGetGroup ( Grupo1 )) then if getElementData(player, "TrabalhoPolicial") then setElementData(player, "TrabalhoPolicial", false) outputChatBox("Você #ff0000saiu #009affde serviço!", player, 0, 154, 255, true) setElementModel(player, 0) else setElementData(player, "TrabalhoPolicial", true) outputChatBox("Você #006effentrou #009affem serviço, bom trabalho!", player, 0, 154, 255, true) setElementModel(player, 283) end else outputChatBox("Você não tem permissão para isso.", source, 255,0,0, true) end end end addCommandHandler("trabalhar", salariopm) -------------------------------------------- MENSAGEM MARKER POLICIAL addEventHandler("onMarkerHit", pegarT, function(player) if getElementType(player) == "player" then outputChatBox(" ", player, 255,255,255, true) outputChatBox("Para começar a trabalhar, digite #ffff00/trabalhar ", player, 255,255,255, true) outputChatBox(" ", player, 255,255,255, true) end end) Atualmente oque estou fazendo é copiando e colando, mudando o nome da função e do marker, queria saber como faço para colocar uma tabela com os markers, para não ter que tá fazendo isso e deixando o código longo. Link to comment
FelipeX Posted February 28, 2023 Share Posted February 28, 2023 On 27/02/2023 at 13:17, wesssley said: Como faço para abrir uma tabela para markers? para não ficar tendo que copiar e colocar o mesmo script várias vezes? Tenho o seguinte código: pegarT = createMarker(-2409.32764, -600.28540, 132.64844 -1, "cylinder", 1.1,255,255,255,50) -- Marker Policial createPickup(-2409.32764, -600.28540, 132.64844 , 3, 1247, 1) ------------------------------------------ function salariopm(player) -- Policial if isElementWithinMarker(player, pegarT) then if isObjectInACLGroup ( "user." ..getAccountName(getPlayerAccount(player)), aclGetGroup ( Grupo1 )) then if getElementData(player, "TrabalhoPolicial") then setElementData(player, "TrabalhoPolicial", false) outputChatBox("Você #ff0000saiu #009affde serviço!", player, 0, 154, 255, true) setElementModel(player, 0) else setElementData(player, "TrabalhoPolicial", true) outputChatBox("Você #006effentrou #009affem serviço, bom trabalho!", player, 0, 154, 255, true) setElementModel(player, 283) end else outputChatBox("Você não tem permissão para isso.", source, 255,0,0, true) end end end addCommandHandler("trabalhar", salariopm) -------------------------------------------- MENSAGEM MARKER POLICIAL addEventHandler("onMarkerHit", pegarT, function(player) if getElementType(player) == "player" then outputChatBox(" ", player, 255,255,255, true) outputChatBox("Para começar a trabalhar, digite #ffff00/trabalhar ", player, 255,255,255, true) outputChatBox(" ", player, 255,255,255, true) end end) Atualmente oque estou fazendo é copiando e colando, mudando o nome da função e do marker, queria saber como faço para colocar uma tabela com os markers, para não ter que tá fazendo isso e deixando o código longo. local markers = { -- X, y, z, se true cria o blip, se false não. {1212.459, -1312.881, 13.556, true}, } addEventHandler ("onResourceStart", resourceRoot, function() for _,pos in ipairs(markers) do local marker = createMarker(pos[1], pos[2], pos[3] -1, 'cylinder', 1.2, 255, 255, 255, 255) -- Tamanho/cor do marker pode alterar. addEventHandler ("onMarkerHit", marker, FuncTeste) -- Adiciona o evento ao marker. if pos[4] == true then local blip = createBlipAttachedTo(marker, 56) -- Cria o blip em cima do marker. setBlipVisibleDistance(blip, 500) -- Distancia que é visto o blip no radar. end end end) local FuncTeste = function() if getElementType(source) == "player" then outputChatBox(" ", source, 255,255,255, true) outputChatBox("Para começar a trabalhar, digite #ffff00/trabalhar ", source, 255,255,255, true) outputChatBox(" ", source, 255,255,255, true) end end Assim cria os markers e adiciona uma função a ele, testa certin para ver se funciona, pois não testei. Link to comment
Blaack Posted March 1, 2023 Share Posted March 1, 2023 4 hours ago, FelipeX said: local markers = { -- X, y, z, se true cria o blip, se false não. {1212.459, -1312.881, 13.556, true}, } addEventHandler ("onResourceStart", resourceRoot, function() for _,pos in ipairs(markers) do local marker = createMarker(pos[1], pos[2], pos[3] -1, 'cylinder', 1.2, 255, 255, 255, 255) -- Tamanho/cor do marker pode alterar. addEventHandler ("onMarkerHit", marker, FuncTeste) -- Adiciona o evento ao marker. if pos[4] == true then local blip = createBlipAttachedTo(marker, 56) -- Cria o blip em cima do marker. setBlipVisibleDistance(blip, 500) -- Distancia que é visto o blip no radar. end end end) local FuncTeste = function() if getElementType(source) == "player" then outputChatBox(" ", source, 255,255,255, true) outputChatBox("Para começar a trabalhar, digite #ffff00/trabalhar ", source, 255,255,255, true) outputChatBox(" ", source, 255,255,255, true) end end Assim cria os markers e adiciona uma função a ele, testa certin para ver se funciona, pois não testei. Isso não funcionaria, pois 'source' em 'onMarkerHit' é o elemento marker. 1 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