Bem, este tutorial eu que fiz, ou seja, Créditos 100% para eu mesmo. :smile_positivo: :smile_positivo:
ISSO TUDO É UMA MAGIA SÓ, NÃO 4 COMOS TODOS PENSARAM...
Ai vai:
local combat1 = createCombatObject()setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, 37)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -0.5, -30, -0.8, 0)
local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE)
setCombatParam(combat2, COMBAT_PARAM_EFFECT, 43)
setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -0.5, -30, -0.8, 0)
local combat3 = createCombatObject()
setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_POISONDAMAGE)
setCombatParam(combat3, COMBAT_PARAM_EFFECT, 45)
setCombatFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, -0.5, -30, -0.8, 0)
local combat4 = createCombatObject()
setCombatParam(combat4, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat4, COMBAT_PARAM_EFFECT, 6)
setCombatFormula(combat4, COMBAT_FORMULA_LEVELMAGIC, -0.5, -30, -0.8, 0)
local arr1 = {
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 2, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0}
}
local arr2 = {
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 2, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0}
}
local arr3 = {
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 2, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0}
}
local arr4 = {
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 2, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0}
}
local area1 = createCombatArea(arr1)
local area2 = createCombatArea(arr2)
local area3 = createCombatArea(arr3)
local area4 = createCombatArea(arr4)
setCombatArea(combat1, area1)
setCombatArea(combat2, area2)
setCombatArea(combat3, area3)
setCombatArea(combat4, area4)
local function onCastSpell1(parameters)
doCombat(parameters.cid, parameters.combat1, parameters.var)
end
local function onCastSpell2(parameters)
doCombat(parameters.cid, parameters.combat2, parameters.var)
end
local function onCastSpell3(parameters)
doCombat(parameters.cid, parameters.combat3, parameters.var)
end
local function onCastSpell4(parameters)
doCombat(parameters.cid, parameters.combat4, parameters.var)
end
function onCastSpell(cid, var)
local parameters = { cid = cid, var = var, combat1 = combat1, combat2 = combat2, combat3 = combat3, combat4 = combat4 }
addEvent(onCastSpell1, 0, parameters)
addEvent(onCastSpell2, 1000, parameters)
addEvent(onCastSpell3, 2000, parameters)
addEvent(onCastSpell4, 3000, parameters)
Explicando:
Cada cor significa uma area, com suas respectivas fórmulas e efeitos. As formulas você ajusta ao seu OTserver. Alguns ainda não contem os novos elementos, então pesso que se certifiquem.
Onde está em laranja, você ajusta conforme o tempo que você quiser entra cada efeito. Eu achei que este intervalo ficou bom, porque logo após terminar um efeito, imediatamente começa um outro.
Agora no spells.xml vc coloca isso:
<instant name="Elemental Exori" words="elementals" lvl="100" maglv="7" soul="0" mana="100" exhaustion="1" prem="1" enable="1" script="elemental exori.lua"><vocation id="8"/></instant>
Ai vai umas fotos dos efeitos:
-->Energy
-->Ice
-->Terra
-->Fire
É isso.
Usem e abusem.
Yours Tprocheira