Fix legality of promotion to King
authorH.G. Muller <h.g.muller@hccnet.nl>
Mon, 10 Jan 2011 16:56:04 +0000 (17:56 +0100)
committerH.G. Muller <h.g.muller@hccnet.nl>
Mon, 10 Jan 2011 16:56:04 +0000 (17:56 +0100)
commit3714a5dd8d476d35a7e348d22a3de8f04a428e2d
tree7194e609e7c64f3ac3417edaa3feddb301bc3e71
parentc7a129ead81286990efb8409f238c48c7109c83b
Fix legality of promotion to King

The count for a piece type was not increased on promotion, with a result
that in variants with an extinction win condition phantom mates and
illegal moves (when in check) were called. The count is now increased at
game level when under-promotion to an extinction piece takes place.
This is done even befor the move is performed by the legality search,
because that search would only search promotion to 'Queen', so that
a promotion would not be considered legal if it leaves the last-remaining
'King'  in check. While such a promotion is a valid way to resolve the
extinction threat.
This leaves a minor problem in Spartan Chess: the King from the
promotion could also be in check, leading to a forbidden duple check,
and this is not detected. So an illegal move could be accepted here.
(Promotion to 'King'  in other variants is accepted as well, btw.)
fairymax.c