Moonshadow 9 Postado Agosto 27, 2012 Share Postado Agosto 27, 2012 (editado) Nome: Soul Gain Função: Toda vez que o player dá use em um vampire lord token (), ele ganha 10 de soul. - soulGain.lua function onUse(cid, item) if getPlayerPromotionLevel(cid) < 5 then if getPlayerSoul(cid)==100 then doPlayerSendCancel(cid, "Seu soul já está no máximo.") return true end if getPlayerSoul(cid) < 90 then doPlayerAddSoul(cid, 10) doSendMagicEffect(getCreaturePosition(cid), 17) doPlayerRemoveItem(cid, 9020, 1) else local taxa = 100 - getPlayerSoul(cid) doPlayerAddSoul(cid, taxa) doSendMagicEffect(getCreaturePosition(cid), 17) doPlayerRemoveItem(cid, 9020, 1) end end if getPlayerPromotionLevel(cid) > 4 then if getPlayerSoul(cid)==200 then doPlayerSendCancel(cid, "Seu soul já está no máximo.") return true end if getPlayerSoul(cid) < 190 then doPlayerAddSoul(cid, 10) doSendMagicEffect(getCreaturePosition(cid), 17) doPlayerRemoveItem(cid, 9020, 1) else taxa = (getPlayerSoul(cid) - 200) * (-1) doPlayerAddSoul(cid, taxa) doSendMagicEffect(getCreaturePosition(cid), 17) doPlayerRemoveItem(cid, 9020, 1) end end end - No actions.xml coloque: <action itemid="9020" event="script" value="soulGain.lua"/>> Editado Agosto 30, 2012 por Moonshadow Link para o comentário Compartilhar em outros sites More sharing options...
brun123 369 Postado Agosto 29, 2012 Share Postado Agosto 29, 2012 Só um detalhezinho, quando você declarou as variáveis "taxa", você usou "getPlayerSoul(cid) - 100", mas o correto seria "100 - getPlayerSoul(cid)". Do jeito que você fez, o valor de "taxa" vai ficar negativo e em vez de adicionar soul ao player, vai remover. Por uma questão de estética, eu não usaria a função doPlayerRemoveItem, mas sim doRemoveItem(item.uid, 1). E não precisava repetir as mesmas duas funções dentro de 4 ifs, a doSendMagicEffect e a doPlayerRemoveItem, bastava colocar elas 1x no final do script. Bom script de toda forma Link para o comentário Compartilhar em outros sites More sharing options...
Vodkart 1513 Postado Agosto 29, 2012 Share Postado Agosto 29, 2012 Até que o script não ficou tão ruim vendo que você está iniciando agora, outra coisa, e você que faz as imagens? ficam bem boas! parabéns amigo, rep+ Link para o comentário Compartilhar em outros sites More sharing options...
caotic 393 Postado Agosto 29, 2012 Share Postado Agosto 29, 2012 O codigo pelo que eu vi e funcional. Alem de que você iniciante e um otimo scripts Link para o comentário Compartilhar em outros sites More sharing options...
Moonshadow 9 Postado Agosto 30, 2012 Autor Share Postado Agosto 30, 2012 (editado) Só um detalhezinho, quando você declarou as variáveis "taxa", você usou "getPlayerSoul(cid) - 100", mas o correto seria "100 - getPlayerSoul(cid)". Do jeito que você fez, o valor de "taxa" vai ficar negativo e em vez de adicionar soul ao player, vai remover. Por uma questão de estética, eu não usaria a função doPlayerRemoveItem, mas sim doRemoveItem(item.uid, 1). E não precisava repetir as mesmas duas funções dentro de 4 ifs, a doSendMagicEffect e a doPlayerRemoveItem, bastava colocar elas 1x no final do script. Bom script de toda forma Opa, valeu pelas dicas. Valeu pelos comentários. @Vodkart Opa, sou eu que as faço sim, valeu. Editado Agosto 30, 2012 por Moonshadow Link para o comentário Compartilhar em outros sites More sharing options...
groku 13 Postado Setembro 15, 2012 Share Postado Setembro 15, 2012 (editado) Valeu precisava desse sistema pra meu ot de bomberman '-' õ/ Assim vou poder botar NPC que vai vender recarga extra de bomba pra o nego caçar por mais tempo (sim meu system de bombas gasta soul e.e) Editado Setembro 15, 2012 por groku Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados