Vou ensinar a vocês a fazerem novas spells!!
1) Vá na pasta ot/data/spells/instant copie um arquivo de lá e cole , exemplo : Exevo gran mas vis (Ctrl+c e Ctrl+v) e renomeie para exevo gran mas mort
2) Abra ele e vai estár assim :
area = {{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
}
attackType = ATTACK_PHYSICAL
needDirection = false
areaEffect = NM_ME_EXPLOSION_AREA
animationEffect = NM_ANI_NONE
hitEffect = NM_ME_EXPLOSION_DAMAGE
damageEffect = NM_ME_DRAW_BLOOD
animationColor = RED
offensive = true
drawblood = true
UltimateExplosionObject = MagicDamageObject(attackType, animationEffect, hitEffect, damageEffect, animationColor, offensive, drawblood, 0, 0)
function onCast(cid, creaturePos, level, maglv, var)
centerpos = {x=creaturePos.x, y=creaturePos.y, z=creaturePos.z}
n = tonumber(var) -- try to convert it to a number
if n ~= nil then
-- bugged
-- UltimateExplosionObject.minDmg = var+0
-- UltimateExplosionObject.maxDmg = var+0
UltimateExplosionObject.minDmg = 0
UltimateExplosionObject.maxDmg = 0
else
UltimateExplosionObject.minDmg = (level * 2 + maglv * 3) * 2.3 - 30
UltimateExplosionObject.maxDmg = (level * 2 + maglv * 3) * 3.0
end
return doAreaMagic(cid, centerpos, needDirection, areaEffect, area, UltimateExplosionObject:ordered())
end
Legendas:
Azul: Aréa da Magia
Vermelhor: Dano da magia . Exemplo (Está dando 800 +- com level * 2 + maglv * 3 coloka level * 4 + maglv * 6 e vai tirar 1600 +-)
Verde: O dano que a magia vai dar
3) Agora vamos fingir que você queira fazer uma UE de SD , abra a magia (Exori Mort) dentro da pasta ot/data/spells/instant vai estar assim:
area = {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 2, 0, 3, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
attackType = ATTACK_PHYSICAL
needDirection = true
areaEffect = NM_ME_MORT_AREA
animationEffect = NM_ANI_SUDDENDEATH
hitEffect = NM_ME_MORT_AREA
damageEffect = NM_ME_MORT_AREA
animationColor = RED
offensive = true
drawblood = true
GreatEnergyBeamObject = MagicDamageObject(attackType, animationEffect, hitEffect, damageEffect, animationColor, offensive, drawblood, 0, 0)
function onCast(cid, creaturePos, level, maglv, var)
centerpos = {x=creaturePos.x, y=creaturePos.y, z=creaturePos.z}
GreatEnergyBeamObject.minDmg = (level * 1 + maglv *1) * 0.8
GreatEnergyBeamObject.maxDmg = (level * 1 + maglv *1)
return doAreaMagic(cid, centerpos, needDirection, areaEffect, area, GreatEnergyBeamObject:ordered())
end
Legendas:
Azul: Aréa da Magia
Vermelhor: Dano da magia . Exemplo (Está dando 20 +- com level * 1 + maglv * 1 coloka level * 2 + maglv * 2 e vai tirar 40 +-)
Verde: O dano que a magia vai dar
4) Você copie a parte do Exori Mort que está assim :
attackType = ATTACK_PHYSICALneedDirection = true
areaEffect = NM_ME_MORT_AREA
animationEffect = NM_ANI_SUDDENDEATH
hitEffect = NM_ME_MORT_AREA
damageEffect = NM_ME_MORT_AREA
animationColor = RED
offensive = true
drawblood = true
GreatEnergyBeamObject = MagicDamageObject(attackType, animationEffect, hitEffect, damageEffect, animationColor, offensive, drawblood, 0, 0)
function onCast(cid, creaturePos, level, maglv, var)
centerpos = {x=creaturePos.x, y=creaturePos.y, z=creaturePos.z}
E cole na parte do Exevo Gran Mas Mort que está assim :
attackType = ATTACK_PHYSICALneedDirection = false
areaEffect = NM_ME_EXPLOSION_AREA
animationEffect = NM_ANI_NONE
hitEffect = NM_ME_EXPLOSION_DAMAGE
damageEffect = NM_ME_DRAW_BLOOD
animationColor = RED
offensive = true
drawblood = true
UltimateExplosionObject = MagicDamageObject(attackType, animationEffect, hitEffect, damageEffect, animationColor, offensive, drawblood, 0, 0)
function onCast(cid, creaturePos, level, maglv, var)
centerpos = {x=creaturePos.x, y=creaturePos.y, z=creaturePos.z}
E vai sobrar isso :
n = tonumber(var) -- try to convert it to a numberif n ~= nil then
-- bugged
-- UltimateExplosionObject.minDmg = var+0
-- UltimateExplosionObject.maxDmg = var+0
UltimateExplosionObject.minDmg = 0
UltimateExplosionObject.maxDmg = 0
else
UltimateExplosionObject.minDmg = (level * 2 + maglv * 3) * 2.3 - 30
UltimateExplosionObject.maxDmg = (level * 2 + maglv * 3) * 3.0
end
return doAreaMagic(cid, centerpos, needDirection, areaEffect, area, UltimateExplosionObject:ordered())
end
5) Vá no Exori Mort e copie a parte que está assim :
GreatEnergyBeamObject
E cole em todos lugares do Exevo Gran Mas Mort que está assim :
UltimateExplosionObject
Ficando:
attackType = ATTACK_PHYSICALneedDirection = true
areaEffect = NM_ME_MORT_AREA
animationEffect = NM_ANI_SUDDENDEATH
hitEffect = NM_ME_MORT_AREA
damageEffect = NM_ME_MORT_AREA
animationColor = RED
offensive = true
drawblood = true
GreatEnergyBeamObject = MagicDamageObject(attackType, animationEffect, hitEffect, damageEffect, animationColor, offensive, drawblood, 0, 0)
function onCast(cid, creaturePos, level, maglv, var)
centerpos = {x=creaturePos.x, y=creaturePos.y, z=creaturePos.z}
n = tonumber(var) -- try to convert it to a number
if n ~= nil then
-- bugged
-- GreatEnergyBeamObject.minDmg = var+0
-- GreatEnergyBeamObject.maxDmg = var+0
GreatEnergyBeamObject.minDmg = 0
GreatEnergyBeamObject.maxDmg = 0
else
GreatEnergyBeamObject.minDmg = (level * 2 + maglv * 3) * 2.3 - 30
GreatEnergyBeamObject.maxDmg = (level * 2 + maglv * 3) * 3.0
end
6) Vá no Exori Mort lá embaxo e copie onde tiver :
return doAreaMagic(cid, centerpos, needDirection, areaEffect, area, GreatEnergyBeamObject:ordered()) end
E cole em Exevo Gran Mas Mort no lugar de :
return doAreaMagic(cid, centerpos, needDirection, areaEffect, area, UltimateExplosionObject:ordered()) end
Fexe e salve
7) Logo depoia vá em ot/data/spells/spells.xml e cole :
<spell name="Ultimate Sudden Death" words="exevo gran mas mort" maglv="40" mana="800" enabled="1"><vocation id="1" /></spell>
Legenda:
Azul: Nome do spell e Vocação que pode usar
Laranja: Nome da magia,oque tenque falar,magic level pra usar,mana pra usar, (não mexa no enabled) e a vocação que pode usar (1 Sorcerer , 2 Druid , 3 Paladin e 4 Knight)
Pronto agora seu Exevo Gran Mas Mort já está criado (pode fazer isso com qualquer otro) PLssss movam para spells.Malz pelo encomodo!!!!