public boolean checkRoom(int... pos) {
			if (pos.length != 2)
				return true;
			if (openedRooms[pos[0]][pos[1]])
				return false;
			if (openedRoomsCount >= structure.getRoomsCount()) // cant happen
				return true;
			Room room = structure.getRooms()[pos[0]][pos[1]];
			if (room == null)
				return true;
			openedRooms[pos[0]][pos[1]] = true;
			openedRoomsCount++;
			final int roomRegionX = mapBaseCoords[0] + (pos[0] * 2);
			final int roomRegionY = mapBaseCoords[1] + (pos[1] * 2);
			RegionBuilder.copy2RatioSquare(room.getRegionX(),
					room.getRegionY(), roomRegionX, roomRegionY,
					structure.getRotations()[pos[0]][pos[1]]);
			int regionId = (((roomRegionX / 8) << 8) + (roomRegionY / 8));
			for (Player player : team) {
				if (!player.getMapRegionsIds().contains(regionId)) // if player
																	// is to
																	// far... no
																	// need to
																	// reload,
																	// he will
																	// reload
																	// when walk
																	// to that
																	// room
					continue;
				player.setForceNextMapLoadRefresh(true);
				player.loadMapRegions();
			}
			return true;
		}