From 377bf9818b41e22a35bf96ede1252cd7088e8a66 Mon Sep 17 00:00:00 2001 From: H.G. Muller Date: Wed, 30 Nov 2011 15:38:21 +0100 Subject: [PATCH] Put promo-suffix on ICS move in variant seirawan castlings The distinction upper-case / lowercase determines gating at R / K --- backend.c | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) diff --git a/backend.c b/backend.c index 4d4b6fa..14cdf0c 100644 --- a/backend.c +++ b/backend.c @@ -4952,6 +4952,11 @@ SendMoveToICS(moveType, fromX, fromY, toX, toY, promoChar) char promoChar; { char user_move[MSG_SIZ]; + char suffix[4]; + + if(gameInfo.variant == VariantSChess && promoChar) + snprintf(suffix, 4, "=%c", toX == BOARD_WIDTH<<1 ? ToUpper(promoChar) : ToLower(promoChar)); + else suffix[0] = NULLCHAR; switch (moveType) { default: @@ -4967,7 +4972,7 @@ SendMoveToICS(moveType, fromX, fromY, toX, toY, promoChar) case WhiteHSideCastleFR: case BlackHSideCastleFR: /* POP Fabien */ - snprintf(user_move, MSG_SIZ, "o-o\n"); + snprintf(user_move, MSG_SIZ, "o-o%s\n", suffix); break; case WhiteQueenSideCastle: case BlackQueenSideCastle: @@ -4977,7 +4982,7 @@ SendMoveToICS(moveType, fromX, fromY, toX, toY, promoChar) case WhiteASideCastleFR: case BlackASideCastleFR: /* POP Fabien */ - snprintf(user_move, MSG_SIZ, "o-o-o\n"); + snprintf(user_move, MSG_SIZ, "o-o-o%s\n",suffix); break; case WhiteNonPromotion: case BlackNonPromotion: -- 1.7.0.4