считай объёмы, в твоём случае площади, если если карта из квадратов, это будет довольно просто, вода всегда льётся вниз, нарисуй её путь, и посчитай какая площадь должна слиться с источника, постепенно наполняй конечную площадь, на площадь слитой воды. Площадь сливаемой воды определяй по количеству блоков воды(площади), выше уровня новой дырки в сосуде.
Это так скажем минимум. Можешь добавить влияние высоты столба уровня воды(струи), постепенный слив с изменением линии поверхности воды, учитывать объём(площадь) сливаемой воды(между сосудами) и тд...
Но подумай, насколько оно тебе надо, как это будет влиять на геймплей и нагрузку на железо.