]> git.sesse.net Git - remoteglot/blobdiff - www/js/remoteglot.js
Improve a comment in onSnapEnd.
[remoteglot] / www / js / remoteglot.js
index ee2432494a50ddc09af28940442579add471bac6..a402d0004b2067129ff3fe0e738552672d2cee77 100644 (file)
@@ -630,7 +630,7 @@ let find_nonstupid_moves = function(data, margin, invert) {
        let pv_score = undefined;
        for (let move in data['refutation_lines']) {
                let line = data['refutation_lines'][move];
-               let score = compute_score_sort_key(line['score'], line['depth'], invert, false);
+               let score = compute_score_sort_key(line['score'], line['depth'], invert);
                if (move == data['pv'][0]) {
                        pv_score = score;
                }
@@ -1827,23 +1827,19 @@ let update_historic_analysis = function() {
  * @param {string} fen
  */
 let update_imbalance = function(fen) {
-       let hiddenboard = new Chess(fen);
        let imbalance = {'k': 0, 'q': 0, 'r': 0, 'b': 0, 'n': 0, 'p': 0};
-       for (let row = 0; row < 8; ++row) {
-               for (let col = 0; col < 8; ++col) {
-                       let col_text = String.fromCharCode('a1'.charCodeAt(0) + col);
-                       let row_text = String.fromCharCode('a1'.charCodeAt(1) + row);
-                       let square = col_text + row_text;
-                       let contents = hiddenboard.get(square);
-                       if (contents !== null) {
-                               if (contents.color === 'w') {
-                                       ++imbalance[contents.type];
-                               } else {
-                                       --imbalance[contents.type];
-                               }
-                       }
+       for (const c of fen) {
+               if (c === ' ') {
+                       // End of board
+                       break;
+               }
+               if (c != c.toUpperCase()) {
+                       --imbalance[c];
+               } else if (c != c.toLowerCase()) {
+                       ++imbalance[c.toLowerCase()];
                }
        }
+
        let white_imbalance = document.getElementById('whiteimbalance');
        let black_imbalance = document.getElementById('blackimbalance');
        white_imbalance.textContent = '';
@@ -2241,6 +2237,9 @@ let onSnapEnd = function(source, target) {
 
        // Shouldn't really be here if we have hash probes, but there's really
        // nothing we can do.
+       // FIXME: Just make a new line, probably (even if we don't have hash moves).
+       // As it is, we can actually drag (but not click) such a move in the UI,
+       // but it has no effect on what we're probing.
 }
 // End of dragging-related code.
 
@@ -2347,10 +2346,9 @@ let compute_plot_score = function(score) {
  * @param score The score digest tuple.
  * @param {?number} depth Depth the move has been computed to, or null.
  * @param {boolean} invert Whether black is to play.
- * @param {boolean=} depth_secondary_key
  * @return {number}
  */
-let compute_score_sort_key = function(score, depth, invert, depth_secondary_key) {
+let compute_score_sort_key = function(score, depth, invert) {
        let s;
        if (!score) {
                return -10000000;
@@ -2374,11 +2372,7 @@ let compute_score_sort_key = function(score, depth, invert, depth_secondary_key)
        }
        if (s) {
                if (invert) s = -s;
-               if (depth_secondary_key) {
-                       return s * 200 + (depth || 0);
-               } else {
-                       return s;
-               }
+               return s;
        } else {
                return null;
        }