Ir para conteúdo
  • Cadastre-se

Magia Dano por magiclevel


Posts Recomendados

Alguem pode me ajudar? preciso dessa magia aqui colocar ela pra dar dano como magiclevel ou por level de skills se poder..

valendo rep ae!

Spell:


local config = {

efeitoTele = 134, -- efeito q ira aparacer a cada teleport.

efeitoDamage = 134, -- efeito q ira aparecer ao hitar no alvo

hits = 1, -- quantos hits vai dar

delay = 600, -- intervalo de tempo a cada hit

min = 37330, -- dano minimo

max = 38550, -- dano maximo

damage = COMBAT_PHYSICALDAMAGE -- tipo do dano

}

function isWalkable(pos, creature, pz, proj) -- nord

    if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end

    if getTopCreature(pos).uid > 0 and creature then return false end

    if getTileInfo(pos).protection and not pz then return false end

    local n = not proj and 3 or 2

    for i = 0, 255 do

                    pos.stackpos = i

                    local tile = getTileThingByPos(pos)

                    if tile.itemid ~= 0 and not isCreature(tile.uid) then

                                    if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then

                                                    return false

                                    end

                    end

    end

    return true

end

function getPosDirs(p, dir) -- mkalo

    return dir == 1 and {x=p.x-1, y=p.y, z=p.z} or dir == 2 and {x=p.x-1, y=p.y+1, z=p.z} or dir == 3 and {x=p.x, y=p.y+1, z=p.z} or dir == 4 and {x=p.x+1, y=p.y+1, z=p.z} or dir == 5 and {x=p.x+1, y=p.y, z=p.z} or dir == 6 and {x=p.x+1, y=p.y-1, z=p.z} or dir == 7 and {x=p.x, y=p.y-1, z=p.z} or dir == 8 and {x=p.x-1, y=p.y-1, z=p.z}

end

function validPos(pos)

tb = {}

for i = 1, 8 do

  newpos = getPosDirs(pos, i)

  if isWalkable(newpos) then

   table.insert(tb, newpos)

  end

end

table.insert(tb, pos)

return tb

end

spell3 = {

start3 = function (cid, target, markpos, hits)

    if not isCreature(cid) then return true end

    if not isCreature(target) or hits < 1 then

                 doTeleportThing(cid, markpos)

                 doSendMagicEffect(getThingPos(cid), config.efeitoTele)

                 return true

    end

    posAv = validPos(getThingPos(target))

    rand = #posAv == 1 and 1 or #posAv - 1

    doSendMagicEffect(getThingPos(cid), config.efeitoTele)

    doTeleportThing(cid, posAv[math.random(1, rand)])

    doAreaCombatHealth(cid, config.damage, getThingPos(target), 0, -config.min, -config.max, config.efeitoDamage)

    addEvent(spell3.start3, config.delay, cid, target, markpos, hits - 1)

   end

}

function onCastSpell(cid)

local position1 = {x=getThingPosition(getCreatureTarget(cid)).x, y=getThingPosition(getCreatureTarget(cid)).y, z=getThingPosition(getCreatureTarget(cid)).z}

local position2 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z}

local position3 = {x=getThingPosition(getCreatureTarget(cid)).x+2, y=getThingPosition(getCreatureTarget(cid)).y+1, z=getThingPosition(getCreatureTarget(cid)).z}

target = getCreatureTarget(cid)

if target then

  spell3.start3(cid, target, getThingPos(cid), config.hits)

doSendMagicEffect(position1, 39)

doSendMagicEffect(position2, 40)

doSendMagicEffect(position3, 100)

end

return true

end


Alguem ajuda ae? valendo rep+ ! vlw
Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo