Chess.js 图书馆。确定赢家和输家

Chess.js library. Determine winner and loser

使用 chess.js 库(参见 link),我可以通过使用 game_over() 函数知道国际象棋游戏是否结束。

但是我怎么知道谁赢谁输呢?

in_checkmate()

Returns 如果要移动的一侧已被将死,则为 true 或 false。

结合turn(),它会告诉你赢家/输家(如果不是平局)。

根据文档:game_over "Returns true if the game has ended via checkmate, stalemate, draw, threefold repetition, or insufficient material"。所以这也可能是平局。

我会检查:

  1. 如果游戏以将死结束(有一个功能),看看谁最后移动 => 获胜者
  2. 否则平局

不过请记住,下棋也可以通过对方辞职或 运行 超时来赢得比赛。

你会检查

chess.in_checkmate();

先看看对方在最后一回合有没有把这边制住。如果没有,则游戏结束。