Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 21/08/23 in all areas

  1. Hello, thanks for trying to help, but i fixed this. The problem was because i was using MySQL version instead of MariaDB. Thank you for trying to help.
    1 point
  2. Modify a model's 2dfx
    1 point
  3. Não há de que, amigo. Vamos tentar adicionar mais uma função para simular a alternância de 1 a 4 itens. -- Função para adicionar de 1 a 4 itens da lista lootItems ao airdrop function addRandomItemsToAirdrop(avialColq) for i = 1, math.random(1, 4) do local item = lootItems[math.random(#lootItems)] local value = math.percentChance(item[2], 1) if value >= 1 then setElementData(avialColq, item[1], value) local ammoData, weapID = getWeaponAmmoType(item[1], true) if ammoData then local minBullets, maxBullets = math.floor(getAmmoPlus(ammoData) / 3), getAmmoPlus(ammoData) * 2 local ammoQuantity = math.random(minBullets, maxBullets) setElementData(avialColq, ammoData, ammoQuantity) end end end end function spawnAirdrop(player) -- Verifica se o jogador não é um administrador if isElement(player) and not isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)), aclGetGroup("Admin")) then return end -- Limpa objetos e timers antigos if isElement(productq) then destroyElement(productq) end if isElement(avialColq) then destroyElement(avialColq) end if isElement(blipq) then destroyElement(blipq) end if isElement(variavel) then destroyElement(variavel) end if isTimer(respawnAirdropTimer) then killTimer(respawnAirdropTimer) end -- Define um novo timer para respawn do airdrop respawnAirdropTimer = setTimer(spawnAirdrop, 120000, 1) -- Escolhe aleatoriamente uma localização para o airdrop local item_id = math.random(1, #spawnLocations) xq, yq, zq = spawnLocations[item_id][1], spawnLocations[item_id][2], spawnLocations[item_id][3] + 0.35 xpsq, ypsq, zpsq = xq, yq, zq + 7 xpvq, ypvq, zpvq = xq - 48, yq - 16, zq + 37 xsbq, ysbq, zsbq = xq - 48, yq - 16, zq + 41 xssq, yssq, zssq = xq - 528, yq + 2, zq + 141 xsdq, ysdq, zsdq = xq + 528, yq + 2, zq + 141 -- Cria um blip para o airdrop blipq = createBlip(xq, yq, zq, 5) -- Criação do avião e movimentação aviaNavaq = createObject(1683, xssq, yssq, zssq, 0, 0, 0) moveObject(aviaNavaq, 8000, xsbq, ysbq, zsbq) -- Criação do paraquedas setTimer(function() parasProdq = createObject(2903, xpvq, ypvq, zpvq, 0, 0, 0) moveObject(aviaNavaq, 8000, xsdq, ysdq, zsdq) moveObject(parasProdq, 15000, xpsq, ypsq, zpsq) triggerClientEvent("playAirdropSound", getRootElement()) outputChatBox("#ff0000[AIRDROP] #ffffffUM PACOTE COM LOOT MILITAR FOI LANÇADO AO CHÃO. SEU MAPA FOI MARCADO COM O LOCAL.", getRootElement(), 255, 255, 255, true) end, 8000, 1) -- Define um timer para destruir o avião setTimer(destroyElement, 16100, 1, aviaNavaq) -- Cria o conteúdo do airdrop setTimer(function() destroyElement(parasProdq) destroyElement(variavel) productq = createObject(2669, xq, yq, zq, 0, 0, 0) variavel = createObject(2060, xq, yq, zq + 1.3, 1, 0, 0) setElementFrozen(productq, true) avialColq = createColSphere(xq, yq, zq, 2) attachElements(avialColq, productq, 0, 0, 0) setElementData(avialColq, "parent", object) setElementData(avialColq, "hospitalbox", true) setElementData(avialColq, "MAX_Slots", 5000) -- Chama a função para adicionar itens aleatórios addRandomItemsToAirdrop(avialColq) end, 23100, 1) end Não tenho mais o jogo instalado mas acredito que funcione. Espero que ajude, abraços!
    1 point
  4. Fala meu brother, como vai você? Que nostalgia me aventurar neste ambiente tão legal de comunicado aqui de novo, após tanto tempo. Vou tentar te ajudar, afinal faz tempo que não sei o que é Lua, viu? Kkkk! Em resposta a sua dúvida, irei responder, levando em conta que você saiba algo sobre lógica de programação. Existem vários objetos (itens) com chave e valor sendo armazenado dentro da nossa variável (lista) lootItems, desta forma, certifique-se de que está lista contenha todos os itens que precisam ser adicionados. Agora, vamos para a função. Comentei em blocos para identar o código e melhorar o entendimento. function spawnAirdrop(player) -- Verifica se o jogador não é um administrador if isElement(player) and not isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)), aclGetGroup("Admin")) then return end -- Limpa objetos e timers antigos if isElement(productq) then destroyElement(productq) end if isElement(avialColq) then destroyElement(avialColq) end if isElement(blipq) then destroyElement(blipq) end if isElement(variavel) then destroyElement(variavel) end if isTimer(respawnAirdropTimer) then killTimer(respawnAirdropTimer) end -- Define um novo timer para respawn do airdrop respawnAirdropTimer = setTimer(spawnAirdrop, 120000, 1) -- Escolhe aleatoriamente uma localização para o airdrop local item_id = math.random(1, #spawnLocations) xq, yq, zq = spawnLocations[item_id][1], spawnLocations[item_id][2], spawnLocations[item_id][3] + 0.35 xpsq, ypsq, zpsq = xq, yq, zq + 7 xpvq, ypvq, zpvq = xq - 48, yq - 16, zq + 37 xsbq, ysbq, zsbq = xq - 48, yq - 16, zq + 41 xssq, yssq, zssq = xq - 528, yq + 2, zq + 141 xsdq, ysdq, zsdq = xq + 528, yq + 2, zq + 141 -- Cria um blip para o airdrop blipq = createBlip(xq, yq, zq, 5) -- Criação do avião e movimentação aviaNavaq = createObject(1683, xssq, yssq, zssq, 0, 0, 0) moveObject(aviaNavaq, 8000, xsbq, ysbq, zsbq) -- Criação do paraquedas setTimer(function() parasProdq = createObject(2903, xpvq, ypvq, zpvq, 0, 0, 0) moveObject(aviaNavaq, 8000, xsdq, ysdq, zsdq) moveObject(parasProdq, 15000, xpsq, ypsq, zpsq) triggerClientEvent("playAirdropSound", getRootElement()) outputChatBox("#ff0000[AIRDROP] #ffffffUM PACOTE COM LOOT MILITAR FOI LANÇADO AO CHÃO. SEU MAPA FOI MARCADO COM O LOCAL.", getRootElement(), 255, 255, 255, true) end, 8000, 1) -- Define um timer para destruir o avião setTimer(destroyElement, 16100, 1, aviaNavaq) -- Cria o conteúdo do airdrop setTimer(function() destroyElement(parasProdq) destroyElement(variavel) productq = createObject(2669, xq, yq, zq, 0, 0, 0) variavel = createObject(2060, xq, yq, zq + 1.3, 1, 0, 0) setElementFrozen(productq, true) avialColq = createColSphere(xq, yq, zq, 2) attachElements(avialColq, productq, 0, 0, 0) setElementData(avialColq, "parent", object) setElementData(avialColq, "hospitalbox", true) setElementData(avialColq, "MAX_Slots", 5000) -- Adiciona de 1 a 4 itens da lista lootItems for i = 1, math.random(1, 4) do local item = lootItems[math.random(1, #lootItems)] local value = math.percentChance(item[2], 1) if value >= 1 then setElementData(avialColq, item[1], value) local ammoData, weapID = getWeaponAmmoType(item[1], true) if ammoData then local minBullets, maxBullets = math.floor(getAmmoPlus(ammoData) / 3), getAmmoPlus(ammoData) * 2 local ammoQuantity = math.random(minBullets, maxBullets) setElementData(avialColq, ammoData, ammoQuantity) end end end end, 23100, 1) end A sua função spawnAirdrop original tinha o objetivo de criar um airdrop com um único item escolhido aleatoriamente da lista lootItems. Para modificar essa função e para que o airdrop contenha de 1 a 4 itens adicionei um loop for i = 1, math.random(1, 4) do Isso cria um loop que escolhe um número aleatório entre 1 e 4, representado por math.random(1, 4), que determinará quantos itens serão adicionados ao airdrop. Espero que tenha funcionado para você e que tenha entendido, no mais, fique a vontade para voltar com qualquer dúvida. Abraços!
    1 point
×
×
  • Create New...