Ir para conteúdo
  • 0

Spell de ilusão Ajuda Vodkart


Allangod

Pergunta

Eu tava jogando um servidor esses dias, e tinha uma spell que faz somente o meu target vê meio que algumas ilusões.

Essa spell aqui faz que quando eu usar essa magia no target, só eu consigo ver quem é o clone verdadeiro.

 

function onCastSpell(cid, var)

 

local target = getCreatureTarget(cid)

 

if not isCreature(target) then doPlayerSendCancel(cid, "You need a target.")

return false end

 

local master = getCreatureMaster(target)

 

if not isPlayer(master) then doPlayerSendCancel(cid, "This spell works only against players.")

return false end

 

local function revelar(cid, target, times)

if not isCreature(cid) or not isCreature(target) or times <= 0 then return end

doSendMagicEffect(getThingPos(target), CONST_ME_TUTORIALSQUARE, cid)

doSendMagicEffect(getThingPos(target), CONST_ME_TUTORIALARROW, cid)

addEvent(revelar, 450, cid, target, times - 1)

end

 

revelar(cid, master, 10)

 

return true

end

 

Talvez dê para se basear nela, sei la.

Eu só queria que quando eu usasse no target essa spell, aparecesse uns efeitos de magias e etc somente na tela dele (do meu target).

Sei que é qse impossivel mas qm conseguir REP+

Vlws

Editado por Allangod
Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0

basta colocar o terceiro parâmetro da função doSendMagicEffect com o uid do target, que aparece só para ele

basta colocar o terceiro parâmetro da função doSendMagicEffect com o uid do target, que aparece só para ele

 

Como assim brun? Poderia fazer pra mim?

Link para o comentário
Compartilhar em outros sites

  • 0

function onCastSpell(cid, var)
local target = getCreatureTarget(cid)

if not isCreature(target) then
  doPlayerSendCancel(cid, "You need a target.")
  return false
end

doSendMagicEffect(getPlayerPosition(target), 21, target)
return true
end

isso fara com q soh o target veja o efeito 21...

Link para o comentário
Compartilhar em outros sites

  • 0

Po cara mto obrigado, mas tem como fazer aparecer efeito na tela toda dele?

Mas do mesmo jeito vou dar REP+ pra vcs 2

E tipo... Ele ta mostrando o efeito só 1x, eu queria que o efeito durasse pelo- uns 15 segundos

Editado por Allangod
Link para o comentário
Compartilhar em outros sites

  • 0

tpw quer a o efeito apareça aleatoriamente por toda a tela? ah da pra fazer umas paradas lokas ae com posiçoes e pah.. ;x

local function sendEff(cid, eff, t)
if t > 0 and isCreature(cid) then
  doSendMagicEffect(getPlayerPosition(cid), eff, cid)
  addEvent(sendEff, 1000, cid, eff, t-1)
end
end

local eff = 21 --efeito
local time = 15 --por qnts segs vai aparecer o efeito

function onCastSpell(cid, var)
local target = getCreatureTarget(cid)

if not isCreature(target) then
  doPlayerSendCancel(cid, "You need a target.")
  return false
end

sendEff(target, eff, time)
return true
end

assim sai o efeito durante 15segs..

Link para o comentário
Compartilhar em outros sites

  • 0

local function random(pos)
return {x = pos.x+math.random(-4, 4), y = pos.y+math.random(-4, 4), z = pos.z}
end

local function sendEff(cid, eff, t)
if t > 0 and isCreature(cid) then
  local pos = getPlayerPosition(cid)
  for i = 1, 60 do
   doSendMagicEffect(random(pos), eff, cid)
  end
  addEvent(sendEff, 1000, cid, eff, t-1)
end
end

local eff = 21 --efeito
local time = 15 --por qnts segs vai aparecer o efeito

function onCastSpell(cid, var)
local target = getCreatureTarget(cid)

if not isCreature(target) then
  doPlayerSendCancel(cid, "You need a target.")
  return false
end

sendEff(target, eff, time)
return true
end

oia essa eu realmente n sei se vai da certo kkk

qlqr coisa, se ficar muito efeito sei la.. tenta diminuir aki..

for i = 1, 60 do

diminui, ou aumenta sei la, o 60 ali..

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...