OTHispano
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

Ir abajo
Falcon
Falcon
Administrador
Mensajes Mensajes : 350
http://www.othispano.net

[Spell] Exori Mages Empty [Spell] Exori Mages

Miér Jun 20, 2012 9:53 am
Hola usuarios de OTHispano,
Hoy les traigo, un pequeño spell, que acabo de hacer, con el spell maker, que eh estado probando, de TGYoshi.

Bien,
XML:
Código:
<instant name="Elementz Vis" words="Exori mages" lvl="100" maglv="15" mana="250" exhaustion="1000" prem="1" needlearn="0" blockwalls="0" aggressive="1" event="script" value="Elementz Vis.lua">
   <vocation id="1"/>
   <vocation id="2"/>
   <vocation id="5"/>
   <vocation id="6"/>
</instant>

data/spells/scripts/elementz vis.lua
Código:
-- SpellCreator generated.

-- =============== COMBAT VARS ===============
-- Areas/Combat for 700ms
local combat7_physical = createCombatObject()
setCombatParam(combat7_physical, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
setCombatParam(combat7_physical, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_BOLT)
setCombatParam(combat7_physical, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatArea(combat7_physical,createCombatArea({{0, 1},
{2, 0}}))
function getDmg_physical(cid, level, maglevel)
   return (100)*-1,(200)*-1
end
setCombatCallback(combat7_physical, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_physical")
local dfcombat7_physical = {CONST_ANI_WHIRLWINDCLUB,1,-1}

-- Areas/Combat for 600ms
local combat6_drown = createCombatObject()
setCombatParam(combat6_drown, COMBAT_PARAM_EFFECT, CONST_ME_LOSEENERGY)
setCombatParam(combat6_drown, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_THROWINGKNIFE)
setCombatParam(combat6_drown, COMBAT_PARAM_TYPE, COMBAT_DROWNDAMAGE)
setCombatArea(combat6_drown,createCombatArea({{1},
{2}}))
function getDmg_drown(cid, level, maglevel)
   return (10)*-1,(20)*-1
end
setCombatCallback(combat6_drown, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_drown")
local dfcombat6_drown = {CONST_ANI_WHIRLWINDAXE,0,-1}

-- Areas/Combat for 500ms
local combat5_terra = createCombatObject()
setCombatParam(combat5_terra, COMBAT_PARAM_EFFECT, CONST_ME_GREEN_RINGS)
setCombatParam(combat5_terra, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_POISONARROW)
setCombatParam(combat5_terra, COMBAT_PARAM_TYPE, COMBAT_EARTHDAMAGE)
setCombatArea(combat5_terra,createCombatArea({{1, 0},
{0, 2}}))
function getDmg_terra(cid, level, maglevel)
   return (100)*-1,(200)*-1
end
setCombatCallback(combat5_terra, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_terra")
local dfcombat5_terra = {CONST_ANI_EARTH,-1,-1}

-- Areas/Combat for 400ms
local combat4_holy = createCombatObject()
setCombatParam(combat4_holy, COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE)
setCombatParam(combat4_holy, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_HOLY)
setCombatParam(combat4_holy, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)
setCombatArea(combat4_holy,createCombatArea({{1, 2}}))
function getDmg_holy(cid, level, maglevel)
   return (100)*-1,(200)*-1
end
setCombatCallback(combat4_holy, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_holy")
local dfcombat4_holy = {CONST_ANI_SMALLHOLY,-1,0}

-- Areas/Combat for 300ms
local combat3_dEATH = createCombatObject()
setCombatParam(combat3_dEATH, COMBAT_PARAM_EFFECT, CONST_ME_MORTAREA)
setCombatParam(combat3_dEATH, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH)
setCombatParam(combat3_dEATH, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)
setCombatArea(combat3_dEATH,createCombatArea({{0, 2},
{1, 0}}))
function getDmg_dEATH(cid, level, maglevel)
   return (100)*-1,(200)*-1
end
setCombatCallback(combat3_dEATH, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_dEATH")
local dfcombat3_dEATH = {CONST_ANI_DEATH,-1,1}

-- Areas/Combat for 200ms
local combat2_Fire = createCombatObject()
setCombatParam(combat2_Fire, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONHIT)
setCombatParam(combat2_Fire, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_FIRE)
setCombatParam(combat2_Fire, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatArea(combat2_Fire,createCombatArea({{2},
{1}}))
function getDmg_Fire(cid, level, maglevel)
   return (100)*-1,(200)*-1
end
setCombatCallback(combat2_Fire, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Fire")
local dfcombat2_Fire = {CONST_ANI_FLAMMINGARROW,0,1}

-- Areas/Combat for 100ms
local combat1_Ice = createCombatObject()
setCombatParam(combat1_Ice, COMBAT_PARAM_EFFECT, CONST_ME_ICEATTACK)
setCombatParam(combat1_Ice, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ICE)
setCombatParam(combat1_Ice, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE)
setCombatArea(combat1_Ice,createCombatArea({{2, 0},
{0, 1}}))
function getDmg_Ice(cid, level, maglevel)
   return (100)*-1,(200)*-1
end
setCombatCallback(combat1_Ice, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Ice")
local dfcombat1_Ice = {CONST_ANI_SMALLICE,1,1}

-- Areas/Combat for 0ms
local combat0_Vis = createCombatObject()
setCombatParam(combat0_Vis, COMBAT_PARAM_EFFECT, CONST_ME_ENERGYAREA)
setCombatParam(combat0_Vis, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY)
setCombatParam(combat0_Vis, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
setCombatArea(combat0_Vis,createCombatArea({{2, 1}}))
function getDmg_Vis(cid, level, maglevel)
   return (100)*-1,(200)*-1
end
setCombatCallback(combat0_Vis, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Vis")
local dfcombat0_Vis = {CONST_ANI_ENERGYBALL,1,0}

-- =============== CORE FUNCTIONS ===============
local function RunPart(c,cid,var,dirList,dirEmitPos) -- Part
   if (isCreature(cid)) then
      doCombat(cid, c, var)
      if (dirList ~= nil) then -- Emit distance effects
      local i = 2;
         while (i < #dirList) do
            doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x-dirList[i],y=dirEmitPos.y-dirList[i+1],z=dirEmitPos.z},dirList[1])
            i = i + 2
         end      
      end
   end
end

function onCastSpell(cid, var)
   local startPos = getCreaturePosition(cid)
   addEvent(RunPart,700,combat7_physical,cid,var,dfcombat7_physical,startPos)
   addEvent(RunPart,600,combat6_drown,cid,var,dfcombat6_drown,startPos)
   addEvent(RunPart,500,combat5_terra,cid,var,dfcombat5_terra,startPos)
   addEvent(RunPart,400,combat4_holy,cid,var,dfcombat4_holy,startPos)
   addEvent(RunPart,300,combat3_dEATH,cid,var,dfcombat3_dEATH,startPos)
   addEvent(RunPart,200,combat2_Fire,cid,var,dfcombat2_Fire,startPos)
   addEvent(RunPart,100,combat1_Ice,cid,var,dfcombat1_Ice,startPos)
   RunPart(combat0_Vis,cid,var,dfcombat0_Vis,startPos)
   return true
end

Bien, eso seria todo, les dejo una imagen, Very Happy!
[Spell] Exori Mages 61VMH

Recomiendo usar, el spell maker creado por TGYoshi, muy bueno, y avanzado!.
http://www.othispano.net/t991-herramienta-spellcreator-a-graphical-spell-creation-enviroment?highlight=spell+maker

Creditos
- Spell Maker
- Falcon
avatar
Masakre
Miembro
Mensajes Mensajes : 36

[Spell] Exori Mages Empty Re: [Spell] Exori Mages

Vie Jul 20, 2012 11:13 pm
No puedo visualizar la imagen Mad
Volver arriba
Permisos de este foro:
No puedes responder a temas en este foro.