Skip to content

Commit 429ec90

Browse files
committed
Arimaa: Setup is always complete 0, never 1
1 parent 6cfe187 commit 429ec90

File tree

2 files changed

+10
-9
lines changed

2 files changed

+10
-9
lines changed

src/games/arimaa.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -645,14 +645,14 @@ export class ArimaaGame extends GameBase {
645645
if (this.currplayer === 2) {
646646
const [e1, e2] = [...cloned.board.entries()].filter(e => e[1][0] === "E").map(e => e[0][0]);
647647
if (e1 === e2) {
648-
warnings.push(i18next.t("apgames:validation.arimaa.WARN_FILE"));
648+
warnings.push(i18next.t("apgames:validation.arimaa.WARN_FILE") || "WARN");
649649
}
650650
}
651651
// unbalanced (gold and silver)
652652
const majors = [...cloned.board.entries()].filter(e => e[1][1] === this.currplayer && ["E", "M", "H"].includes(e[1][0])).map(e => ArimaaGame.algebraic2coords(e[0])[0]);
653653
const oneSide = majors.filter(n => n < 5).length;
654654
if (oneSide === 0 || oneSide === 4) {
655-
warnings.push(i18next.t("apgames:validation.arimaa.WARN_BALANCE"));
655+
warnings.push(i18next.t("apgames:validation.arimaa.WARN_BALANCE") || "WARN");
656656
}
657657
// hiding (gold and silver)
658658
const frontRow = this.currplayer === 1 ? 6 : 1;
@@ -664,7 +664,7 @@ export class ArimaaGame extends GameBase {
664664
const back = cloned.board.get(backCell)![0];
665665
if (ArimaaGame.strength(front) < ArimaaGame.strength(back)) {
666666
if (front !== "R" && back !== "C") {
667-
warnings.push(i18next.t("apgames:validation.arimaa.WARN_HIDE"));
667+
warnings.push(i18next.t("apgames:validation.arimaa.WARN_HIDE") || "WARN");
668668
break;
669669
}
670670
}
@@ -673,7 +673,8 @@ export class ArimaaGame extends GameBase {
673673
complete = 0;
674674
message = [i18next.t("apgames:validation.arimaa.WARNINGS"), ...warnings].join(" ");
675675
} else {
676-
complete = 1;
676+
// complete is never 1 for setup
677+
complete = 0;
677678
message = i18next.t("apgames:validation._general.VALID_MOVE")
678679
}
679680
}

test/games/arimaa.test.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -72,18 +72,18 @@ describe("Arimaa", () => {
7272
g.move("Ee2,Md2,Hb2,Hg2,Ra2,Ra1,Rb1,Rc1,Rf1,Rg1,Rh1,Rh2,Cf2,Cc2,Dd1,De1");
7373
// no warnings
7474
let result = g.validateMove("me7,ed7,hb7,hg7,ra7,ra8,rb8,rc8,rf8,rg8,rh8,rh7,cf7,de8,cd8,dc7");
75-
expect(result.complete).to.equal(1);
75+
expect(result.message).to.be.undefined;
7676
// same file
7777
result = g.validateMove("ee7,md7,hb7,hg7,ra7,ra8,rb8,rc8,rf8,rg8,rh8,rh7,cf7,de8,cd8,dc7");
78-
expect(result.complete).to.equal(0);
78+
expect(result.message).to.equal(" WARN");
7979
// unbalanced
8080
result = g.validateMove("ea7,mb7,hc7,hd7,ce7,df7,dg7,ch7,ra8,rb8,rc8,rd8,re8,rf8,rg8,rh8");
81-
expect(result.complete).to.equal(0);
81+
expect(result.message).to.equal(" WARN");
8282
// hiding
8383
result = g.validateMove("ed7,me7,hb7,hg7,ra7,ra8,rb8,rc8,rg8,rh8,rh7,cf8,rf7,cd8,de8,dc7");
84-
expect(result.complete).to.equal(1);
84+
expect(result.message).to.be.undefined;
8585
result = g.validateMove("ed7,hb7,hg7,ra7,ra8,rb8,rc8,rf8,rg8,rh8,rh7,cf7,ce7,dc7,dd8,me8");
86-
expect(result.complete).to.equal(0);
86+
expect(result.message).to.equal(" WARN");
8787
});
8888
});
8989

0 commit comments

Comments
 (0)