projects
/
vchess.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Start server implementation for correspondance play (early debug stage)
[vchess.git]
/
public
/
javascripts
/
variants
/
Checkered.js
diff --git
a/public/javascripts/variants/Checkered.js
b/public/javascripts/variants/Checkered.js
index
d73cef4
..
9de46ff
100644
(file)
--- a/
public/javascripts/variants/Checkered.js
+++ b/
public/javascripts/variants/Checkered.js
@@
-151,7
+151,10
@@
class CheckeredRules extends ChessRules
const L = this.moves.length;
if (L > 0 && this.oppositeMoves(this.moves[L-1], m))
return false;
const L = this.moves.length;
if (L > 0 && this.oppositeMoves(this.moves[L-1], m))
return false;
- return !this.underCheck(m);
+ this.play(m);
+ const res = !this.underCheck(color);
+ this.undo(m);
+ return res;
});
}
});
}
@@
-176,28
+179,21
@@
class CheckeredRules extends ChessRules
return false;
}
return false;
}
- underCheck(
move
)
+ underCheck(
color
)
{
{
- const color = this.turn;
- this.play(move);
- let res = this.isAttacked(this.kingPos[color], [this.getOppCol(color),'c']);
- this.undo(move);
- return res;
+ return this.isAttacked(this.kingPos[color], [V.GetOppCol(color),'c']);
}
}
- getCheckSquares(
move
)
+ getCheckSquares(
color
)
{
{
- this.play(move);
- const color = this.turn;
// Artifically change turn, for checkered pawns
// Artifically change turn, for checkered pawns
- this.turn =
this.g
etOppCol(color);
+ this.turn =
V.G
etOppCol(color);
const kingAttacked = this.isAttacked(
const kingAttacked = this.isAttacked(
- this.kingPos[color], [
this.g
etOppCol(color),'c']);
+ this.kingPos[color], [
V.G
etOppCol(color),'c']);
let res = kingAttacked
? [JSON.parse(JSON.stringify(this.kingPos[color]))] //need to duplicate!
: [];
this.turn = color;
let res = kingAttacked
? [JSON.parse(JSON.stringify(this.kingPos[color]))] //need to duplicate!
: [];
this.turn = color;
- this.undo(move);
return res;
}
return res;
}
@@
-214,11
+210,11
@@
class CheckeredRules extends ChessRules
{
const color = this.turn;
// Artifically change turn, for checkered pawns
{
const color = this.turn;
// Artifically change turn, for checkered pawns
- this.turn =
this.g
etOppCol(this.turn);
- const res = this.isAttacked(this.kingPos[color], [
this.g
etOppCol(color),'c'])
+ this.turn =
V.G
etOppCol(this.turn);
+ const res = this.isAttacked(this.kingPos[color], [
V.G
etOppCol(color),'c'])
? (color == "w" ? "0-1" : "1-0")
: "1/2";
? (color == "w" ? "0-1" : "1-0")
: "1/2";
- this.turn =
this.g
etOppCol(this.turn);
+ this.turn =
V.G
etOppCol(this.turn);
return res;
}
return res;
}
@@
-282,7
+278,7
@@
class CheckeredRules extends ChessRules
if (move.vanish.length > 1)
{
// Capture
if (move.vanish.length > 1)
{
// Capture
- const startColumn = V.
Get
Column(move.start.y);
+ const startColumn = V.
CoordTo
Column(move.start.y);
notation = startColumn + "x" + finalSquare +
"=" + move.appear[0].p.toUpperCase();
}
notation = startColumn + "x" + finalSquare +
"=" + move.appear[0].p.toUpperCase();
}
@@
-303,5
+299,3
@@
class CheckeredRules extends ChessRules
}
}
}
}
}
}
-
-const VariantRules = CheckeredRules;