SebLague / Chess-Challenge

Create your own tiny chess bot!

Home Page:https://www.youtube.com/watch?v=Ne40a5LkK6A

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

There should be a quick way to check for only legal moves with checks and captures.

mrgwbland opened this issue · comments

You can get just the legal moves which are captures so why not for checks as well? It would be a lot better than having to do the following code:
Move[] legalMoves = board.GetLegalMoves();
foreach (Move move in legalMoves)
{
board.MakeMove(move);
if (move.IsCapture||board.IsInCheck())
{
code
}
else board.UndoMove(move);
}

The API cannot check if the board is in check without actually playing the move and then checking if the board is in check.

Edward is correct, and it's probably not getting changed, so you'll have to just spend the tokens if you want a list of checking moves