X-Git-Url: https://git.auder.net/?p=xogo.git;a=blobdiff_plain;f=base_rules.js;h=e987492b0682b1a05a757f044176f119039a60b4;hp=6efce0206a96a0bd12e0ae37c09ec2baa8e29f3f;hb=e8b85c869f8ed1a2e626f60c218c36121c49ec4e;hpb=6f74b81a893da23181f30e2ef1e68bde8a5476cd diff --git a/base_rules.js b/base_rules.js index 6efce02..e987492 100644 --- a/base_rules.js +++ b/base_rules.js @@ -2189,7 +2189,9 @@ export default class ChessRules { playVisual(move, r) { move.vanish.forEach(v => { if (!this.enlightened || this.enlightened[v.x][v.y]) { - this.g_pieces[v.x][v.y].remove(); + // TODO: next "if" shouldn't be required + if (this.g_pieces[v.x][v.y]) + this.g_pieces[v.x][v.y].remove(); this.g_pieces[v.x][v.y] = null; } }); @@ -2242,6 +2244,11 @@ export default class ChessRules { const dropMove = (typeof i1 == "string"); const startArray = (dropMove ? this.r_pieces : this.g_pieces); let startPiece = startArray[i1][j1]; + // TODO: next "if" shouldn't be required + if (!startPiece) { + callback(); + return; + } let chessboard = document.getElementById(this.containerId).querySelector(".chessboard"); const clonePiece = (