Ir para conteúdo
  • Cadastre-se

(Resolvido)Dodge system com skill


Ir para solução Resolvido por Zanrix,

Posts Recomendados

Olá pessoal do TK, queria pedir um sistema de dodge, mas um pouco diferente, eu queria que a chance do dodge aumentasse de acordo com a skill AXE, diferente dos que estão no fórum que só aumentam quando você usa um certo item... Obrigado desde já!

Link para o post
Compartilhar em outros sites

tag:     <event type="statschange" name="dodge" event="script" value="dodge.lua"/>

script:

local lvldodge = 48902
local percent = 0.5


function onStatsChange(cid, attacker, type, combat, value)
if type == STATSCHANGE_HEALTHLOSS and isCreature(attacker) and isPlayer(attacker) then
if (getPlayerStorageValue(cid, lvldodge)*3) >= math.random (0,1000) then
value = math.ceil(value*(percent))
doTargetCombatHealth(attacker, cid, combat, -value, -value, 255)
doSendAnimatedText(getCreaturePos(cid), "DODGE", 6)
return false
end
end
return true
end

Link para o post
Compartilhar em outros sites

Testa aí amigo:

local percent = 0.5
local dodgeRate = 1 -- Deixando 1, a cada lvl de axe aumenta 1% a chance de dodge. Se colocar 2, cada lvl de axe aumenta 2% a chance de dodge.

function onStatsChange(cid, attacker, type, combat, value)
    if type == STATSCHANGE_HEALTHLOSS and isCreature(attacker) and isPlayer(attacker) then
        if (getPlayerSkill(cid, 3)*dodgeRate) >= math.random (0,100) then
            value = math.ceil(value*(percent))
            doTargetCombatHealth(attacker, cid, combat, -value, -value, 255)
            doSendAnimatedText(getCreaturePos(cid), "DODGE", 6)
            return false
        end
    end
    return true
end

 

Link para o post
Compartilhar em outros sites
  • Solução

Tenta assim:

local percent = 0.5
local dodgeRate = 1 -- Deixando 1, a cada lvl de axe aumenta 1% a chance de dodge. Se colocar 2, cada lvl de axe aumenta 2% a chance de dodge.

function onStatsChange(cid, attacker, type, combat, value)
    if type == STATSCHANGE_HEALTHLOSS and isCreature(attacker) and isPlayer(attacker) then
        if (getPlayerSkill(attacker, 3)*dodgeRate) >= math.random (0,100) then
            value = math.ceil(value*(percent))
            doTargetCombatHealth(attacker, cid, combat, -value, -value, 255)
            doSendAnimatedText(getCreaturePos(cid), "DODGE", 6)
            return false
        end
    end
    return true
end

Se não der, tenta subir todos skills pra ver se algum outro que tá pegando, e se for outra coisa diga qual o problema que tá dando.

Link para o post
Compartilhar em outros sites
  • 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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo