Ir para conteúdo

Holy Meteor


CoGames

Posts Recomendados

Fala ai galera, voltei ao XTibia depois de um tempo e esta é a minha primeira spell depois de um tempo fora do XTibia.

 

Nome da Spell: Holy Meteor

Créditos: 100% CoGames

button_ok.pngTestada: Tibia 8.60button_ok.png

 

Então vamos ao trabalho!

 

Entre em data/spells/scripts, crie um arquivo.lua e renomeie-o para HolyMeteor, e dentro do HolyMeteor.lua, cole:

--- Holy Meteor ---

--- By CoGames ---

 

local combat = createCombatObject()

 

local meteor = createCombatObject()

setCombatParam(meteor, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)

setCombatParam(meteor, COMBAT_PARAM_EFFECT, 39)

setCombatFormula(meteor, COMBAT_FORMULA_LEVELMAGIC, -10, -10, -12, -20)

 

local meteor_water = createCombatObject()

setCombatParam(meteor_water, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)

setCombatParam(meteor_water, COMBAT_PARAM_EFFECT, 39)

setCombatFormula(meteor_water, COMBAT_FORMULA_LEVELMAGIC, -10, -10, -12, -20)

 

combat_arr = {

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

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

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

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

}

 

local combat_area = createCombatArea(combat_arr)

setCombatArea(combat, combat_area)

 

local function meteorCast(p)

doCombat(p.cid, p.combat, positionToVariant(p.pos))

end

 

local function stunEffect(cid)

doSendMagicEffect(getThingPos(cid), CONST_ME_STUN)

end

 

function onTargetTile(cid, pos)

if (math.random(1, 1) == 1) then

local ground = getThingfromPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0})

if (isInArray(water, ground.itemid) == TRUE) then

local newpos = {x = pos.x - 7, y = pos.y - 6, z = pos.z}

doSendDistanceShoot(newpos, pos, 30)

addEvent(meteorCast, 6000, {cid = cid, pos = pos, combat = meteor_water})

else

local newpos = {x = pos.x - 7, y = pos.y - 6, z = pos.z}

doSendDistanceShoot(newpos, pos, 30)

addEvent(meteorCast, 600, {cid = cid,pos = pos, combat = meteor})

end

end

end

 

setCombatCallback(combat, CALLBACK_PARAM_TARGETTILE, "onTargetTile")

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

 

 

 

O que está em Roxo é o tipo do dano. Exemplo: FIREDAMAGE, ICEDAMAGE, EARTHDAMAGE, DEATHDAMAGE, entre outros...

O que está em Verde é o tipo do Magic Effect (/z) causado após o Distance Effect atingir o solo. Exemplo: 39 é o ID do HOLY, 42 é o ID do FURACÃO, 52 é o ID do GELO GIGANTE, entre outros...

O que está em Vermelho é a quantidade de dano que o player causará no monstro, ou em outro player, ali em cima está entre 1000 de dano e 5000.

O que está em Ouro Escuro é os quadrados que o poder atingirá, neste caso atingira 2 quadrados de todos os lados do player, o número 3 é o local em que o player está.

O que está em azul escuro é o Distance Effect (/x) solto após o player ter falado o poder. No caso é 30 que é o Distance Effect do HOLY, 28 é o Distance Effect da NEVE, entre outros...

 

Agora vá em data/spells/spells.xml e dentro em algum lugar, ponha:

 

<!-- CoGames Spells -->

<instant name="HolyMeteor" words="holymeteor" lvl="1" mana="0" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="HolyMeteor.lua">

<vocation id="1"/>

<vocation id="2"/>

<vocation id="3"/>

<vocation id="4"/>

<vocation id="5"/>

<vocation id="6"/>

<vocation id="7"/>

<vocation id="8"/>

<vocation id="9"/>

<vocation id="10"/>

<vocation id="11"/>

<vocation id="12"/>

</instant>

 

 

 

O que está em Azul é o nome da Spell.

O que está em Ouro é o nome da Spell para ser soltada.

O que está em Vermelho é o level que precisará para soltar a spell, no caso é no level 1 (PARA TESTE).

O que está em Marrom é a mana que custará para soltar a spell, no caso é 0 de mana (PARA TESTE).

O que está em Roxo é o tempo que demorará para o player poder soltar a magia novamente, ou seja, o intervalo para soltar a spell novamente, no caso é 1000 = 1 segundo, pode também por 500 = 0,5 segundos, 800 = 0,8 segundos, 2000 = 2 segundos, entre outros...

O que está em Laranja é o arquivo.lua que você salvou lá na pasta data/spells/scripts, no caso é HolyMeteor.lua o nome do arquivo.lua que eu salvei.

O que está em Verde é as vocações que podem soltar esta spell, no caso eu coloquei até o 12 que no meu OT tem 12 vocações, então coloquei todas (PARA TESTE).

 

Então é isso galera, espero que tenham gostado, não coloquei SSs por que to meio sem tempo de ficar carregando no Imageshack e depois postar aqui!

 

As SSs estão na hora de você entrar no tibia com a spell adicionada ai é só dizer o nome dela que soltará ela, ai não precisará de SS ;)

 

Se gostou REP+button_ok.png

Se não gostou REP+button_ok.pngtambém.

 

Obrigado!

Editado por Cogames
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...