Ir para conteúdo

Featured Replies

Postado

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!! :)

 

                                                                                                               destinyshield.gif.9f031b59b026058f32a1c50da92ebe2a.gif  mídias sociais  destinyshield.gif.02fca81ab0615e050b2bcefd8a73a2e8.gif

                                                                                                                            talk to me              

                                                                                                                               vídeos           

                                                                                             

                                                                                                            LOGONORMAL.png.815b40b04ec583be88d8a1e2626fe430.png

                                                                                                           

                               

  • 1 year later...

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.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo