Postado Julho 9, 2014 10 anos mano muito bom o script, estava procurando algo assim faz muito tempo, agora vem cá, eu queria que isso fosse como uma spell sabe? tipo o player faz magia, e então ele ganha 30% de chance de esquivar por 3 ataques. velho se alguém pudesse fazer isso pra mim eu ia ser MUITO grato. segura meu Like ae.
Postado Julho 15, 2014 10 anos Tem como colocar nessa script pra qnd o player for atacado subir DODGE para mostrar que esta defendendo ? Ae galera do TK, não quero fazer propaganda de nada mas sempre ajudei o pessoal do tibiaking, e com seu fim, resolvi procurar outro fórum para me posicionar, quando conheci aqui não botava muita Fé mas ao longo do tempo percebi que o TK merecia meu respeito, pois ao contrário do tibiaking ele defende o OpenSource, afinal de tudo resolvi fazer minha primeira contribuição para o TK. Defense System Informações: Esse sistema é bem simples, consiste em um sistema que ignora o ataque do oponente dependendo do nivel de defense. Sim, sei que o próprio tibia já tem um sistema desse, mas acontece que para servidores baiak fastattack isso torna as coisas mais emocionantes. Descrição: O player oponente tem 10 porcento de chance máxima de defender o próximo ataque. Testado em Versão 8.60. Instalação Vá em data/creaturescripts/scripts e cria um arquivo chamado defense.lua, dentro dele coloque. function onCombat(cid, target) local storage = 165165 if isPlayer(target) == true then local percent = math.random(1,100) if percent <= getPlayerStorageValue(target,storage) then doSendAnimatedText(getPlayerPosition(target),"Defended", 100) doSendMagicEffect(getPlayerPosition(target), 3) return false end end return true end Storage = Storage usado no sistema. Logo em seguida vá até data/creaturescripts abra o arquivo creaturescripts.xml e adicione essa tag. <event type="combat" name="defense" event="script" value="defense.lua"/> Agora vá em data/creaturescripts/scripts e abra o arquivo login.lua e adicione essa tag. registerCreatureEvent(cid, "defense") Em seguida vá a pasta data/actions/scripts e cria um arquivo chamado defense.lua, dentro dele coloque isso. function onUse(cid, item, fromPosition, itemEx, toPosition) local storage = 16516 local maximo = 10 local iditem = 12659 if getPlayerStorageValue(cid, storage) == maximo then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You already have 10% defense.") doSendMagicEffect(getPlayerPosition(cid), 2) return true end if getPlayerItemCount(cid, iditem) <= 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Unable to Use.") doSendMagicEffect(getPlayerPosition(cid), 2) return true end if getPlayerStorageValue(cid, storage) == -1 then doPlayerRemoveItem(cid, iditem, 1) setPlayerStorageValue(cid, storage, 1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You acquired a 1% defense.") doSendMagicEffect(getPlayerPosition(cid), 39) else setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage)+1) doPlayerRemoveItem(cid, iditem, 1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You acquired a "..getPlayerStorageValue(cid, storage).."% defense.") doSendMagicEffect(getPlayerPosition(cid), 39) end return TRUE end Storage = Storage usado no sistema.Maximo = Porcentagem máxima de defense que o player pode ter.(Variando de 1 a 100)IdItem = Id do item utilizado no sistema. Agora vá ao arquivo data/actions/actions.xml e adicione essa tag. <action itemid="12659" script="defense.lua"/> ItemId = Id do item utilizado no sistema. Créditos: 100% - Gabisa00 Dúvidas, bugs, sugestões, somente no tópico. Tem como colocar nessa script par qndo o player esquivar do attack aparecer DODGE para mostrar que esta funcionando, e a onde eu arrumo pra defender mais
Postado Julho 15, 2014 10 anos Autor Vá em data/creaturescripts/scripts e cria um arquivo chamado defense.lua, dentro dele coloque. function onCombat(cid, target) local storage = 165165 if isPlayer(target) == true then local percent = math.random(1,100) if percent <= getPlayerStorageValue(target,storage) then doSendAnimatedText(getPlayerPosition(target),"Dodge", 100) doSendMagicEffect(getPlayerPosition(target), 3) return false end end return true end Se quiser colocar para esse sistema funcionar com as criaturas, coloque isso dentro de todas as criaturas, logo em baixo dessa linha. <strategy attack="100" defense="0"/> <script> <event name="defense"/> </script> Editado Julho 15, 2014 10 anos por gabisa00 (veja o histórico de edições)
Postado Julho 5, 2015 9 anos Muito bem explicado Editado Julho 5, 2015 9 anos por Faahsz (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.