X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fvariants%2FGrasshopper.js;h=ec52d9b3f635c1a619fd0bd87109e865344a56dd;hb=f1c9d7072d253ba55a941f97a99eee7e394577ed;hp=8f24340ad9e6b9b90ac3ff4288be6e19a8f9d6c6;hpb=b627d118ab41dccbda68f4523de8f063d0fa89df;p=vchess.git diff --git a/client/src/variants/Grasshopper.js b/client/src/variants/Grasshopper.js index 8f24340a..ec52d9b3 100644 --- a/client/src/variants/Grasshopper.js +++ b/client/src/variants/Grasshopper.js @@ -91,14 +91,14 @@ export const VariantRules = class GrasshopperRules extends ChessRules { return moves; } - isAttacked(sq, colors) { + isAttacked(sq, color) { return ( - super.isAttacked(sq, colors) || - this.isAttackedByGrasshopper(sq, colors) + super.isAttacked(sq, color) || + this.isAttackedByGrasshopper(sq, color) ); } - isAttackedByGrasshopper([x, y], colors) { + isAttackedByGrasshopper([x, y], color) { // Reversed process: is there an adjacent obstacle, // and a grasshopper next in the same line? for (const step of V.steps[V.ROOK].concat(V.steps[V.BISHOP])) { @@ -116,7 +116,7 @@ export const VariantRules = class GrasshopperRules extends ChessRules { if ( V.OnBoard(i, j) && this.getPiece(i, j) == V.GRASSHOPPER && - colors.includes(this.getColor(i, j)) + this.getColor(i, j) == color ) { return true; } @@ -133,9 +133,13 @@ export const VariantRules = class GrasshopperRules extends ChessRules { ); } - static GenRandInitFen() { - return ChessRules.GenRandInitFen() - .replace("w 0 1111 -", "w 0 1111") + static get SEARCH_DEPTH() { + return 2; + } + + static GenRandInitFen(randomness) { + return ChessRules.GenRandInitFen(randomness) + .slice(0, -2) .replace( "/pppppppp/8/8/8/8/PPPPPPPP/", "/gggggggg/pppppppp/8/8/PPPPPPPP/GGGGGGGG/"