Jump to content

Dodge System V2


RigBy

Recommended Posts

Dodge System por item V2

http://prntscr.com/7f2vl9

 

Para quem não sabe eu ja tinha feito um Dodge System ano passado, na época que eu não sabia nada, embora eu ainda não saiba nada to melhorando :D, eu tava sem nada para fazer ai decidir refazer, o script não tem nada de novo só foi modificado e melhorado algumas coisa.

 

Para que não sabe dodge é um sistema que faz com que o player tenha uma certa porcentagem de esquiva de um ataque( por ele te esquivado ele não vai toma nenhum ataque e não apenas 50%)

 

Então vamos la:

 

Em creaturescript:

Dodge System.lua

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
Creaturescript.xml
<event type="StatsChange" name="DodgeSystem" event="script" value="Dodge System.lua"/>
Login.lua antes do ultimo return true
registerCreatureEvent(cid, "DodgeSystem")
    if getPlayerStorageValue(cid, 123455678) == -1 then
        setPlayerStorageValue(cid, 123455678, 0) 
    end

em action:
dodgestone.lua
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 chego 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
action.xml tag
<action itemid="Id do item" event="script" value="dodgestone.lua"/>

 

Se tiver algum bug ou dica de como melhorar pode comentar ai nos cometários

Ps. com base nesse da para fazer Critical System, Reflect System e da para usar como magia de esquiva, se precisar é so fala :D

Link to comment
Share on other sites

Não entendi, qual a diferença desse pro de antes?

----------------------------------------------------------------

 

Ah sim eu vi, o código tá menor, mas então, faz um array pra armazenar a configuração, fica melhor porque aí você não precisa ficar alterando toda hora tudo.. ^^

Edited by xSONYx
Link to comment
Share on other sites

  • 1 year later...
  • 1 year later...
  • 9 months later...
  • 2 years later...
×
×
  • Create New...