Add Kar-Ouk
authorBenjamin Auder <benjamin.auder@somewhere>
Sat, 6 Mar 2021 19:17:59 +0000 (20:17 +0100)
committerBenjamin Auder <benjamin.auder@somewhere>
Sat, 6 Mar 2021 19:17:59 +0000 (20:17 +0100)
client/src/translations/en.js
client/src/translations/es.js
client/src/translations/fr.js
client/src/translations/rules/Karouk/en.pug [new file with mode: 0644]
client/src/translations/rules/Karouk/es.pug [new file with mode: 0644]
client/src/translations/rules/Karouk/fr.pug [new file with mode: 0644]
client/src/translations/variants/en.pug
client/src/translations/variants/es.pug
client/src/translations/variants/fr.pug
client/src/variants/Karouk.js [new file with mode: 0644]
server/db/populate.sql

index acd3fdb..502b8bb 100644 (file)
@@ -317,6 +317,7 @@ export const translations = {
   "Stun & kick pieces": "Stun & kick pieces",
   "Thai Chess (v1)": "Thai Chess (v1)",
   "Thai Chess (v2)": "Thai Chess (v2)",
+  "Thai Chess (v3)": "Thai Chess (v3)",
   "The colorbound clobberers": "The colorbound clobberers",
   "The end of the world": "The end of the world",
   "Transform an essay": "Transform an essay",
index a648854..7e39759 100644 (file)
@@ -316,6 +316,7 @@ export const translations = {
   "Stun & kick pieces": "Aturdir & patear piezas",
   "Thai Chess (v1)": "Ajedrez tailandés (v1)",
   "Thai Chess (v2)": "Ajedrez tailandés (v2)",
+  "Thai Chess (v3)": "Ajedrez tailandés (v3)",
   "The colorbound clobberers": "Los batidores unicolor",
   "The end of the world": "El fin del mundo",
   "Transform an essay": "Transformar un ensayo",
index 282117a..6d04f40 100644 (file)
@@ -316,6 +316,7 @@ export const translations = {
   "Stun & kick pieces": "Étourdissez & frappez les pièces",
   "Thai Chess (v1)": "Échecs thai (v1)",
   "Thai Chess (v2)": "Échecs thai (v2)",
+  "Thai Chess (v3)": "Échecs thai (v3)",
   "The colorbound clobberers": "Les tabasseurs unicolores",
   "The end of the world": "La fin du monde",
   "Transform an essay": "Transformer un essai",
diff --git a/client/src/translations/rules/Karouk/en.pug b/client/src/translations/rules/Karouk/en.pug
new file mode 100644 (file)
index 0000000..1486e0a
--- /dev/null
@@ -0,0 +1,12 @@
+p.boxed
+  | Makruk, but first check wins.
+
+p
+  | Everything goes as in 
+  a(href="/#/variants/Makruk") Makruk
+  | , but the first player giving check wins.
+
+p
+  | The variant is mentioned on 
+  a(href="https://www.chessvariants.com/link/kar-ouk") chessvariants.com
+  | .
diff --git a/client/src/translations/rules/Karouk/es.pug b/client/src/translations/rules/Karouk/es.pug
new file mode 100644 (file)
index 0000000..7fe39f3
--- /dev/null
@@ -0,0 +1,12 @@
+p.boxed
+  | Makruk, pero el primer jaque gana.
+
+p
+  | Todo se desarrolla como en 
+  a(href="/#/variants/Makruk") Makruk
+  | , pero el primer jugador dando jaque señala el juego.
+
+p
+  | La variante se menciona en 
+  a(href="https://www.chessvariants.com/link/kar-ouk") chessvariants.com
+  | .
diff --git a/client/src/translations/rules/Karouk/fr.pug b/client/src/translations/rules/Karouk/fr.pug
new file mode 100644 (file)
index 0000000..62469e6
--- /dev/null
@@ -0,0 +1,12 @@
+p.boxed
+  | Makruk, mais le premier échec gagne.
+
+p
+  | Tout se déroule comme au 
+  a(href="/#/variants/Makruk") Makruk
+  | , mais le premier joueur donnant échec remporte la partie.
+
+p
+  | La variante est mentionnée sur 
+  a(href="https://www.chessvariants.com/link/kar-ouk") chessvariants.com
+  | .
index dc9ce6e..c380c42 100644 (file)
@@ -348,6 +348,7 @@ p (Partial) Game evolution in time and space.
 -
   var varlist = [
     "Janggi",
+    "Karouk",
     "Makpong",
     "Makruk",
     "Minishogi",
index d87eb23..6658c9b 100644 (file)
@@ -357,6 +357,7 @@ p Evolución (parcial) del juego en espacio y tiempo.
 -
   var varlist = [
     "Janggi",
+    "Karouk",
     "Makpong",
     "Makruk",
     "Minishogi",
index 996f823..7d7ab45 100644 (file)
@@ -356,6 +356,7 @@ p Évolution (partielle) du jeu dans l'espace et le temps.
 -
   var varlist = [
     "Janggi",
+    "Karouk",
     "Makpong",
     "Makruk",
     "Minishogi",
diff --git a/client/src/variants/Karouk.js b/client/src/variants/Karouk.js
new file mode 100644 (file)
index 0000000..05e5579
--- /dev/null
@@ -0,0 +1,11 @@
+import { MakrukRules } from "@/variants/Makruk";
+
+export class KaroukRules extends MakrukRules {
+
+  getCurrentScore() {
+    const color = this.turn;
+    if (this.underCheck(color)) return (color == 'w' ? "0-1" : "1-0");
+    return super.getCurrentScore();
+  }
+
+};
index 8260094..7603f1f 100644 (file)
@@ -87,6 +87,7 @@ insert or ignore into Variants (name, description) values
   ('Isardam', 'No paralyzed pieces'),
   ('Janggi', 'Korean Chess'),
   ('Joker', 'Replace pieces'),
+  ('Karouk', 'Thai chess (v3)'),
   ('Kinglet', 'Protect your pawns'),
   ('Kingsmaker', 'Promote into kings'),
   ('Knightmate', 'Mate the knight'),