SO
talkaction

Teleportando Todos De Uma Sala Pro Templo Menos Um!

Por sourock, 10 de nov. de 2012 em Scripts

teleporta todos meus o do sqm
script
12
1.8k
sourockS
10 de novembro de 2012 às 03:41

ai pessoal, queria um script assim, que quando eu falace por exemplo !out todos players de uma sala seriam teleportados para o templo menos 1 player que no caso estaria no tile especial.

 

acho que não deve ser tão dificil, agradeço a todos smile.png

 

DOU REP+

caoticC
10 de novembro de 2012 às 10:42

Areá Incorreta

Tópico Movido

sourockS
10 de novembro de 2012 às 15:37

alguem me ajuda pelo amor de deus

VodkartzinV
10 de novembro de 2012 às 15:42

qro as coordenada do começo e final a area

 

dps qro a pos do tile q o player n eh removido

 

vlw

sourockS
10 de novembro de 2012 às 16:53

Canto esquerdo de cima [X: 236] [Y: 11] [Z: 4]

Canto direto de cima [X: 242] [Y: 11] [Z: 4]

Canto esquerdo de baixo [X: 236] [Y: 17] [Z: 4].

Canto direto de baixo [X: 242] [Y: 17] [Z: 4].

 

Cordenada do tile especial que não será teleportado [X: 239] [Y: 11] [Z: 4]

 

e eu que agradeço, por favor me ajude mesmo to desesperado atras disso.

Editado Novembro 10 por Admzurgg

VodkartzinV
10 de novembro de 2012 às 17:02

tenta assim

 

function onSay(cid, words, param)
local from,to = {x = 236, y = 11, z = 4},{x = 242, y = 17, z = 4}
local special_tile = {x = 239, y = 11, z = 4}
for _, pid in pairs(getPlayersOnline()) do
if isInRange(getCreaturePosition(pid), from, to) and getCreaturePosition(pid).x ~= special_tile.x or getCreaturePosition(pid).y ~= special_tile.y or getCreaturePosition(pid).z ~= special_tile.z then 
doTeleportThing(pid, getTownTemplePosition(getPlayerTown(pid)))
end
end
return true
end

sourockS
10 de novembro de 2012 às 17:57

Intão, funcionouj parcialmente, unico erro é que ao invez de só os players da sala irem pro templo todos os players do server tão indo do templo.

VodkartzinV
10 de novembro de 2012 às 18:04

lol? q bug

 

 

aqui n deu isso, mas tenta assim

 

 

function onSay(cid, words, param)
local from,to = {x = 185, y = 54, z =7},{x = 193, y = 61, z = 7}
local special_tile = {x = 188, y = 57, z = 7}
for _, pid in pairs(getPlayersOnline()) do
if isInRange(getCreaturePosition(pid), from, to) then
if getCreaturePosition(pid).x ~= special_tile.x or getCreaturePosition(pid).y ~= special_tile.y or getCreaturePosition(pid).z ~= special_tile.z then 
doTeleportThing(pid, getTownTemplePosition(getPlayerTown(pid)))
end
end
end
return true
end

sourockS
10 de novembro de 2012 às 18:38

Agora sim funcionou perfeitamente ^^ já deixei meu rep+, só uma ultima coisa se não for incomodar muito, teria como por pra quando eu falace /out dai teleportace os da sala normal e aparecesse uma msg assim: Final do Evento do Castelo, e ganhador foi: {Nome do Player} se fizer isso pra mim ou ser grato eternamente.

VodkartzinV
10 de novembro de 2012 às 19:19
function onSay(cid, words, param)
local from,to,special_tile,name = {x = 236, y = 11, z = 4},{x = 242, y = 17, z = 4},{x = 239, y = 11, z = 4},""
for _, pid in pairs(getPlayersOnline()) do
if isInRange(getCreaturePosition(pid), from, to) then
if getCreaturePosition(pid).x == special_tile.x and getCreaturePosition(pid).y == special_tile.y and getCreaturePosition(pid).z == special_tile.z then
name = getCreatureName(pid) 
else
doTeleportThing(pid, getTownTemplePosition(getPlayerTown(pid)))
end
end
end
return doBroadcastMessage("Final do Evento do Castelo, e ganhador: "..(name == "" and "Não houve ganhador." or name))
end

Editado Novembro 10 por Vodkartzin

sourockS
11 de novembro de 2012 às 02:24

Perfeito, sem comentários, excelente, podem fechar o tópico.

 

Dúvida Sanada !

StigalS
11 de novembro de 2012 às 02:44

Duvida Sanada.

Movido.

 

Obrigado ao Vodkartzin por ter ajudado.

Atenciosamente, Stigal.