ref: 2ab478783bc625e4b832211b764452674bddca58
parent: fb2cb4f53876b1b0c6060464e0dd5a05ab00e502
author: zamfofex <zamfofex@twdb.moe>
date: Mon Apr 1 10:07:19 EDT 2024
fix score inconsistency in ‘analyse’
--- a/tools/analyse.c
+++ b/tools/analyse.c
@@ -241,17 +241,21 @@
static void moonfish_score(struct moonfish_fancy *fancy)
{struct moonfish_ply *ply;
+ int score;
printf("\x1B[38;5;111m(+)\x1B[0m ");ply = fancy->plies + fancy->i;
+ score = ply->score;
+ if (!ply->chess.white) score *= -1;
+
if (ply->checkmate != 0)
printf("#%d", ply->checkmate);- else if (ply->score < 0)
- printf("%d.%.2d", ply->score / 100, -ply->score % 100);+ else if (score < 0)
+ printf("-%d.%.2d", -score / 100, -score % 100);else
- printf("%d.%.2d", ply->score / 100, ply->score % 100);+ printf("%d.%.2d", score / 100, score % 100); printf(" (depth %d) %4s", ply->depth, "");}
--
⑨