Merge spells branch

Ops
This commit is contained in:
rasanpedromujica 2019-01-17 00:32:58 -05:00
parent 154d82a9c2
commit 4715134fce
6 changed files with 24 additions and 49 deletions

View File

@ -1,15 +1,25 @@
function healingFormula(level, maglevel, base, variation)
local value = 2 * level + (3 * maglevel)
local min = value - math.random(variation) + base / 100
local max = value + math.random(variation) + base / 100
function healingFormula(level, maglevel, base, variation, value_min, value_max)
local value = 3 * maglevel + (2 * level)
if value_min ~= nil and value <= value_min then
value = value_min
end
if value_max ~= nil and value >= value_max then
value = value_max
end
local min = value * (base - variation) / 100
local max = value * (base + variation) / 100
return min, max
end
function damageFormula(level, maglevel, base, variation)
local value = 2 * level + (3 * maglevel)
local min = value - math.random(variation) + base / 100
local max = value + math.random(variation) + base / 100
return -min, -max
local value = 3 * maglevel + (2 * level)
local min = value * (base - variation) / 100
local max = value * (base + variation) / 100
return min, max
end
function computeFormula(level, maglevel, base, variation)
@ -20,7 +30,7 @@ function computeFormula(level, maglevel, base, variation)
local level_formula = 2 * level
local magic_formula = 3 * maglevel + level_formula
return magic_formula * damage / 100
end

View File

@ -5,14 +5,7 @@ combat:setParameter(COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, false)
function onGetFormulaValues(player, level, maglevel)
local base = 70
local variation = 30
local formula = 3 * maglevel + (2 * level)
local min = (formula * (base - variation)) / 100
local max = (formula * (base + variation)) / 100
return min, max
return healingFormula(level, maglevel, 70, 30, 100)
end
combat:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

View File

@ -6,14 +6,7 @@ combat:setParameter(COMBAT_PARAM_TARGETCASTERORTOPMOST, true)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, false)
function onGetFormulaValues(player, level, maglevel)
local base = 250
local variation = 0
local formula = 3 * maglevel + (2 * level)
local min = (formula * (base - variation)) / 100
local max = (formula * (base + variation)) / 100
return min, max
return healingFormula(level, maglevel, 250, 0, 100)
end
combat:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

View File

@ -5,14 +5,7 @@ combat:setParameter(COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, false)
function onGetFormulaValues(player, level, maglevel)
local base = 40
local variation = 20
local formula = 3 * maglevel + (2 * level)
local min = (formula * (base - variation)) / 100
local max = (formula * (base + variation)) / 100
return min, max
return healingFormula(level, maglevel, 40, 20, 100)
end
combat:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

View File

@ -5,14 +5,7 @@ combat:setParameter(COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, false)
function onGetFormulaValues(player, level, maglevel)
local base = 20
local variation = 10
local formula = 3 * maglevel + (2 * level)
local min = (formula * (base - variation)) / 100
local max = (formula * (base + variation)) / 100
return min, max
return healingFormula(level, maglevel, 20, 10, 100)
end
combat:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

View File

@ -5,14 +5,7 @@ combat:setParameter(COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, false)
function onGetFormulaValues(player, level, maglevel)
local base = 250
local variation = 50
local formula = 3 * maglevel + (2 * level)
local min = (formula * (base - variation)) / 100
local max = (formula * (base + variation)) / 100
return min, max
return healingFormula(level, maglevel, 250, 50, 100)
end
combat:setCallback(CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")