projects
/
vchess.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update TODO
[vchess.git]
/
client
/
src
/
variants
/
Shogi.js
diff --git
a/client/src/variants/Shogi.js
b/client/src/variants/Shogi.js
index
082d939
..
1b2ba03
100644
(file)
--- a/
client/src/variants/Shogi.js
+++ b/
client/src/variants/Shogi.js
@@
-11,6
+11,10
@@
export class ShogiRules extends ChessRules {
return false;
}
return false;
}
+ static get Monochrome() {
+ return true;
+ }
+
static IsGoodFen(fen) {
if (!ChessRules.IsGoodFen(fen)) return false;
const fenParsed = V.ParseFen(fen);
static IsGoodFen(fen) {
if (!ChessRules.IsGoodFen(fen)) return false;
const fenParsed = V.ParseFen(fen);
@@
-372,6
+376,18
@@
export class ShogiRules extends ChessRules {
);
}
);
}
+ getPotentialLanceMoves(sq) {
+ const forward = (this.turn == 'w' ? -1 : 1);
+ return this.getSlideNJumpMoves(
+ sq,
+ [[forward, 0]],
+ {
+ promote: V.P_LANCE,
+ force: true
+ }
+ );
+ }
+
getPotentialRookMoves(sq) {
return this.getSlideNJumpMoves(
sq, V.steps[V.ROOK], { promote: V.P_ROOK });
getPotentialRookMoves(sq) {
return this.getSlideNJumpMoves(
sq, V.steps[V.ROOK], { promote: V.P_ROOK });
@@
-382,12
+398,6
@@
export class ShogiRules extends ChessRules {
sq, V.steps[V.BISHOP], { promote: V.P_BISHOP });
}
sq, V.steps[V.BISHOP], { promote: V.P_BISHOP });
}
- getPotentialLanceMoves(sq) {
- const forward = (this.turn == 'w' ? -1 : 1);
- return this.getSlideNJumpMoves(
- sq, [[forward, 0]], { promote: V.P_LANCE });
- }
-
getPotentialDragonMoves(sq) {
return (
this.getSlideNJumpMoves(sq, V.steps[V.ROOK]).concat(
getPotentialDragonMoves(sq) {
return (
this.getSlideNJumpMoves(sq, V.steps[V.ROOK]).concat(