src/chess/rules.c

changeset 164
c19d8523b31c
parent 163
2a6d83f4677e
equal deleted inserted replaced
163:2a6d83f4677e 164:c19d8523b31c
866 char mstr[8]; 866 char mstr[8];
867 strcpy(mstr, pstr); 867 strcpy(mstr, pstr);
868 868
869 /* evaluate check/checkmate flags */ 869 /* evaluate check/checkmate flags */
870 if (mstr[len-1] == '+' || mstr[len-1] == '#') { 870 if (mstr[len-1] == '+' || mstr[len-1] == '#') {
871 len--; mstr[len] = '\0';
872 move->check = true; 871 move->check = true;
873 move->checkmate = mstr[len-1] == '#'; 872 move->checkmate = mstr[len-1] == '#';
873 len--; mstr[len] = '\0';
874 } 874 }
875 875
876 /* evaluate promotion */ 876 /* evaluate promotion */
877 if (len > 3 && mstr[len-2] == '=') { 877 if (len > 3 && mstr[len-2] == '=') {
878 move->promotion = getpiece(mstr[len-1], color); 878 move->promotion = getpiece(mstr[len-1], color);

mercurial