Só se for runa pra escolher onde vai acertar fora isso n sei se tem como =/
info
Grupo: Herói
Registrado: 12/03/11
Posts: 1.9k
Reputação: +284
Gênero: Masculino
Char no Tibia: Nokte

é cara, preciso da mesma coisa... os efeitos estão tortos no cliente e não tem como ajeitar pelo dat editor, alguém da uma luz aqui?
info
Grupo: Marquês
Registrado: 22/07/12
Posts: 1.1k
Reputação: +400
Gênero: Masculino
Char no Tibia: Luck Oake

Na spell, retire a linha com isso:
setCombatParam(combat, COMBAT_PARAM_EFFECT
E abaixo de onCastSpell, coloque:
local eff = 66 -- ID do efeito
local position = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z}
doSendMagicEffect(position, eff)
E ai vai só editando aqui conforme for necessário o ajuste:
local position = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z}
Repare que está getCreaturePosition(cid).x+1, o que significa que o efeito sairá 1 sqm pra direita do player, corrigindo a falha.
Aproveitando, tópico movido.
Editado Outubro 28 por LuckOake
info
Grupo: Herói
Registrado: 12/03/11
Posts: 1.9k
Reputação: +284
Gênero: Masculino
Char no Tibia: Nokte

Luck, pode dar uma exemplo? já dentro de uma spell? sou meio falho em LUA ![]()
info
Grupo: Marquês
Registrado: 22/07/12
Posts: 1.1k
Reputação: +400
Gênero: Masculino
Char no Tibia: Luck Oake

Tó:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)
setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, 1)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)
function onGetFormulaValues(cid, level, maglevel)
min = (level * 2 + maglevel * 3) * 0.5 - 30
max = (level * 2 + maglevel * 3) * 0.6
if min < 25 then
min = 25
end
return min, max
end
setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
function onCastSpell(cid, var)
local eff = 12 -- Efeito
local position = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z}
doSendMagicEffect(position, eff)
return doCombat(cid, combat, var)
end
Peguei de exemplo a spell exura.
Editado Outubro 28 por LuckOake
info
Grupo: Herói
Registrado: 12/03/11
Posts: 1.9k
Reputação: +284
Gênero: Masculino
Char no Tibia: Nokte

Boa cara, valeu ai ![]()
info
Grupo: Campones
Registrado: 29/12/11
Posts: 67
Reputação: +3
Char no Tibia: NOt

Luck e se eu Quiser Vários Efeitos sacas ?
e Tipo poderia fazer tbm pelo modo de target?
Exemplo: Pegaria em volta do player target
Editado Outubro 28 por nickissonlobo
info
Grupo: Marquês
Registrado: 22/07/12
Posts: 1.1k
Reputação: +400
Gênero: Masculino
Char no Tibia: Luck Oake

Com target é só fazer assim:
local eff = 12 -- Efeito
local target = getCreatureTarget(cid)
local position = {x=getCreaturePosition(target).x+1, y=getCreaturePosition(target).y, z=getCreaturePosition(target).z}
doSendMagicEffect(position, eff)
Se você quiser vários efeitos, só fazer igual tá ai em cima ajustando de acordo com sua vontade.
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

ou usar tabela tb ^^
local target = getCreatureTarget(cid)
local effs = {
{11, {x=getCreaturePosition(target).x+1, y=getCreaturePosition(target).y, z=getCreaturePosition(target).z} },
{21, {x=getCreaturePosition(target).x, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z} },
{31, {x=getCreaturePosition(target).x+1, y=getCreaturePosition(target).y, z=getCreaturePosition(target).z} },
{41, {x=getCreaturePosition(target).x+1, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z} },
}
for i = 1, #effs do
doSendMagicEffect(effs[i][2], effs[i][1])
end
no caso 11 21 31 41 sao os effeitos e o resto as posiçoes aonde eles vao sair...
info
Grupo: Campones
Registrado: 29/12/11
Posts: 67
Reputação: +3
Char no Tibia: NOt

tem como eu por tipo um tempo pra um efeito pro outro ?
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

se for usar tabela..
local target = getCreatureTarget(cid)
local effs = {
{11, {x=getCreaturePosition(target).x+1, y=getCreaturePosition(target).y, z=getCreaturePosition(target).z} },
{21, {x=getCreaturePosition(target).x, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z} },
{31, {x=getCreaturePosition(target).x+1, y=getCreaturePosition(target).y, z=getCreaturePosition(target).z} },
{41, {x=getCreaturePosition(target).x+1, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z} },
}
local tempo = 200 --200 milesimos
for i = 1, #effs do
addEvent(doSendMagicEffect, i*tempo, effs[i][2], effs[i][1])
end
Editado Outubro 29 por Slicer
info
Grupo: Campones
Registrado: 29/12/11
Posts: 67
Reputação: +3
Char no Tibia: NOt

e se for usar do outro modo ?
não estou exigindo é só para completar a minha duvida
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

local eff = 12 -- Efeito
local target = getCreatureTarget(cid)
local position = {x=getCreaturePosition(target).x+1, y=getCreaturePosition(target).y, z=getCreaturePosition(target).z}
addEvent(doSendMagicEffect, 200, position, eff)
info
Grupo: Campones
Registrado: 29/12/11
Posts: 67
Reputação: +3
Char no Tibia: NOt

Deu certinho Muito Obrigado ![]()




info
Grupo: Campones
Registrado: 29/12/11
Posts: 67
Reputação: +3
Char no Tibia: NOt
Quero Uma Spell que eu saia um efeito só, e que eu possa escolher onde esse efeito vai sair
Ela será de area que vai sair o efeito em quem solta, mas quero que o efeito vá para a direita
Porque se não fica estranho a spell, segue uma print abaixo :
tem um script que chega ela para o lado que eu quiser, mais ele leva junto o dano da magia.
rep++ para quem ajudar ;d