Postado Maio 8, 2022 3 anos Olá, gostaria que fosse adicionado um teleport nessa spell. Consistiria no seguinte, essa spell é um cannon igual o super kamehameha dos dbo's, eu precisaria que ao utilizar essa spell, o player se teleportasse 5 sqm na direção que ele ta olhando e soltando a spell. Até consegui utilizar alguns scripts de teleport mas eles tinham um problema em comum, que quando eu teleporto a spell sai depois do teleport, e eu preciso que saia meio segundo antes de teleportar. Se puder adicionar o delay do teleport também vai ajudar muito. Lembrando que o teleport não pode atravessar objetos, paredes e entrar em protection zone. Dai ao sair o efeito o player apareceria no final do effect parecendo que ele deu um dash. local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 112) local arr1 = { {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {1, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 2, 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 area1 = createCombatArea(arr1) setCombatArea(combat1, area1) local combat2 = createCombatObject() setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat2, COMBAT_PARAM_EFFECT, 111) local arr2 = { {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 1, 0, 0, 0}, {0, 2, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, } local area2 = createCombatArea(arr2) setCombatArea(combat2, area2) local combat3 = createCombatObject() setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat3, COMBAT_PARAM_EFFECT, 110) local arr3 = { {0, 0, 0, 0, 0}, {0, 0, 1, 2, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, } local area3 = createCombatArea(arr3) setCombatArea(combat3, area3) local combat4 = createCombatObject() setCombatParam(combat4, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) setCombatParam(combat4, COMBAT_PARAM_EFFECT, 113) local arr4 = { {0, 0, 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, 2, 0}, {0, 0, 0, 0, 0}, } local area4 = createCombatArea(arr4) setCombatArea(combat4, area4) local combat5 = createCombatObject() setCombatParam(combat5, COMBAT_PARAM_HITCOLOR, COLOR_YELLOW) setCombatParam(combat5, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) function onGetFormulaValues(cid, level, maglevel) min = -((10) * (maglevel + level)) max = -((12) * (maglevel + level)) return min, max end setCombatCallback(combat5, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") local arr5 = { {0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 1, 1, 1, 1, 0, 0, 0}, {0, 1, 1, 1, 1, 1, 2, 0, 0}, {0, 0, 1, 1, 1, 1, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0, 0}, } local area5 = createCombatArea(arr5) setCombatArea(combat5, area5) local combat6 = createCombatObject() setCombatParam(combat6, COMBAT_PARAM_HITCOLOR, COLOR_YELLOW) setCombatParam(combat6, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) function onGetFormulaValues(cid, level, maglevel) min = -((10) * (maglevel + level)) max = -((12) * (maglevel + level)) return min, max end setCombatCallback(combat6, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") local arr6 = { {0, 0, 0, 0, 0, 0 ,0}, {0, 0, 0, 0, 0, 0, 0}, {0, 1, 1, 1, 1, 0, 0}, {2, 1, 1, 1, 1, 1, 0}, {0, 1, 1, 1, 1, 0, 0}, {0, 0, 0, 0, 0, 0, 0}, } local area6 = createCombatArea(arr6) setCombatArea(combat6, area6) local combat7 = createCombatObject() setCombatParam(combat7, COMBAT_PARAM_HITCOLOR, COLOR_YELLOW) setCombatParam(combat7, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) function onGetFormulaValues(cid, level, maglevel) min = -((10) * (maglevel + level)) max = -((12) * (maglevel + level)) return min, max end setCombatCallback(combat7, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") local arr7 = { {0, 0, 0, 2, 0}, {0, 0, 1, 1, 1}, {0, 0, 1, 1, 1}, {0, 0, 1, 1, 1}, {0, 0, 1, 1, 1}, {0, 0, 0, 1, 0}, {0, 0, 0, 0, 0}, } local area7 = createCombatArea(arr7) setCombatArea(combat7, area7) local combat8 = createCombatObject() setCombatParam(combat8, COMBAT_PARAM_HITCOLOR, COLOR_YELLOW) setCombatParam(combat8, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE) function onGetFormulaValues(cid, level, maglevel) min = -((10) * (maglevel + level)) max = -((12) * (maglevel + level)) return min, max end setCombatCallback(combat8, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") local arr8 = { {0, 0, 0, 0, 0}, {0, 0, 0, 1, 0}, {0, 0, 1, 1, 1}, {0, 0, 1, 1, 1}, {0, 0, 1, 1, 1}, {0, 0, 1, 1, 1}, {0, 0, 0, 2, 0}, } local area8 = createCombatArea(arr8) setCombatArea(combat8, area8) function zzz3(cid) if getCreatureLookDirection(cid) == 1 then doCombat(cid, combat1, numberToVariant(cid)) doCombat(cid, combat5, numberToVariant(cid)) elseif getCreatureLookDirection(cid) == 3 then doCombat(cid, combat2, numberToVariant(cid)) doCombat(cid, combat6, numberToVariant(cid)) elseif getCreatureLookDirection(cid) == 0 then doCombat(cid, combat3, numberToVariant(cid)) doCombat(cid, combat7, numberToVariant(cid)) elseif getCreatureLookDirection(cid) == 2 then doCombat(cid, combat4, numberToVariant(cid)) doCombat(cid, combat8, numberToVariant(cid)) end end function zzz2(cid) addEvent(zzz3,100,cid) end function zzz1(cid) addEvent(zzz2,100,cid) end function onCastSpell(cid, var) local tempo = 1 -- Tempo de exhaustion em segundos local sto = 12001 -- Storage de Spell, nunca usar a mesma em outra spell, a menos que não queira usar duas spell juntas! if exhaustion.check(cid, sto) then doPlayerSendCancel(cid, "Aguarde 1 segundo para usar o ataque novamente.") return false end addEvent(zzz3,100,cid) exhaustion.set(cid, sto, tempo) return true end
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.