-
Total de itens
8 -
Registro em
-
Última visita
-
Ola. Estou tendo um problema com a funçao StatsChange.
Usei seu script de dodge como base para um sistema de absorção de dano.
No meu script o player casta uma spell e ganha um storage. esse storage é checado no statschange pra fazer a mudança do danofunction onStatsChange(cid, attacker, type, combat, value) local storage = 914510 local percent = 20 --- porcentagem absorvida local maxshield = 2000 local shield = getPlayerStorageValue(cid, storage) if type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS and isCreature(attacker) then if getPlayerStorageValue(cid, storage) > 0 then dano = math.ceil(value-((value/100)*percent)) setPlayerStorageValue(cid, storage, (getPlayerStorageValue(cid, storage)-dano)) doPlayerSendTextMessage(cid,27, "["..value.."]") -- só para checagem doSendMagicEffect(getCreaturePos(cid), 31) doPlayerSendTextMessage(cid,27, "Light Barrier: [".. shield .. "/".. maxshield .. "]") return doTargetCombatHealth(attacker, cid, combat, -dano, -dano, 255) end end return true end
Quando eu ataco o player que tem o storage ele esta recebendo 5 hits por turno.
O ataque base é 50 (modifiquei uma wand pra sempre bater isso)
olha como ficaSpoilerno console de quem ataca fica assim:
22:27 You deal 1 damage to Ranger.
22:27 You deal 3 damage to Ranger.
22:27 You deal 8 damage to Ranger.
22:27 You deal 20 damage to Ranger.
22:27 You deal 50 damage to Ranger.
em vez de diminuir o dano ele esta aumentando. Por favor me de uma luz. estou quebrando a cabeça aqui a horas :D