public void AddElements <T>(GameElements <T> collection) where T : BasePlacement, new() { var cells = collection.GetPlacements(Field); foreach (var cell in cells) { Field.GetCell(cell.IndexRow, cell.IndexColumn).AddGameElement(collection.Element); } }