I've a space game with tilemap that looks like this (simplified):
Map view - from top (like in SimCity 1)
0 - room space, 1 - some kind of wall, 8 - "lock" beetween rooms
 public int[,] _layer = new int[,]   
        {
         { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, 
         { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
         { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
         { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
         { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
         { 1, 1, 8, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
         { 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
         { 0, 1, 0, 8, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, 
         { 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
         { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
         { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
    };
Each tile contains Air property (100 = air, 0 = vacuum).
I made a little helper method to take tiles near tile with vacuum (to "suck air"):
 Point[] GetNearCells(Point cell, int distance = 1, bool diag = false)
    {
        Point topCell = new Point(cell.X, cell.Y - distance);
        Point botCell = new Point(cell.X, cell.Y + distance);
        Point leftCell = new Point(cell.X - distance, cell.Y);
        Point rightCell = new Point(cell.X + distance, cell.Y);
        if (diag)
        {
            return new[] { topCell, botCell, leftCell, rightCell };
        }
        Point topLeftCell = new Point(cell.X - distance, cell.Y - distance);
        Point topRightCell = new Point(cell.X + distance, cell.Y + distance);
        Point botLeftCell = new Point(cell.X - distance, cell.Y - distance);
        Point botRightCell = new Point(cell.X - distance, cell.Y - distance);
        return new[] { topCell, botCell, leftCell, rightCell, topLeftCell, topRightCell, botLeftCell, botRightCell };
    }
What is the best practice to fill rooms with vacuum (decrease air) from some point?
Should i use some kind of water flow?
Thank you for any help!