local spell_config = {
[1] = {
damage = COMBAT_FIREDAMAGE,
areaEffect = CONST_ME_FIREAREA,
shootEffect = 15,
formula = "-(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5))"
},
[2] = {
damage = COMBAT_ENERGYDAMAGE,
areaEffect = CONST_ME_ENERGYAREA,
shootEffect, 13,
formula = "-(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5))"
},
[3] = {
damage = COMBAT_EARTHDAMAGE,
areaEffect = CONST_ME_SMALLPLANTS,
shootEffect, 1,
formula = "-(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5))"
}
}
local combats = {}
function onGetFormulaValues(cid, level, skill, attack, factor)
return -(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5))
end
for _, config in ipairs(spell_config) do
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, config.damage)
setCombatParam(combat, COMBAT_PARAM_EFFECT, config.areaEffect)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, config.shootEffect)
--setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")
table.insert(combats, combat)
end
function onCastSpell(cid, var)
for n = 1, #combats do
addEvent(doCombat, n * 100, cid, combats[n], var)
end
return true
end
Não sei como funciona esse setCombatCallback, aparentemente está ok, tô meio com sono agora
. Testa ai como eu coloquei ai, e presta atenção que eu criei outra função combat pra que quando ele tente executar se o player estiver morto ou algo do tipo, não bugar.







info
Grupo: Visconde
Registrado: 21/09/10
Posts: 319
Reputação: +27
Char no Tibia: lest sarif
fala ai galera , eu to com 1 spell aqui , porém todas as modificaçoes que eu faço no SHOTEFFECT , nao muda nada '-'
please help.
local spell_config = { [1] = { damage = COMBAT_FIREDAMAGE, areaEffect = CONST_ME_FIREAREA, shootEffect = 15, formula = "-(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5))" }, [2] = { damage = COMBAT_ENERGYDAMAGE, areaEffect = CONST_ME_ENERGYAREA, shootEffect, 13, formula = "-(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5))" }, [3] = { damage = COMBAT_EARTHDAMAGE, areaEffect = CONST_ME_SMALLPLANTS, shootEffect, 1, formula = "-(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5))" } } local combats = {} for _, config in ipairs(spell_config) do local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, config.damage) setCombatParam(combat, COMBAT_PARAM_EFFECT, config.areaEffect) setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, config.shootEffect) function onGetFormulaValues(cid, level, skill, attack, factor) return -(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5)) end setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues") table.insert(combats, combat) end function onCastSpell(cid, var) for n = 1, #combats do addEvent(doCombat, n * 100, cid, combats[n], var) end return true end