public static void E (int m, int n) {
Console.WriteLine($"Делим {m} на {n}");
T++;
int q = m%n;
if (q==0) {
Console.WriteLine("Наибольший общий делитель " + n);
Console.WriteLine("Количество шагов " + T);
} else E (n, q);
}
Тогда:
1. Снабдить все, расставляемые вручную префабы компонентом Building.
2. В методе Start собрать существующие объекты в массив с помощью FindObjectsOfType(typeof(Building)). Например:
3. Там же перебрать и скопировать все элементы этого массива в существующий массив Building[,] grid: с помощью инструкции, аналогичной той, что используется в StartPlacingBuilding:
p.s. Далее личные рекомендации, которые не являются истиной:
На мой взгляд, здесь лучше реализовать паттерн Observer, чтобы каждый дом сообщал о своей установке, а менеджер проверял все условия. Объекты домов лучше хранить в списке, а не в массиве, а сам массив сделать чисто булевым для проверки свободного места.