Postado Maio 8, 2017 8 anos BOA NOITE GENTE EU FIZ UMA ACTION function on use item 1 no item 2 e ele esta funcionando perfeitamente mas eu gostaria de adicionar algo nele para que essa função funcione apenas uma vez em cada item algo que faça o item2 já ficar usado mas sem que altere seu id talvez adicionar um atributo no item2 quando usar o item1 nele a primeira vez que faça com que a action seja recusada se tentar usar novamente obg desde ja quero usar o item 1 no item 2 apenas 1x se eu tentar usar dinovo vai dizer que o item ja foi usado Spoiler function onUse(cid, item, frompos, itemEx, topos) if getTopCorpse(topos) == null then return true end if getPlayerStorageValue(cid, 17001) >= 1 or getPlayerStorageValue(cid, 63215) >= 1 or getPlayerStorageValue(cid, 17000) >= 1 or getPlayerStorageValue (cid, 17001) >= 1 or getPlayerStorageValue(cid, 75846) >= 1 or getPlayerStorageValue(cid, 6598754) >= 1 or getPlayerStorageValue(cid, 6598755) >= 1 or getPlayerStorageValue (cid, 98752) >= 1 then --alterado v1.9 return doPlayerSendCancel(cid, "impossivel fazer isso agora.") end if not isCreature(itemEx.uid) then doCreatureSetNoMove(cid, true) local tmp = getCreatureOutfit(cid) if getPlayerSex(cid) == 1 then tmp.lookType = 2501 else tmp.lookType = 2500 end doSetCreatureOutfit(cid, tmp, -1) setPlayerStorageValue(cid, 98752, 1) -------------------------------------------------- function finalizar(cid,toPos) doRemoveCondition(cid, CONDITION_OUTFIT) doCreatureSetNoMove(cid, false) local itemEx = getTopCorpse(topos) local rand = math.random(1, 5) if itemEx then doPlayerAddItem(cid, 15500, rand) end setPlayerStorageValue(cid, 98752, -1) end addEvent(finalizar, 8*1000,cid,toPos) --------------------------------------------- end return true end
Postado Maio 8, 2017 8 anos Uma sugestão seria adicionar uma ActionID pra cada item usado, deixando eles 'marcados' por assim dizer. Tipo assim: Primeiro você checa se o item NÃO TEM actionID: Citar if(itemEx.actionid ~= 2497) then Ai ao usar o Item[1] no Item[2] como você quer, você adiciona a ActionID 2497 no Item[2] para não poder usar nele novamente, assim: Citar doItemSetAttribute(itemEx.uid,'aid', 2497) Fazendo isso, você não poderá mais usar o Item[1] no Item[2] que ficou com a ActionID. Bom, é só uma sugestão. Espero que der certo.
Postado Maio 8, 2017 8 anos Autor 10 horas atrás, Frenesy disse: Uma sugestão seria adicionar uma ActionID pra cada item usado, deixando eles 'marcados' por assim dizer. Tipo assim: Primeiro você checa se o item NÃO TEM actionID: Ai ao usar o Item[1] no Item[2] como você quer, você adiciona a ActionID 2497 no Item[2] para não poder usar nele novamente, assim: Fazendo isso, você não poderá mais usar o Item[1] no Item[2] que ficou com a ActionID. Bom, é só uma sugestão. Espero que der certo. man eu tentei aqui mas n consegui, poderia fazer isso por mim? eu postei o script
Postado Maio 10, 2017 8 anos Eu na verdade ia fazer, só que eu não entendi bem seu script e nem sua finalidade real. Faz assim, posta exatamente o que o script faz que eu tento fazer.
Postado Maio 10, 2017 8 anos Autor Em 2017-5-9 ás 23:35, Frenesy disse: Eu na verdade ia fazer, só que eu não entendi bem seu script e nem sua finalidade real. Faz assim, posta exatamente o que o script faz que eu tento fazer. bom man primeiramente o script esta funcionando 100% e sem erro eu uso um item x em um corpo e a action vai colher algo do corpo tipo a obsidean knife (porem ela muda a autfit por um tempo exibindo uma animação do personagem rancando algo do corpo) o problema é q n posso alterar o id do corpo como é feito no tibia pois os corpo tem outras funções do jeito q esta fica igual uma obsidian knife que você pode usar no mesmo corpo eternamente ate ele sumir quero que adicione algo no script que faça ele impedir de usar essa obsidian knife no mesmo corpo + de 1x Editado Maio 11, 2017 8 anos por wevertonvrb (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.