X-Git-Url: https://git.auder.net/?p=vchess.git;a=blobdiff_plain;f=client%2Fsrc%2Fvariants%2FGridolina.js;h=797190cdd3f9b719667405b179ea8ec452363f0e;hp=fd43be3f00561a8320e405590085790b1f82c816;hb=fa74f6247c0360fe49140c4d5f515a05c600499e;hpb=baa6f86f72e3b697ec2fcd34913986b2fa5f02eb 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; + } };