Players/monstros em uma área

AnneMotta
em Scripts

AnneMotta

o choro pode durar uma noite mas a alegria vem pela manha ♪
avatar
Banidos
Banidos

INFOS

Grupo: BanidosRegistrado: 22/01/12Posts: 842Char no Tibia: Stephan

Olá, gostaria de saber como eu verifico se tem players/monstros em uma certa área... Exemplo:

 

quadriculado-1.png

 

Como eu posso fazer para um script verificar quem esta dentro desta área?

Supondo que eu faça um script que quem estiver nessa área ira ganhar um item, como eu poderia fazer para verificar quem esta lá?

RIP AnneMotta 21/01/2012 - 15/01/2014

Liga das lendas: RUSHEI B1 DE AWP

owi6giO.png

Zaruss

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 31/08/13Posts: 93Char no Tibia: Evarin Thin

Assim

local config = {
     fromPosition = {x = 856, y = 785, z = 7}, -- começo da area
     toPosition = {x = 876, y = 810, z = 7}, -- fim da area
}
if isInArea(getPlayerPosition(cid), config.fromPosition, config.toPosition) then
   doPlayerAddItem(cid, item, count)
end

ou assim:

local config = {
fromPosition = {x = 856, y = 785, z = 7}, -- começo da area
toPosition = {x = 876, y = 810, z = 7}, -- fim da area
}

for x = config.fromPosition.x, config.toPosition.x do
  for y = config.fromPosition.y, config.toPosition.y do
    for z = config.fromPosition.z, config.toPosition.z do
      area = {x = x, y = y, z = z, stackpos = 253}
      allplayers = getThingfromPos(area)
      if isPlayer(allplayers.uid) then
      doPlayerAddItem(cid, item, count)
      end
     end
  end
end

pra ve se tem monsters e so trocar o isPlayer por isMonster

Benny

nvr gv p
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 22/12/12Posts: 1958Gênero: MasculinoChar no Tibia: Marley

 

Assim

local config = {
     fromPosition = {x = 856, y = 785, z = 7}, -- começo da area
     toPosition = {x = 876, y = 810, z = 7}, -- fim da area
}
if isInArea(getPlayerPosition(cid), config.fromPosition, config.toPosition) then
   doPlayerAddItem(cid, item, count)
end

ou assim:

local config = {
fromPosition = {x = 856, y = 785, z = 7}, -- começo da area
toPosition = {x = 876, y = 810, z = 7}, -- fim da area
}

for x = config.fromPosition.x, config.toPosition.x do
  for y = config.fromPosition.y, config.toPosition.y do
    for z = config.fromPosition.z, config.toPosition.z do
      area = {x = x, y = y, z = z, stackpos = 253}
      allplayers = getThingfromPos(area)
      if isPlayer(allplayers.uid) then
      doPlayerAddItem(cid, item, count)
      end
     end
  end
end

 

Foda

REP +

?

 

AnneMotta

o choro pode durar uma noite mas a alegria vem pela manha ♪
avatar
Banidos
Banidos

INFOS

Grupo: BanidosRegistrado: 22/01/12Posts: 842Char no Tibia: Stephan

Muito obrigado Zaruss, vou testar aqui em algo que eu estava pensando e já venho aqui dizer se saiu tudo como eu queria.

 

 

Obrigado mais uma vez Zaruss, funcionou perfeitamente...

RIP AnneMotta 21/01/2012 - 15/01/2014

Liga das lendas: RUSHEI B1 DE AWP

owi6giO.png

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.