From 7c4601d007042510ea2aad95a081d6fe83aab938 Mon Sep 17 00:00:00 2001 From: Benjamin Auder Date: Tue, 13 Apr 2021 12:29:46 +0200 Subject: [PATCH] A few bug fixes --- TODO | 8 -------- client/src/variants/Avalanche.js | 2 +- client/src/views/Game.vue | 4 +++- client/src/views/Hall.vue | 4 +++- 4 files changed, 7 insertions(+), 11 deletions(-) diff --git a/TODO b/TODO index 473ea2d0..84859849 100644 --- a/TODO +++ b/TODO @@ -6,14 +6,6 @@ If new live game starts in background, "new game" notify OK but not first move. Will be used for variants with custom non-rectangular board (Hex, at least) Or, with other board shapes (see greenchess.net for example) -debug import game + load - -TODEBUG: Avalanche computer play from here -game.fen = "r2q1bnr/3pp3/n3k1p1/6Pp/3p1B1P/p5R1/1p6/4K1NR w 26 ihii 0"; -game.fenStart = "r2q1bnr/3pp3/n3k1p1/6Pp/3p1B1P/p5R1/1p6/4K1NR w 26 ihii 0"; -game.mycolor = 'w'; -Bd6,b1 then black promotes and win, but UI freezes. - Merge Orda + Empire + Hoppelpoppel + Newzealand getSlideNJumpMoves() into base_rules.js => allow to simplify getPawnMoves in RoyalRace (and some getXMoves in Shatranj) diff --git a/client/src/variants/Avalanche.js b/client/src/variants/Avalanche.js index 40a43938..db024597 100644 --- a/client/src/variants/Avalanche.js +++ b/client/src/variants/Avalanche.js @@ -104,7 +104,7 @@ export class AvalancheRules extends ChessRules { vanish: [ new PiPo({ x: rank, y: file, c: color, p: V.PAWN }) ], - start: { x: 8, y: y }, + start: { x: 8 + (color == 'b' ? 1 : 0), y: y }, end: { x: rank, y: file } }); } diff --git a/client/src/views/Game.vue b/client/src/views/Game.vue index ac0a41ec..0be29954 100644 --- a/client/src/views/Game.vue +++ b/client/src/views/Game.vue @@ -1320,7 +1320,9 @@ export default { const trySetVname = setInterval( () => { // this.st.variants might be uninitialized (variant == null) - variant = this.st.variants.find(v => v.id == game.vid); + variant = this.st.variants.find(v => { + return v.id == game.vid || v.name == game.vname + }); if (!!variant) { clearInterval(trySetVname); game.vname = variant.name; diff --git a/client/src/views/Hall.vue b/client/src/views/Hall.vue index 224d5d21..db483e1d 100644 --- a/client/src/views/Hall.vue +++ b/client/src/views/Hall.vue @@ -1095,7 +1095,9 @@ export default { } for (const select of this.newchallenge.V.Options.select || []) { const elt = document.getElementById(select.variable + "_opt"); - chall.options[select.variable] = parseInt(elt.value, 10) || elt.value; + const tryIntVal = parseInt(elt.value, 10); + chall.options[select.variable] = + (isNaN(tryIntVal) ? elt.value : tryIntVal); } error = checkChallenge(chall); if (error) { -- 2.44.0