From: Benjamin Auder Date: Tue, 24 May 2022 17:22:29 +0000 (+0200) Subject: Finish refactoring base_rules.js (for now) X-Git-Url: https://git.auder.net/variants/Dynamo/current/vendor/js/index.js?a=commitdiff_plain;h=0c44c6768654f7127e36aa75beee58d61df4fc64;p=xogo.git Finish refactoring base_rules.js (for now) --- diff --git a/base_rules.js b/base_rules.js index b150fcb..4805f17 100644 --- a/base_rules.js +++ b/base_rules.js @@ -672,7 +672,7 @@ export default class ChessRules { } else this.r_pieces = { 'w': {}, 'b': {} }; - let chessboard = + let chessboard = document.getElementById(this.containerId).querySelector(".chessboard"); if (!r) r = chessboard.getBoundingClientRect(); @@ -1065,13 +1065,7 @@ export default class ChessRules { // Am I allowed to move thing at square x,y ? canIplay(x, y) { - return ( - this.playerColor == this.turn && - ( - (typeof x == "number" && this.getColor(x, y) == this.turn) || - (typeof x == "string" && x == this.turn) //reserve - ) - ); + return (this.playerColor == this.turn && this.getColor(x, y) == this.turn); } //////////////////////// @@ -1342,7 +1336,7 @@ export default class ChessRules { } } if (!this.options["rifle"]) - m.appear.pop(); //nothin appears + m.appear.pop(); //nothing appears } }); } @@ -1401,7 +1395,6 @@ export default class ChessRules { m.appear[0].x == m.start.x && m.appear[0].y == m.start.y ) { - const promotionPiece0 = this.pawnSpecs.promotions[0]; m.appear[0].p = this.pawnPromotions[0]; for (let i=1; i store only indices in appear/vanish ? const minSize = Math.min(move.appear.length, move.vanish.length); - if (this.hasReserve && !move.pawnfall) { + if ( + this.hasReserve && + // Warning; atomic pawn removal isn't a capture + (!this.options["atomic"] || !this.rempawn || this.movesCount >= 1) + ) { const color = this.turn; for (let i=minSize; i { - // TODO - }); - move.births.forEach(bth => { - // TODO - }); } play(move) {