projects
/
vchess.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Some fixes + work on Dynamo draft. Also listen for clicks in Board.vue
[vchess.git]
/
client
/
src
/
variants
/
Suction.js
diff --git
a/client/src/variants/Suction.js
b/client/src/variants/Suction.js
index
d15a7c8
..
aa34f6c
100644
(file)
--- a/
client/src/variants/Suction.js
+++ b/
client/src/variants/Suction.js
@@
-20,16
+20,17
@@
export class SuctionRules extends ChessRules {
}
static ParseFen(fen) {
}
static ParseFen(fen) {
- return Object.assign({}, ChessRules.ParseFen(fen), {
- cmove: fen.split(" ")[4]
- });
+ return Object.assign(
+ ChessRules.ParseFen(fen),
+ { cmove: fen.split(" ")[4] }
+ );
}
static IsGoodFen(fen) {
if (!ChessRules.IsGoodFen(fen)) return false;
const fenParts = fen.split(" ");
}
static IsGoodFen(fen) {
if (!ChessRules.IsGoodFen(fen)) return false;
const fenParts = fen.split(" ");
- if (fenParts.length !=
6
) return false;
- if (fenParts[
5] != "-" && !fenParts[5
].match(/^([a-h][1-8]){2}$/))
+ if (fenParts.length !=
5
) return false;
+ if (fenParts[
4] != "-" && !fenParts[4
].match(/^([a-h][1-8]){2}$/))
return false;
return true;
}
return false;
return true;
}
@@
-95,7
+96,7
@@
export class SuctionRules extends ChessRules {
Math.abs(epSquare.y - y) == 1
) {
let enpassantMove = this.getBasicMove([x, y], [epSquare.x, epSquare.y]);
Math.abs(epSquare.y - y) == 1
) {
let enpassantMove = this.getBasicMove([x, y], [epSquare.x, epSquare.y]);
- const oppCol = V.GetOppCol(
color
);
+ const oppCol = V.GetOppCol(
this.turn
);
enpassantMove.vanish.push({
x: x,
y: epSquare.y,
enpassantMove.vanish.push({
x: x,
y: epSquare.y,
@@
-120,7
+121,7
@@
export class SuctionRules extends ChessRules {
// Does m2 un-do m1 ? (to disallow undoing captures)
oppositeMoves(m1, m2) {
return (
// Does m2 un-do m1 ? (to disallow undoing captures)
oppositeMoves(m1, m2) {
return (
- m1 &&
+
!!
m1 &&
m2.vanish.length == 2 &&
m1.start.x == m2.start.x &&
m1.end.x == m2.end.x &&
m2.vanish.length == 2 &&
m1.start.x == m2.start.x &&
m1.end.x == m2.end.x &&
@@
-182,10
+183,8
@@
export class SuctionRules extends ChessRules {
getCurrentScore() {
const color = this.turn;
const kp = this.kingPos[color];
getCurrentScore() {
const color = this.turn;
const kp = this.kingPos[color];
- if (color == "w" && kp[0] == 0)
- return "0-1";
- if (color == "b" && kp[0] == V.size.x - 1)
- return "1-0";
+ if (color == "w" && kp[0] == 0) return "0-1";
+ if (color == "b" && kp[0] == V.size.x - 1) return "1-0";
// King is not on the opposite edge: game not over
return "*";
}
// King is not on the opposite edge: game not over
return "*";
}