| 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); |