Ir para conteúdo

Featured Replies

Postado

Tipo: Magia(uma para cada vocação).

Testado:Sim, TFS 0.3.6(8.6).

Hoje trago-lhes 4 magias uma para cada vocação:

primeiramente abra a pasta do seu servidor depois vá em data agora vá em spells e entre na pasta scripts duplique um arquivo da extensão .lua renomeie para

dark light.lua adicione o seguinte conteúdo:

local scom1 = createCombatObject()

local scom2 = createCombatObject()


local combat1 = createCombatObject()

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)

setCombatParam(combat1, COMBAT_PARAM_EFFECT, 49)

setAttackFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, 55, 75, 5, 610)


local combat2 = createCombatObject()

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)

setCombatParam(combat2, COMBAT_PARAM_EFFECT, 17)

setAttackFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, 15, 25, 35, 110)


arr1 = {

{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, 1, 1, 1, 0, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 1, 1, 1, 1, 2, 1, 1, 1, 1, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 0, 1, 1, 1, 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, 0, 0, 0, 0, 0, 0, 0},

}


arr2 = {

{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, 1, 1, 1, 0, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 1, 1, 1, 1, 2, 1, 1, 1, 1, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 0, 1, 1, 1, 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, 0, 0, 0, 0, 0, 0, 0},

}



local area1 = createCombatArea(arr1)

local area2 = createCombatArea(arr2)

setCombatArea(scom1, area1)

setCombatArea(scom2, area2)


function onTargetTile(cid, pos)

local p = getThingPos(cid)

local basep = {x = p.x - 7, y = p.y, z = p.z}

doSendDistanceShoot(basep, pos, 30)

doCombat(cid,combat1,positionToVariant(pos))

end


function onTargetTile2(cid, pos)

local p1 = getThingPos(cid)

local basep1 = {x = p1.x + 7, y = p1.y , z = p1.z}

doSendDistanceShoot(basep1, pos, 31)

doCombat(cid,combat2,positionToVariant(pos))

end


setCombatCallback(scom1, CALLBACK_PARAM_TARGETTILE, "onTargetTile")

setCombatCallback(scom2, CALLBACK_PARAM_TARGETTILE, "onTargetTile2")


local function onCastSpell1(parameters)

doCombat(parameters.cid, scom1, parameters.var)

end


local function onCastSpell2(parameters)

doCombat(parameters.cid, scom2, parameters.var)

end


function onCastSpell(cid, var)

local parameters = { cid = cid, var = var}

addEvent(onCastSpell1, 100, parameters)

addEvent(onCastSpell2, 100, parameters)


return TRUE

end
tag do spells.xml:
<instant name="Darkness Light" words="Dark Light" lvl="600" mana="12000" prem="1" exhaustion="2000" selftarget="1" needlearn="0" event="script" value="attack/dark light.lua">

<vocation id="1"/>

<vocation id="5"/>

</instant>
imagem da spell:
darklight.png
dark bats.lua darkbats.png
combustion.lua combustionf.png
death knives.lua

imagem da magia:

deathknives.png

LEGENDA:

Combustion(Knight e Elite Knight),

Dark Light(Sorcerer e Master Sorcerer),

Dark Bats(Druid e Elder Druid),

Death Knives(Paladin e Royal Paladin).

local scom1 = createCombatObject()

local scom2 = createCombatObject()


local combat1 = createCombatObject()

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)

setCombatParam(combat1, COMBAT_PARAM_EFFECT, 66)

setAttackFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, 55, 75, 5, 610)


local combat2 = createCombatObject()

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)

setCombatParam(combat2, COMBAT_PARAM_EFFECT, 17)

setAttackFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, 15, 25, 35, 110)


arr1 = {

{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, 1, 1, 1, 0, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 1, 1, 1, 1, 2, 1, 1, 1, 1, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 0, 1, 1, 1, 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, 0, 0, 0, 0, 0, 0, 0},

}


arr2 = {

{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, 1, 1, 1, 0, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 1, 1, 1, 1, 2, 1, 1, 1, 1, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 0, 1, 1, 1, 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, 0, 0, 0, 0, 0, 0, 0},

}



local area1 = createCombatArea(arr1)

local area2 = createCombatArea(arr2)

setCombatArea(scom1, area1)

setCombatArea(scom2, area2)


function onTargetTile(cid, pos)

local p = getThingPos(cid)

local basep = {x = p.x - 7, y = p.y, z = p.z}

doSendDistanceShoot(basep, pos, 4)

doCombat(cid,combat1,positionToVariant(pos))

end


function onTargetTile2(cid, pos)

local p1 = getThingPos(cid)

local basep1 = {x = p1.x + 7, y = p1.y , z = p1.z}

doSendDistanceShoot(basep1, pos, 31)

doCombat(cid,combat2,positionToVariant(pos))

end


setCombatCallback(scom1, CALLBACK_PARAM_TARGETTILE, "onTargetTile")

setCombatCallback(scom2, CALLBACK_PARAM_TARGETTILE, "onTargetTile2")


local function onCastSpell1(parameters)

doCombat(parameters.cid, scom1, parameters.var)

end


local function onCastSpell2(parameters)

doCombat(parameters.cid, scom2, parameters.var)

end


function onCastSpell(cid, var)

local parameters = { cid = cid, var = var}

addEvent(onCastSpell1, 100, parameters)

addEvent(onCastSpell2, 100, parameters)


return TRUE

end
tag no spells.xml:
<instant name="Batman" words="Dark Bats" lvl="600" mana="12000" prem="1" selftarget="1" exhaustion="2000" needlearn="0" event="script" value="attack/dark bats.lua">

<vocation id="2"/>

<vocation id="6"/>

</instant>
imagem da magia:
local scom1 = createCombatObject()

local scom2 = createCombatObject()


local combat1 = createCombatObject()

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)

setCombatParam(combat1, COMBAT_PARAM_EFFECT, 6)

setCombatFormula(combat1, COMBAT_FORMULA_SKILL, 110, 225, 310, 550)


local combat2 = createCombatObject()

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)

setCombatParam(combat2, COMBAT_PARAM_EFFECT, 36)

setCombatFormula(combat2, COMBAT_FORMULA_SKILL, 110, 315, 210, 150)


arr1 = {

{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, 1, 1, 1, 0, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 1, 1, 1, 1, 2, 1, 1, 1, 1, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 0, 1, 1, 1, 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, 0, 0, 0, 0, 0, 0, 0},

}


arr2 = {

{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, 1, 1, 1, 0, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 1, 1, 1, 1, 2, 1, 1, 1, 1, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 0, 1, 1, 1, 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, 0, 0, 0, 0, 0, 0, 0},

}



local area1 = createCombatArea(arr1)

local area2 = createCombatArea(arr2)

setCombatArea(scom1, area1)

setCombatArea(scom2, area2)


function onTargetTile(cid, pos)

local p = getThingPos(cid)

local basep = {x = p.x - 7, y = p.y, z = p.z}

doSendDistanceShoot(basep, pos, 3)

doCombat(cid,combat1,positionToVariant(pos))

end


function onTargetTile2(cid, pos)

local p1 = getThingPos(cid)

local basep1 = {x = p1.x + 7, y = p1.y , z = p1.z}

doSendDistanceShoot(basep1, pos, 3)

doCombat(cid,combat2,positionToVariant(pos))

end


setCombatCallback(scom1, CALLBACK_PARAM_TARGETTILE, "onTargetTile")

setCombatCallback(scom2, CALLBACK_PARAM_TARGETTILE, "onTargetTile2")


local function onCastSpell1(parameters)

doCombat(parameters.cid, scom1, parameters.var)

end


local function onCastSpell2(parameters)

doCombat(parameters.cid, scom2, parameters.var)

end


function onCastSpell(cid, var)

local parameters = { cid = cid, var = var}

addEvent(onCastSpell1, 100, parameters)

addEvent(onCastSpell2, 100, parameters)


return TRUE

end 
tag no spells.xml
<instant name="Fire Destroyer" words="Combustion" lvl="600" mana="1200" prem="1" selftarget="1" exhaustion="2000" needlearn="0" event="script" value="attack/combustion.lua">

<vocation id="4"/>

<vocation id="8"/>

</instant>
imagen da magia:
local scom1 = createCombatObject()

local scom2 = createCombatObject()


local combat1 = createCombatObject()

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat1, COMBAT_PARAM_EFFECT, 9)

setCombatFormula(combat1, COMBAT_FORMULA_SKILL, 100, 155, 120, 650)


local combat2 = createCombatObject()

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat2, COMBAT_PARAM_EFFECT, 34)

setCombatFormula(combat2, COMBAT_FORMULA_SKILL, 410, 215, 310, 150)


arr1 = {

{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, 1, 1, 1, 0, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 1, 1, 1, 1, 2, 1, 1, 1, 1, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 0, 1, 1, 1, 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, 0, 0, 0, 0, 0, 0, 0},

}


arr2 = {

{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, 1, 1, 1, 0, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 1, 1, 1, 1, 2, 1, 1, 1, 1, 0, 0, 0},

{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 0, 1, 1, 1, 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, 0, 0, 0, 0, 0, 0, 0},

}



local area1 = createCombatArea(arr1)

local area2 = createCombatArea(arr2)

setCombatArea(scom1, area1)

setCombatArea(scom2, area2)


function onTargetTile(cid, pos)

local p = getThingPos(cid)

local basep = {x = p.x - 7, y = p.y, z = p.z}

doSendDistanceShoot(basep, pos, 8)

doCombat(cid,combat1,positionToVariant(pos))

end


function onTargetTile2(cid, pos)

local p1 = getThingPos(cid)

local basep1 = {x = p1.x + 7, y = p1.y , z = p1.z}

doSendDistanceShoot(basep1, pos, 7)

doCombat(cid,combat2,positionToVariant(pos))

end


setCombatCallback(scom1, CALLBACK_PARAM_TARGETTILE, "onTargetTile")

setCombatCallback(scom2, CALLBACK_PARAM_TARGETTILE, "onTargetTile2")


local function onCastSpell1(parameters)

doCombat(parameters.cid, scom1, parameters.var)

end


local function onCastSpell2(parameters)

doCombat(parameters.cid, scom2, parameters.var)

end


function onCastSpell(cid, var)

local parameters = { cid = cid, var = var}

addEvent(onCastSpell1, 100, parameters)

addEvent(onCastSpell2, 100, parameters)


return TRUE

end 
tag no spells.xml
<instant name="Knives" words="Death Knives" lvl="600" mana="6500" selftarget="1" prem="1" exhaustion="2000" needlearn="0" event="script" value="attack/death knives.lua">

<vocation id="3"/>

<vocation id="7"/>

</instant>

Editado por Skyforever (veja o histórico de edições)

Retirado.

 

Skype: joaoxtibia85.

  • 1 month later...

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 520.3k

Informação Importante

Confirmação de Termo