function getPlayersInArea(area)
local players = {}
for x = area.fromx,area.tox do
for y = area.fromy,area.toy do
for z = area.fromz,area.toz do
local m = getTopCreature({x=x, y=y, z=z}).uid
if m ~= 0 and isPlayer(m) then
table.insert(players, m)
end
end
end
end
return players
end
6
1.5k
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

05 de maio de 2012 às 19:44
Editado Maio 5 por Vodkart
05 de maio de 2012 às 19:58
Muito obrigad, mano! Funcinou perfeito!
A proposito, você está na Poke Legendds? Sou o responsável web da equipe.
05 de maio de 2012 às 20:00
Valeu ai vodkart fiz outra funçao com isso
Editado Maio 5 por Zmovir
info
Grupo: Cavaleiro
Registrado: 13/11/11
Posts: 190
Reputação: +20
Char no Tibia: Sweesh

05 de maio de 2012 às 23:28
tklucas, voce poderia postar todo o script pra agente poder usar tmb?








info
Grupo: Campones
Registrado: 23/07/09
Posts: 29
Reputação: +9
Boa noite, estou tentando fazer uma action que ao usar um item procure em uma determinada área, se existe algum player. Infelizmente o script está retornando uma tabela vazia.
- function getPlayersInArea
function getPlayersInArea(area) local players = {} for x = area.fromx,area.tox do for y = area.fromy,area.toy do for z = area.fromz,area.toz do playerpos = {x=x,y=y,z=z,stackpos=253} player = getTileThingByPos(playerpos) if isPlayer() == TRUE then table.insert(players, player.uid) end end end end return players end- a action.lua
local area = { fromx = 796, fromy = 1378, fromz = 0, tox = 806, toy = 1388, toz =1 } l local pos = {x=806, y=1383, z=0} function onUse(cid,item,frompos,item2,topos) players = getPlayersInArea(area) if #players >= 1 then doPlayerSendCancel(cid, 'Existe(m) player(s) na area definida.') doPlayerPopupFYI(cid, #players) else doTeleportThing(cid,pos) doPlayerPopupFYI(cid, #players) [color=#b22222]-- adicionei aqui para teste e só recebo aparece valor zero.[/color] end return TRUE endObrigado desde já.