Eu ia dizer pra voce abilitar /a 2 pros players mais creio que nao vai querer fazer isto
Eu ia dizer pra voce abilitar /a 2 pros players mais creio que nao vai querer fazer isto
é nem rola ne, ja q isso ae é tipo uma magia e nao um comando de god, pow ninguem sabe fazer?
???..
info
Grupo: Campones
Registrado: 10/10/10
Posts: 26
Reputação: +2

eu tentei unir o utani hur com uma parte do /a que fala qnts tile vai pular e....
Quando eu tentei usar deu debug no meu ot!!!!!!!!
sakpapskas n intendo nada dessas coisa -.- Mas qria poder ajudar ![]()
info
Grupo: Campones
Registrado: 18/01/10
Posts: 17
Reputação: +34
Char no Tibia: NemTeConto

Olá, vim tentar acabar com suas preocupações ![]()
fiz uma magia mt parecida, as coisas diferentes é que: ela manda apenas um efeito de mort, no meio do caminho e, ele não é "teleportado", ele anda mas, bem rápido! Acho q vc vai gostar também pq se tiver algum obstáculo na frente, ele irá automaticamente desviar dele, mas não atravessará!, unico problema é que utiliza uma função nova, do Dokmos (um grande scripter!)
mas postarei a função, veja como instalar:
Função do Dokmos: Vá até data/lib/000-constant.lua e, adicione isso:
------------------ Function doPushCreature(uid,direction,distance,time) by Dokmos ------------------function doPushCreature(uid,direction,distance,time)
if isCreature(uid) == TRUE then
local rand = (2*math.random(0,1))-1
local rand2 = math.random(-1,0)
if direction == 0 then
signal = {0,rand,-rand,rand,-rand,0,-1,-1,-1,0,0,0}
elseif direction == 1 then
signal = {1,1,1,0,0,0,0,rand,-rand,rand,-rand,0}
elseif direction == 2 then
signal = {0,rand,-rand,rand,-rand,0,1,1,1,0,0,0}
elseif direction == 3 then
signal = {-1,-1,-1,0,0,0,0,rand,-rand,rand,-rand,0}
elseif direction == 4 then
signal = {-1,rand2,(-rand2)-1,0,1,rand2+1,rand2,0}
elseif direction == 5 then
signal = {1,-rand2,-((-rand2)-1),0,1,rand2+1,rand2,0}
elseif direction == 6 then
signal = {-1,rand2,(-rand2)-1,0,-1,(-rand2)-1,rand2,0}
else
signal = {1,-rand2,-((-rand2)-1),0,-1,(-rand2)-1,rand2,0}
end
local pos = getThingPos(uid)
nsig = #signal
nvar = 0
repeat
nvar = nvar+1
newpos = {x=pos.x+(signal[nvar]),y=pos.y+(signal[(nsig/2)+nvar]),z=pos.z}
newtile = {x=newpos.x,y=newpos.y,z=newpos.z,stackpos=0}
until getTileThingByPos(newtile).uid ~= 0 and hasProperty(getTileThingByPos(newtile).uid,3) == FALSE and queryTileAddThing(uid,newpos) == 1 or nvar == (nsig/2)
if distance == nil or distance == 1 then
doTeleportThing(uid,newpos,TRUE)
else
distance = distance-1
doTeleportThing(uid,newpos,TRUE)
if time ~= nil then
addEvent(doPushCreature,time,uid,direction,distance,time)
else
addEvent(doPushCreature,500,uid,direction,distance,500)
end
end
end
end
após adicionar isso vá para data/spells/scripts e crie um arquivo.lua chamado pull(inventei)
e cole isso nele
(curto ele né?)function onCastSpell(cid, var)doPushCreature(cid,getPlayerLookDir(cid), 3, 0) -- o número 3 significa distancia,nao mexe no zero
doSendMagicEffect(getPlayerPosition(cid), 17)-- efeito de mort
end
Aí no data/spells/spells.xml adicione a seguinte tag:
<instant name="Dash" words="dash" lvl="0" mana="0" prem="0" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="pull.lua"><vocation id="0"/>
<vocation id="1"/>
<vocation id="2"/>
<vocation id="3"/>
<vocation id="4"/>
<vocation id="5"/>
<vocation id="6"/>
<vocation id="7"/>
<vocation id="8"/>
</instant>
edite o lugar q vc colocou la no pull.lua (se vc colocou support healing ou etc.)
as palavras/nome/mana vc deve saber editar. se te agradei por favor me da rep+ :button_ok:
OBS: TESTEI NO THE FORGOTTEN SERVER 8.54, MAS ACHO QUE FUNCIONA NO ALISSOW!
Editado Dezembro 23 por JeDiAN
Cara muito obrigado, ajudou bastante e ta funcionando sim, mais tem um porem, tipo.. configurei tudo certinho la na spells.lua mais tipo, nao ta usando mana e ta sem exausted, no arquivo ta tudo ok, mais in game nao ta usando mana nem exausted.. e na hora de falar a magia nao aparece tipo ''Pull''... sera q daria pra ver isso? de resto mto obrigado mesmo, to no aguardo.
info
Grupo: Campones
Registrado: 18/01/10
Posts: 17
Reputação: +34
Char no Tibia: NemTeConto

Aeee! ta pegando
, de aparecer "Pull" eu não sabia que vc queria :S, mas se quiser, da pra fazer de boa, to vendo da mana e do exhausted. ![]()
-----Edit
Arrumei, fico certin, pra mudar a cor do "Pull" é só mudar o número 180 que tem no script pra outro qualquer, vou te dar umas idéias de cores e seus respectivos números veja:
Azul = 5
Azul Claro = 35
Verde = 55
Verde Claro = 30
Cinza Claro = 172
Vermelho = 180
Laranja = 198
Branco(usado na exp) = 215
Roxo = 255
pronto e agora vai o script (finalmente)
function onCastSpell(cid, var) --By Jedian--doPushCreature(cid,getPlayerLookDir(cid), 3, 0) -- o número 3 significa distancia,nao mexe no zero
doSendMagicEffect(getPlayerPosition(cid), 17)-- efeito de mort
doSendAnimatedText(getPlayerPosition(cid), 'Pull', 180)
return TRUE
end
Se te ajudei rep + please
é que quero treinar bastante script aqui nos pedidos e então ir ficando popular ![]()
flw
Editado Dezembro 24 por JeDiAN
Ae cara, agora ta certinho com exausted e tudo mais, realmente so ficou faltando os dois efeitos de mort igual a foto la em cima ne
mais ta otimo assim, vlw mesmo, se prepare q tenho mais pedidos em? rs +rep
Resolvido se alguem quiser fexar pode.
Editado Dezembro 25 por gahgah
info
Grupo: Artesão
Registrado: 15/01/12
Posts: 100
Reputação: +9
Char no Tibia: Leon Of Pandoria

aew vlws mais eu qria tpw q se ela fosse andar exemplo 5qsm os 4 sqm atras ficasse com o efeito mort
info
Grupo: Visconde
Registrado: 23/02/08
Posts: 273
Reputação: +101
Char no Tibia: Foxx Rookslayer

function onCastSpell(cid, var) for x=1,3 do if not isWalkable(getPlayerLookPos(cid)) then break end doSendMagicEffect(getThingPos(cid), 2) doMoveCreature(cid,getPlayerLookDir(cid)) end return TRUE end





info
Grupo: Campones
Registrado: 22/07/08
Posts: 56
Reputação: +5
Resolvido.
Editado Fevereiro 9 por gahgah