Jump to content
Close
lazarus321

Scripting Magia por Itens

Recommended Posts

Alguém sabe como posso fazer um item lançar magia.

Ex. uma sword quando clicada para usar, lançaria uma spell death_strike no alvo alem do dano normal de ataque. Lembrando que não é para ser automático é só quando clicar na espada.

Ela tbm teria range 4 e gastaria 150 de mana. Utilizo TFS 1.2.

 

image.thumb.png.5f19c3b496ea4037b5ad6e8b3cd44675.png

 

Coloquei uma action para usar a spell, porem deu esse erro ai em cima alguem sabe pq? Segue a spell abaixo.

 

local primeiroCombat = Combat()
primeiroCombat:setParameter(COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
primeiroCombat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONHIT)
primeiroCombat:setParameter(COMBAT_PARAM_BLOCKARMOR, true)
primeiroCombat:setParameter(COMBAT_PARAM_BLOCKSHIELD, true)

local segundoCombat = Combat()
segundoCombat:setParameter(COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)
segundoCombat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_HOLYDAMAGE)
segundoCombat:setParameter(COMBAT_PARAM_BLOCKARMOR, true)
segundoCombat:setParameter(COMBAT_PARAM_BLOCKSHIELD, true)

local area = createCombatArea( { 
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0}, 
{0, 1, 1, 3, 1, 1, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0} } )

local area2 = createCombatArea( { 
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0},
{0, 1, 1, 0, 1, 1, 0}, 
{1, 0, 0, 3, 0, 0, 1},
{0, 1, 1, 0, 1, 1, 0},
{0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0} } )

primeiroCombat:setArea (area)
segundoCombat:setArea (area2)

 function onGetFormulaValues(player, skill, attack, factor)
    local min = (player:getLevel() / 1) + (skill * attack * 0.03) + 50
    local max = (player:getLevel() / 1) + (skill * attack * 0.08) + 50  
    return -min, -max
end

primeiroCombat:setCallback(CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")

 function onGetFormulaValues(player, skill, attack, factor)
    local min = (player:getLevel() / 1) + (skill * attack * 0.01) + 50
    local max = (player:getLevel() / 1) + (skill * attack * 0.02) + 50  
    return -min, -max
end
segundoCombat:setCallback(CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")


function onUse(player, item, fromPosition, itemEx, toPosition)

    primeiroCombat:execute(player, variant)
    segundoCombat:execute(player, variant)
    return true

end


 


Edited by lazarus321 (see edit history)

Share this post


Link to post
Share on other sites

Ao invés de registrar em uma função de Action, registre-o como uma runa (Sudden Death Rune por exemplo

 

E no local do "idrune" você coloque o id de uma Sword (use with) 


Share this post


Link to post
Share on other sites

Tentei fazer como runa mais não deu certo.

tipo, quando registra como runa nos "items.xml" dentro do jogo a espada perde os atributos (ataque, defesa etc..) na verdade só a descrição do texto mais a espada funciona normal.

 


Share this post


Link to post
Share on other sites
17 horas atrás, lazarus321 disse:

Tentei fazer como runa mais não deu certo.

tipo, quando registra como runa nos "items.xml" dentro do jogo a espada perde os atributos (ataque, defesa etc..) na verdade só a descrição do texto mais a espada funciona normal.

 

 

Você deve deixar Normal no Items.xml, você deve registrar como Runa no Spells.xml

 

Exemplo:

<rune name="Sword" id="ID" allowfaruse="1" charges="1" lvl="60" maglv="1" exhaustion="1000" needtarget="1" blocktype="solid" event="script" value="NOME DO ARQUIVO.lua"/>


Share this post


Link to post
Share on other sites

Perfeito Joaovettor,

 

Muito obrigado pela ajuda, deu certinho aqui.

Rep+

 

Só nao sei pq itens com dano elemental não funciona. Utilizando espada com dano físico funciona normal. 


Edited by lazarus321 (see edit history)

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


Open Tibia Server

Quer aprender a criar seu próprio servidor de Tibia? Então está no lugar certo, aqui você encontrará milhares de tutorias, scripts, códigos, mapas e utilitários para que você possa fazer o seu próprio servidor de Tibia partindo do zero.

Redes Sociais

Anuncie no Tibia King

Precisa de mais visibilidade em seus projetos? Quer publicidade para o seu servidor? Anuncie no Tibia King e faça sua divulgação, possuímos centenas de acessos simultâneos e milhares diários, com certeza será a sua solução! A publicação do seu anuncio é instantânea!

×
×
  • Create New...