Implement move borrowing in XBetza
authorH.G.Muller <hgm@hgm-xboard.(none)>
Sun, 31 May 2020 19:15:44 +0000 (21:15 +0200)
committerH.G.Muller <hgm@hgm-xboard.(none)>
Sun, 31 May 2020 19:15:44 +0000 (21:15 +0200)
commit1a2a65557b5e82cb3649db9328efd0ff0d5e9b74
treea4086c818a4e7e256023b24d1edaf8767b05a367
parentb17f0d8ac15d3f245a25c9e02dd010759e6bf3e8
Implement move borrowing in XBetza

The XBetza 'x' modifier can now be used in final legs to indicate move
borrowing from a friendly target. This only works when the target's move
had an XBetza definition (i.e. was defined by a 'piece' command).
Although borrowing from equal type is suppressed, there is a danger
of infinite recursion when two different move borrowers occur in one game.
XBoard tries to suppress recursive move borrowing in general, by not
executing borrowing specs in a borrowed move, but a preceding leg can
hide this.
moves.c