public void Fertiliser(int buff) { if (buff > 1) { int x = Position.Key; int y = Position.Value; Cellule cell = Grille.GetInstance().GetCellule(x + 1, y); if (cell) { cell.Fertiliser(buff - 1); } cell = Grille.GetInstance().GetCellule(x - 1, y); if (cell) { cell.Fertiliser(buff - 1); } cell = Grille.GetInstance().GetCellule(x, y + 1); if (cell) { cell.Fertiliser(buff - 1); } cell = Grille.GetInstance().GetCellule(x, y - 1); if (cell) { cell.Fertiliser(buff - 1); } } }
public HashSet <Cellule> GetInRadius(int radius) { Cellule cellule; HashSet <Cellule> resultList = new HashSet <Cellule> { this }; if (radius < 1) { return(resultList); } cellule = Grille.GetInstance().GetCellule(Position.Key + 1, Position.Value); if (cellule) { resultList.UnionWith(cellule.GetInRadius(radius - 1)); } cellule = Grille.GetInstance().GetCellule(Position.Key, Position.Value + 1); if (cellule) { resultList.UnionWith(cellule.GetInRadius(radius - 1)); } cellule = Grille.GetInstance().GetCellule(Position.Key - 1, Position.Value); if (cellule) { resultList.UnionWith(cellule.GetInRadius(radius - 1)); } cellule = Grille.GetInstance().GetCellule(Position.Key, Position.Value - 1); if (cellule) { resultList.UnionWith(cellule.GetInRadius(radius - 1)); } return(resultList); }