Spell que atinja jogadores fora de nossa tela.

Duuhzinhow
em Scripts

Duuhzinhow

Projeto ViteraOt
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 14/01/14Posts: 276Gênero: MasculinoChar no Tibia: Sonda retro

Galera eu tava aqui pensando... é possivel fazer uma spell que atinja players além da nossa tela? Como?

JustinnoTibianno

chega mais pra você ver (ê ê)
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 30/11/11Posts: 696Gênero: MasculinoChar no Tibia: treinador de lobo

Duvida duvidosa :3

 

aí tu exagerou, leia as regras por favor

Att. João Pedro

zipter98

avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 20/09/12Posts: 2553Gênero: Masculino

Tente ser mais específico no título de seus tópico, por favor. Alterei deste para você.

@dúvida

Só usar getSpectators.

Não respondo PMs solicitando suporte. Já existem seções no fórum para isto.

Duuhzinhow

Projeto ViteraOt
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 14/01/14Posts: 276Gênero: MasculinoChar no Tibia: Sonda retro

:3 ok, desculpa ae, mas então, como faço?

zipter98

avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 20/09/12Posts: 2553Gênero: Masculino

Se você puder explicar detalhadamente como a spell é e funcionará, poderemos te ajudar.

Não respondo PMs solicitando suporte. Já existem seções no fórum para isto.

Duuhzinhow

Projeto ViteraOt
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 14/01/14Posts: 276Gênero: MasculinoChar no Tibia: Sonda retro

Assim, eu fiz essa spell, certinho... mas gostaria de fazer outra, com essa base, mas a outra teria efeito em todos os players online, tem como fazer isto?

 

 

 

local newPos = {x = 1248, y = 728, z = 7} --pos pra onde sera levado o target
local time = 20 --tempo pra teleporta devolta, em segs
local function teleport(cid, pos)
if isCreature(cid) then
doTeleportThing(cid, getClosestFreeTile(cid, pos))
doSendMagicEffect(getPlayerPosition(cid), 196)
end
end
function onCastSpell(cid, var)
local target = getCreatureTarget(cid)
if not isCreature(target) then
return doPlayerSendTextMessage(cid, 27, "Tem que atacar alguem seu burro!")
end
local posTarget = getPlayerPosition(target)
teleport(target, newPos)
addEvent(teleport, time*1000, target, posTarget)
return true
end
Se possivel, eu gostaria que essa spell, tivesse efeito em todos os players online...

zipter98

avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 20/09/12Posts: 2553Gênero: Masculino

Você é scripter, certo? Então, suponho que conseguirá colocar esta seguinte parte no código da spell desejada.

 

   for a, b in pairs(getPlayersOnline()) do
        doSendMagicEffect(getThingPos(b), effect)
    end

Não respondo PMs solicitando suporte. Já existem seções no fórum para isto.

Duuhzinhow

Projeto ViteraOt
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 14/01/14Posts: 276Gênero: MasculinoChar no Tibia: Sonda retro

Certo, sou scripter, mas totalmente novato, ainda nao sei desenvolver totalmente o que eu quero,spells q eu crio, é apartir de outras, editando-as, assim como actions, talkactions, vocaçoes... etc, vou tentar adicionar na spell, mas se voce poder adicionar para mim serei grato!

 

rep+


éh... axo que eu nao consegui '-'... devo ter feito algo errado... adiciona pra mim.. pf? nao custa nada... :)

zipter98

avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 20/09/12Posts: 2553Gênero: Masculino

Hm, vai ser basicamente aquela spell que você mandou + o efeito em todos os jogadores online?

Não respondo PMs solicitando suporte. Já existem seções no fórum para isto.

meubk

@miillerdomingues
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 21/04/08Posts: 311

a magia não é só o efeito zipter, ela tbem teleporta os players, enfim:

local newPos = {x = 1248, y = 728, z = 7} --pos pra onde sera levado o target
local time = 20 --tempo pra teleporta devolta, em segs

local function teleport(cid, pos)
	if isCreature(cid) then
		doTeleportThing(cid, getClosestFreeTile(cid, pos))
		doSendMagicEffect(getPlayerPosition(cid), 196)
	end
end

function onCastSpell(cid, var)
	for _, target in pairs(getPlayersOnline()) do
		local posRetorno = getThingPos(target)
		teleport(target, newPos)
		addEvent(teleport, time*1000, target, posRetorno)
	end
	return true
end

Duuhzinhow

Projeto ViteraOt
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 14/01/14Posts: 276Gênero: MasculinoChar no Tibia: Sonda retro

Vou testar, se funcionar perfeitamente rep+, qualqer erro eu posto aqui


Ae funcionou, rep+ xotservx

zipter98

avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 20/09/12Posts: 2553Gênero: Masculino

Tópico movido para a seção de dúvidas e pedidos resolvidos.

Não respondo PMs solicitando suporte. Já existem seções no fórum para isto.