private void addArea(int aTile)
	{
		final byte emptyTile = mField.getTiles().getEmpty().getId();
		TileSet area = new TileSet(mField), newBorders = new TileSet(mField), tempBorders = new TileSet(mField);
		boolean changed;
		area.add(aTile);
		newBorders.add(aTile);
		do
		{
			changed = false;
			for (int tile : newBorders)
			{
				TileSet border = mField.getBorderOf(tile);
				for (int newTile : border)
					if (mField.getTile(newTile) == emptyTile && !area.contains(newTile))
					{
						changed = true;
						area.add(newTile);
						tempBorders.add(newTile);
					}
			}
			newBorders.clear();
			newBorders.addAll(tempBorders);
			tempBorders.clear();
		}
		while (changed);
		mAreas.add(area);
	}