X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fvariants%2FGridolina.js;h=797190cdd3f9b719667405b179ea8ec452363f0e;hb=fa74f6247c0360fe49140c4d5f515a05c600499e;hp=fd43be3f00561a8320e405590085790b1f82c816;hpb=107dc1bd5361e2538b1551bdcc37c1e90a444b83;p=vchess.git diff --git a/client/src/variants/Gridolina.js b/client/src/variants/Gridolina.js index fd43be3f..797190cd 100644 --- a/client/src/variants/Gridolina.js +++ b/client/src/variants/Gridolina.js @@ -34,4 +34,24 @@ export class GridolinaRules extends BerolinaRules { }) ); } + + isAttackedBySlideNJump([x, y], color, piece, steps, oneStep) { + for (let step of steps) { + let rx = x + step[0], + ry = y + step[1]; + while (V.OnBoard(rx, ry) && this.board[rx][ry] == V.EMPTY && !oneStep) { + rx += step[0]; + ry += step[1]; + } + if ( + V.OnBoard(rx, ry) && + this.getPiece(rx, ry) == piece && + this.getColor(rx, ry) == color && + V.OnDifferentGrids([x, y], [rx, ry]) + ) { + return true; + } + } + return false; + } };