Postado Fevereiro 15, 2017 8 anos ola eu tenho este script mais nao consigo edita-lo.. ele junta 2 itens para formar 1.. eu quero alterar esta parte.. ["fire sword"] = {t1=2230, quero adicionar quantidade nele tipo 100.. e porem esta parte ta dizendo que vai remover somente 1 doRemoveItem(q1.uid, 1) doRemoveItem(q2.uid, 1) oque posso fazer pra ele remover 100 configurável pela primeira parte ali?? <action uniqueid="16451" event="script" value="forjar/forjarespadas.lua"/> function onUse(cid, item, item2, frompos, topos, pos) local config = { ["fire sword"] = {t1=2230,t2=2409,t3=2392}, -- t1 = ID do ITEM 1 |---| t2 = ID do ITEM 2 |---| t3 = ID do ITEM a ser FORJADO -- ["fire axe"] = {t1=2489,t2=2487,t3=2432}, } local r1 = {x = 79, y = 402, z = 6, stackpos= 2} -- Posição 1 ( NÃO MEXA NO stackpos= 2 ) local r2 = {x = 81, y = 402, z = 6, stackpos= 2} -- Posição 2 ( NÃO MEXA NO stackpos= 2 ) local r3 = {x = 80, y = 402, z = 6} -- Posição do Item a Ser Criado local q1 = getThingfromPos(r1) local q2 = getThingfromPos(r2) for i, x in pairs(config) do if (q1.itemid == x.t1 and q2.itemid == x.t2) or (q1.itemid == x.t2 and q2.itemid == x.t1) then addEvent(doCreateItem, 1000, x.t3, 1, r3) doRemoveItem(q1.uid, 1) doRemoveItem(q2.uid, 1) doSendMagicEffect(r3, 47) addEvent(doSendMagicEffect, 900, r3, 39) doPlayerSendTextMessage(cid, 22, "Parabéns, Você Forjou Um " .. i .. ".") break end end return TRUE end eu consigui editar com ajuda de um menbro.. porem se vc inverte os itens de lugar ele nao faz nada.. teria como colocar um texto informando.. " altere a posição dos itens.. ou " voce nao tem todos os itens necessarios.. function onUse(cid, item, item2, frompos, topos, pos) local config = { ["fire sword"] = {t1 = 2230, t2 = 2409, t3 = 2392, qnt1 = 100, qnt2 = 1}, -- t1 = ID do ITEM 1 |---| t2 = ID do ITEM 2 |---| t3 = ID do ITEM a ser FORJADO -- ["fire axe"] = {t1 = 2489, t2 = 2487, t3= 2432, qnt1 = 100, qnt2 = 1}, } local r1 = {x = 79, y = 402, z = 6, stackpos= 2} -- Posição 1 ( NÃO MEXA NO stackpos= 2 ) local r2 = {x = 81, y = 402, z = 6, stackpos= 2} -- Posição 2 ( NÃO MEXA NO stackpos= 2 ) local r3 = {x = 80, y = 402, z = 6} -- Posição do Item a Ser Criado local q1 = getThingfromPos(r1) local q2 = getThingfromPos(r2) for i, x in pairs(config) do if q1.itemid == x.t1 and q2.itemid == x.t2 then if q1.type >= x.qnt1 and q1.type >= x.qnt2 then doRemoveItem(q1.uid, x.qnt1) doRemoveItem(q2.uid, x.qnt2) addEvent(doCreateItem, 1000, x.t3, 1, r3) doSendMagicEffect(r3, 47) addEvent(doSendMagicEffect, 900, r3, 39) doPlayerSendTextMessage(cid, 22, "Parabéns, Você Forjou Um " .. i .. ".") break end elseif q1.itemid == x.t2 and q2.itemid == x.t1 then if q1.type >= x.qnt2 and q1.type >= x.qnt1 then doRemoveItem(q1.uid, x.qnt1) doRemoveItem(q2.uid, x.qnt2) addEvent(doCreateItem, 1000, x.t3, 1, r3) doSendMagicEffect(r3, 47) addEvent(doSendMagicEffect, 900, r3, 39) doPlayerSendTextMessage(cid, 22, "Parabéns, Você Forjou Um " .. i .. ".") break end end end return TRUE end
Postado Fevereiro 15, 2017 8 anos Tente assim: function onUse(cid, item, item2, frompos, topos, pos) local config = { ["fire sword"] = {t1=2230,t2=2409,t3=2392}, -- t1 = ID do ITEM 1 |---| t2 = ID do ITEM 2 |---| t3 = ID do ITEM a ser FORJADO -- ["fire axe"] = {t1=2489,t2=2487,t3=2432}, } local quantidade = {100} local r1 = {x = 79, y = 402, z = 6, stackpos= 2} -- Posição 1 ( NÃO MEXA NO stackpos= 2 ) local r2 = {x = 81, y = 402, z = 6, stackpos= 2} -- Posição 2 ( NÃO MEXA NO stackpos= 2 ) local r3 = {x = 80, y = 402, z = 6} -- Posição do Item a Ser Criado local q1 = getThingfromPos(r1) local q2 = getThingfromPos(r2) for i, x in pairs(config) do if (q1.itemid == x.t1 and q2.itemid == x.t2) or (q1.itemid == x.t2 and q2.itemid == x.t1) then addEvent(doCreateItem, 1000, x.t3, 1, r3) doRemoveItem(q1.uid, quantidade) doRemoveItem(q2.uid, quantidade) doSendMagicEffect(r3, 47) addEvent(doSendMagicEffect, 900, r3, 39) doPlayerSendTextMessage(cid, 22, "Parabéns, Você Forjou Um " .. i .. ".") break end end return TRUE end
Postado Fevereiro 16, 2017 8 anos Autor @EddyHavoc oi, este local quantidade = {100} que voce colocou é para que item ? @EddyHavoc amigo eu fiz assim Só que o sistema ta removendo somente o item T2 eu troco ele de posição e ele só remove o T2 function onUse(cid, item, item2, frompos, topos, pos) local config = { ["fire sword"] = {t1 = 2230, t2 = 2409, t3 = 2392, qnt1 = 100, qnt2 = 1}, -- t1 = ID do ITEM 1 |---| t2 = ID do ITEM 2 |---| t3 = ID do ITEM a ser FORJADO -- ["fire axe"] = {t1 = 2489, t2 = 2487, t3= 2432, qnt1 = 100, qnt2 = 1}, } local r1 = {x = 79, y = 402, z = 6, stackpos= 2} -- Posição 1 ( NÃO MEXA NO stackpos= 2 ) local r2 = {x = 81, y = 402, z = 6, stackpos= 2} -- Posição 2 ( NÃO MEXA NO stackpos= 2 ) local r3 = {x = 80, y = 402, z = 6} -- Posição do Item a Ser Criado local q1 = getThingfromPos(r1) local q2 = getThingfromPos(r2) for i, x in pairs(config) do if (q1.itemid == x.t1 and q2.itemid == x.t2) or (q1.itemid == x.t2 and q2.itemid == x.t1) then addEvent(doCreateItem, 1000, x.t3, 1, r3) doRemoveItem(q1.uid, x.qnt1) doRemoveItem(q2.uid, x.qnt2) doSendMagicEffect(r3, 47) addEvent(doSendMagicEffect, 900, r3, 39) doPlayerSendTextMessage(cid, 22, "Parabéns, Voce Forjou Um " .. i .. ".") break end end return TRUE end @EddyHavoc Depois de tenta muito consegui fazer desta forma amigoo... function onUse(cid, item, item2, frompos, topos, pos) local config = { ["fire sword"] = {t1 = 2230, t2 = 2409, t3 = 2392, qnt1 = 100, qnt2 = 1}, -- t1 = ID do ITEM 1 |---| t2 = ID do ITEM 2 |---| t3 = ID do ITEM a ser FORJADO -- ["fire axe"] = {t1 = 2489, t2 = 2487, t3= 2432, qnt1 = 100, qnt2 = 1}, } local r1 = {x = 79, y = 402, z = 6, stackpos= 2} -- Posição 1 ( NÃO MEXA NO stackpos= 2 ) local r2 = {x = 81, y = 402, z = 6, stackpos= 2} -- Posição 2 ( NÃO MEXA NO stackpos= 2 ) local r3 = {x = 80, y = 402, z = 6} -- Posição do Item a Ser Criado local q1 = getThingfromPos(r1) local q2 = getThingfromPos(r2) for i, x in pairs(config) do if q1.itemid == x.t1 and q2.itemid == x.t2 then doRemoveItem(q1.uid, x.qnt1) doRemoveItem(q2.uid, x.qnt2) addEvent(doCreateItem, 1000, x.t3, 1, r3) doSendMagicEffect(r3, 47) addEvent(doSendMagicEffect, 900, r3, 39) doPlayerSendTextMessage(cid, 22, "Parabéns, Você Forjou Um " .. i .. ".") break elseif q1.itemid == x.t2 and q2.itemid == x.t1 then doRemoveItem(q1.uid, x.qnt2) doRemoveItem(q2.uid, x.qnt1) addEvent(doCreateItem, 1000, x.t3, 1, r3) doSendMagicEffect(r3, 47) addEvent(doSendMagicEffect, 900, r3, 39) doPlayerSendTextMessage(cid, 22, "Parabéns, Você Forjou Um " .. i .. ".") break end end return TRUE end
Postado Fevereiro 16, 2017 8 anos @robi123 O sistema anterior ele está removendo a mesma quantidade para os dois itens, testa da seguinte forma e me fala o resultado. function onUse(cid, item, item2, frompos, topos, pos) local config = { ["fire sword"] = {t1=2230,qnt1=100,t2=2409,qnt2=100,t3=2392}, -- t1 = ID do ITEM 1 |---| t2 = ID do ITEM 2 |---| t3 = ID do ITEM a ser FORJADO -- ["fire axe"] = {t1=2489,qnt1=100,t2=2487,qnt2=100,t3=2432}, -- qnt1 = QUANTIDADE a ser retirada do ITEM 1 | --- | qnt2 = QUANTIDADE a ser retirada do ITEM 2 -- } local r1 = {x = 79, y = 402, z = 6, stackpos= 2} -- Posição 1 ( NÃO MEXA NO stackpos= 2 ) local r2 = {x = 81, y = 402, z = 6, stackpos= 2} -- Posição 2 ( NÃO MEXA NO stackpos= 2 ) local r3 = {x = 80, y = 402, z = 6} -- Posição do Item a Ser Criado local q1 = getThingfromPos(r1) local q2 = getThingfromPos(r2) for i, x in pairs(config) do if (q1.itemid == x.t1 and q2.itemid == x.t2) then addEvent(doCreateItem, 1000, x.t3, 1, r3) doRemoveItem(q1.uid, x.qnt1) doRemoveItem(q2.uid, x.qnt2) doSendMagicEffect(r3, 47) addEvent(doSendMagicEffect, 900, r3, 39) doPlayerSendTextMessage(cid, 22, "Parabéns, Você Forjou Um " .. i .. ".") else doPlayerSendTextMessage(cid, 22, "A posição do item " .. q1.itemid .. " e do item " ..q2.itemid.." está invertida.") break end end return TRUE end Alterei o código obrigando o jogador colocar em uma determinada ordem.
Postado Fevereiro 16, 2017 8 anos Autor Eu fiz esta alteração agora ele aceitou mesmo o item estando em lugar diferente :D vlw ai @EddyHavoc function onUse(cid, item, item2, frompos, topos, pos) local config = { ["fire sword"] = {t1 = 2230, t2 = 2409, t3 = 2392, qnt1 = 100, qnt2 = 1}, -- t1 = ID do ITEM 1 |---| t2 = ID do ITEM 2 |---| t3 = ID do ITEM a ser FORJADO -- ["fire axe"] = {t1 = 2489, t2 = 2487, t3= 2432, qnt1 = 100, qnt2 = 1}, } local r1 = {x = 79, y = 402, z = 6, stackpos= 2} -- Posição 1 ( NÃO MEXA NO stackpos= 2 ) local r2 = {x = 81, y = 402, z = 6, stackpos= 2} -- Posição 2 ( NÃO MEXA NO stackpos= 2 ) local r3 = {x = 80, y = 402, z = 6} -- Posição do Item a Ser Criado local q1 = getThingfromPos(r1) local q2 = getThingfromPos(r2) for i, x in pairs(config) do if q1.itemid == x.t1 and q2.itemid == x.t2 then doRemoveItem(q1.uid, x.qnt1) doRemoveItem(q2.uid, x.qnt2) addEvent(doCreateItem, 1000, x.t3, 1, r3) doSendMagicEffect(r3, 47) addEvent(doSendMagicEffect, 900, r3, 39) doPlayerSendTextMessage(cid, 22, "Parabéns, Você Forjou Um " .. i .. ".") break elseif q1.itemid == x.t2 and q2.itemid == x.t1 then doRemoveItem(q1.uid, x.qnt2) doRemoveItem(q2.uid, x.qnt1) addEvent(doCreateItem, 1000, x.t3, 1, r3) doSendMagicEffect(r3, 47) addEvent(doSendMagicEffect, 900, r3, 39) doPlayerSendTextMessage(cid, 22, "Parabéns, Você Forjou Um " .. i .. ".") break end end return TRUE end Editado Fevereiro 16, 2017 8 anos por robi123 (veja o histórico de edições)
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.