Postado Outubro 22, 2018 6 anos 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. 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 Editado Outubro 29, 2018 6 anos por lazarus321 (veja o histórico de edições)
Postado Outubro 30, 2018 6 anos 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)
Postado Dezembro 9, 2018 6 anos Autor 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.
Postado Dezembro 9, 2018 6 anos Solução 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"/>
Postado Dezembro 10, 2018 6 anos Autor 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. Editado Dezembro 10, 2018 6 anos por lazarus321 (veja o histórico de edições)
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.