Gostei, ficou show. Rep+
Mais acho que com distance effect ficaria mais legal hem, com aquele foguinho girando em volta. Fica a dica. ![]()
info
Grupo: Conde
Registrado: 30/06/11
Posts: 631
Reputação: +371
Char no Tibia: Warrior of Mort

Gostei, ficou show. Rep+
Mais acho que com distance effect ficaria mais legal hem, com aquele foguinho girando em volta. Fica a dica. ![]()
info
Grupo: Infante
Registrado: 04/03/11
Posts: 1.6k
Reputação: +393
Char no Tibia: No Have

Achei interessante a duração.
Bem configuravel e funcional
Tambem acho que distance effect ficaria foda.
Mais ta excelente.
info
Grupo: Banidos
Registrado: 30/07/12
Posts: 279
Reputação: +16
Char no Tibia: Raidou

Gostei,nunca vi nada do tipo.
REP++
info
Grupo: Artesão
Registrado: 10/08/12
Posts: 114
Reputação: +15

nuss, mto bom cara sua magia...eu nunca vi algo desse jeito tambem, pra mim e inedito! gostei ai manow! Continue Assim!
Oneshot tem coomo transforma essa spell pra mim 8.40 ?'
Editado Janeiro 29 por tondes
info
Grupo: Campones
Registrado: 05/09/12
Posts: 60
Reputação: +15
Char no Tibia: Lawliet Tequilla

Ótimo sistema! REP+
Perguntinha... Se eu tentar mudar o sistema pra fazer outros tipos de Aura vai funcionar? Exemplo:
Trocar essa parte:
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK)
Por essa:
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 1)
Ou seja, mudar o Effect da spell, dos quais são vistos pelo /x, /y e /z
-------------------------------------------------------------------------------------------------------------
Editado Fevereiro 7 por Meunometemvinteletra
info
Grupo: Visconde
Registrado: 10/02/11
Posts: 377
Reputação: +78

Ótimo sistema! REP+
Perguntinha... Se eu tentar mudar o sistema pra fazer outros tipos de Aura vai funcionar? Exemplo:
Trocar essa parte:
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK)
Por essa:
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 1)
Ou seja, mudar o Effect do item, dos quais são vistos pelo /x, /y e /z
cara se vc mudar só o effect n tem problema nenhum '-'
info
Grupo: Marquês
Registrado: 05/07/09
Posts: 1.3k
Reputação: +732
Nome: Fire Aura
Autor: Oneshot
Tipo: Magia
Faz tempo que eu não faço magias, então eu resolvi escrever qualquer coisa e deu nisso, uma aura que fica circundando o jogador por X tempo causando dano.
Crie um arquivo chamado fire aura.lua, e coloque o conteúdo abaixo:
local offsets = { [0] = {{0, 0}, {1, 0}, {1, 1}, {1, 2}, {0, 2}, {-1, 2}, {-1, 1}, {-1, 0}}, [1] = {{0, 0}, {0, 1}, {-1, 1}, {-2, 1}, {-2, 0}, {-2, -1}, {-1, -1}, {0, -1}}, [2] = {{0, 0}, {-1, 0}, {-1, -1}, {-1, -2}, {0, -2}, {1, -2}, {1, -1}, {1, 0}}, [3] = {{0, 0}, {0, -1}, {1, -1}, {2, -1}, {2, 0}, {2, 1}, {1, 1}, {0, 1}} } local storage = 88888 local k = 1 local duration = 30 local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE) setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREATTACK) setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 10, 10, 2.4, 2.4) function onCastAura(cid, lastDirection) local position = getPositionByDirection(getThingPosition(cid), lastDirection, 1) local offset = offsets[lastDirection][(k > #offsets[lastDirection] and ((k % #offsets[lastDirection]) == 0 and #offsets[lastDirection] or (k % #offsets[lastDirection])) or k)] local tmp = {x = position.x + offset[1], y = position.y + offset[2], z = position.z} doCombat(cid, combat, positionToVariant(tmp)) doCreatureSetLookDirection(cid, lastDirection) if os.time() < getCreatureStorage(cid, storage) then addEvent(onCastAura, 100, cid, getCreatureLookDirection(cid)) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "Aura effect ended.") mayNotMove(cid, false) end k = k + 1 end function onCastSpell(cid, var) doCreatureSetStorage(cid, storage, os.time() + duration) mayNotMove(cid, true) onCastAura(cid, getCreatureLookDirection(cid)) return true endNo spells.xml, adicione uma linha:
A magia tem uma duração de 30 segundos, porém essa duração é configurável. Como ainda não criei uma lógica relacionando o movimento do jogador com a aura, então resolvi travar o movimento do jogador enquanto a magia é executada.
Abaixo a demonstração em GIF dela.
O script está bem pogado, talvez eu consiga entender melhor o padrão e melhorar a construção do código.
Mude aqui efeito e tipo de dano se quiser, para criar outras auras:
Abraços.
Editado Agosto 19 por Oneshot