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 end
Obrigado desde já.