Vou dar um exemplo, como se ele tivesse que entrar em um teleport para acessar a sala:
Vá em data/movements/movements.xml e adicione a tag:
<movevent event="StepIn" fromuid="63001" touid="63016" script="others/questportal.lua" />Agora em data/movements/scripts/others crie o arquivo questportal.lua com o seguinte conteúdo:
local pos = {160, 54, 7} -- posição do centro da sala
local maxX, maxY = 2, 2 -- exemplo para checar uma área de 5 x 5 sqms
function onStepIn(creature, item, position, fromPosition)
local player = creature:getPlayer()
if not player then return true end
local spectators = Game.getSpectators(Position(pos), false, true, 0, maxX, 0, maxY)
if #spectators > 0 then
player:teleportTo(fromPosition)
player:sendTextMessage(MESSAGE_INFO_DESCR, "Ja existe um player fazendo a quest.")
return false
end
player:teleportTo(Position(pos))
player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
return true
end