public override int SelectMove(Board b, int lastColumn, int color) { while (true) { var d = Console.ReadKey(true); if (char.IsDigit(d.KeyChar)) { var column = Decimals.IndexOf(d.KeyChar); if (column < 7) { var m = new Move(column, color); if (b.IsLegalMove(m)) { return(m.Column); } } } } }
protected static List <int> PossibleMoves(Board b) { return(Enumerable.Range(0, 7).Where(column => b.IsLegalMove(new Move(column, 1))).ToList()); }