Ir para conteúdo

Rogex Joyz

Membro
  • Registro em

  • Última visita

Tudo que Rogex Joyz postou

  1. Olá, boa tarde a todos. Alguém poderia me ajudar com um autoloot system? Eu revirei TUDO e testei pelo menos 6 sistemas diferentes disponibilizados aqui e nenhum funcionou totalmente Eu uso TFS 8!! Preciso daqueles simples que o loot vá para a backpack. Agradeço desde já, valendo REP+
  2. Rogex Joyz postou uma resposta no tópico em Códigos C++
    obrigado por disponibilizar o sistema!! Testei no meu ot e funcionou de primeira, está perfeito. Parabéns para o desenvolvedor dele também.
  3. Dodge é um sistema que permite (através de item neste caso) o player ''desviar'' de alguns ataques, ou seja, quantos mais ''dodges itens'' o player tiver usado, maior a chance durante uma batalha de um ataque contra ele ser cancelado. No nosso caso usaremos um sistema que permite usar de 0-50 dodge's. Vamos lá. Passo 1º - Em creaturescript crie um arquivo .lua chamado Dodge System, dentro dele coloque isto: function onStatsChange(cid, attacker, type, combat, value) local getStorage = getPlayerStorageValue(cid, 123455678) if (type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS) then local chance = math.random (0,100) if chance <= getStorage then doSendAnimatedText(getCreaturePos(cid), "MISS!", 214) doSendMagicEffect(getCreaturePosition(cid), 30) return false end end return true end Passo 2º - Em Creaturescript.xml adicione esta linha: <event type="StatsChange" name="DodgeSystem" event="script" value="Dodge System.lua"/> Passo 3º - Em Login.lua, desça até o final da página e procure o último ''return'' (está no final). Após achar ele, acrescente isso ANTES dele. ps: não esqueça de colocar o end. registerCreatureEvent(cid, "DodgeSystem") if getPlayerStorageValue(cid, 123455678) == -1 then setPlayerStorageValue(cid, 123455678, 0) end Passo 4º - Agora vamos até a pasta ''action'' e criamos um arquivo .lua chamado dodgestone, vamos acrescentar isso dentro dele: function onUse(cid, item, fromPosition, itemEx, toPosition) local max = 50 -- limite de dodge local storagedodge = 123455678 -- storage do dodge if getPlayerStorageValue(cid, storagedodge) >= max then return doPlayerSendTextMessage(cid,22,"Você ja chegou no limite de Dodge.") else doPlayerSetStorageValue(cid, storagedodge, (getPlayerStorageValue(cid, storagedodge)) + 1) doPlayerSendTextMessage(cid,22, "DodgeSKILL:["..getPlayerStorageValue(cid, storagedodge).."/"..max.."].") doRemoveItem(item.uid, 1) end return true end Passo 5º - Agora volte um pouco e vá até a pasta action.xml (ela normalmente está de baixo da pasta anterior que utilizamos) e adicione esta tag: ps: Não esqueça de colocar o ID do item que você deseja que vire uma ''dodge''. <action itemid="Id do item" event="script" value="dodgestone.lua"/> Considerações finais: Para mudar a quantidade de dodge's que o player pode usar ao todo, está no passo 4. Coloque esse sistema em um item agrupável, uma vez que o player vai comprar vários O script está funcionando perfeitamente bem, os créditos dele vai inteiramente para o Visconde (Zeh Sergipano). Espero que quebre o galho de vocês assim como quebrou o meu!!
  4. @Heitorzera13 obrigado!! Eu sou novo no fórum mas sei que devo te dar rep+, eu cliquei em um troféu ali.. será que é isso? O tópico já pode ser fechado!!
  5. Estou editando itens (como wands, boots, swords e amuletos) e eu coloquei para eles adicionar skills ao serem equipados, até ai tudo ok. O problema veio quando eu me deparei com a situação em que após o player retirar o item do personagem, os atributos oferecidos pelo item continuavam ativos até que o personagem saisse do jogo. Pesquisei aqui no fórum e vi que era necessário adicionar uma linha extra em movements para que o atributo fosse retirado após desequipar o item, então coloquei desta forma e deu erro em TODOS OS ITENS, até os que eu não havia mexido. Você tem o código disponível? Se tiver publique-o aqui: Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui.

Informação Importante

Confirmação de Termo