From 9aebe2aac02158a4f1c92ad0ac529f8ed245602e Mon Sep 17 00:00:00 2001 From: Benjamin Auder <benjamin.auder@somewhere> Date: Tue, 26 Jul 2022 18:34:11 +0200 Subject: [PATCH] After refactoring. Seems more or less ok --- base_rules.js | 4 +- variants/Alice/class.js | 2 +- variants/Ambiguous/class.js | 12 +- variants/Antiking1/style.css | 8 +- variants/Apocalypse/class.js | 2 +- variants/Balaklava/class.js | 2 +- variants/Balaklava/pieces/CREDITS | 1 + variants/Balaklava/pieces/black_mammoth.svg | 188 ++++++++++++++++++++ variants/Balaklava/pieces/white_mammoth.svg | 172 ++++++++++++++++++ variants/Balaklava/style.css | 7 + variants/Baroque/class.js | 3 - variants/Benedict/class.js | 1 - variants/Berolina/style.css | 1 + variants/Bicolour/class.js | 12 +- variants/Giveaway/class.js | 4 +- variants/Hex/class.js | 2 +- variants/_Antiking/class.js | 2 - variants/_Berolina/pawnSpec.js | 5 +- variants/_Berolina/style.css | 6 + 19 files changed, 398 insertions(+), 36 deletions(-) create mode 100644 variants/Balaklava/pieces/CREDITS create mode 100644 variants/Balaklava/pieces/black_mammoth.svg create mode 100644 variants/Balaklava/pieces/white_mammoth.svg create mode 100644 variants/_Berolina/style.css diff --git a/base_rules.js b/base_rules.js index 5b1a013..b315fd5 100644 --- a/base_rules.js +++ b/base_rules.js @@ -2080,7 +2080,7 @@ export default class ChessRules { // will be executed in filterValid() later. ( i != finalSquares[castleSide][0] && - this.underCheck([x, i], oppCol) + this.underCheck([[x, i]], oppCol) ) || ( @@ -2187,8 +2187,6 @@ export default class ChessRules { underCheck(square_s, oppCol) { if (this.options["taking"] || this.options["dark"]) return false; - if (!Array.isArray(square_s[0])) - square_s = [square_s]; return square_s.some(sq => this.underAttack(sq, oppCol)); } diff --git a/variants/Alice/class.js b/variants/Alice/class.js index e6d37b2..d1e389d 100644 --- a/variants/Alice/class.js +++ b/variants/Alice/class.js @@ -119,7 +119,7 @@ export default class AliceRules extends ChessRules { this.playOnBoard(m); m.appear.forEach(a => this.toggleWorld(a.x, a.y)); const kingAppear = m.appear.find(a => this.isKing(0, 0, a.p)); - const target = kingAppear ? [kingAppear.x, kingAppear.y] : kingPos; + const target = [kingAppear ? [kingAppear.x, kingAppear.y] : kingPos]; const res = this.underCheck(target, oppCol); m.appear.forEach(a => this.toggleWorld(a.x, a.y)); this.undoOnBoard(m); diff --git a/variants/Ambiguous/class.js b/variants/Ambiguous/class.js index 6d9ac7e..5e7029c 100644 --- a/variants/Ambiguous/class.js +++ b/variants/Ambiguous/class.js @@ -124,12 +124,12 @@ export default class AmbiguousRules extends ChessRules { pieces(color, x, y) { const targets = { - 's': {"class": "target-pawn", moves: []}, - 'u': {"class": "target-rook", moves: []}, - 'o': {"class": "target-knight", moves: []}, - 'c': {"class": "target-bishop", moves: []}, - 't': {"class": "target-queen", moves: []}, - 'l': {"class": "target-king", moves: []} + 's': {"class": "target-pawn"}, + 'u': {"class": "target-rook"}, + 'o': {"class": "target-knight"}, + 'c': {"class": "target-bishop"}, + 't': {"class": "target-queen"}, + 'l': {"class": "target-king"} }; return Object.assign({ 'g': {"class": "target"} }, targets, super.pieces(color, x, y)); diff --git a/variants/Antiking1/style.css b/variants/Antiking1/style.css index faf34b7..456922f 100644 --- a/variants/Antiking1/style.css +++ b/variants/Antiking1/style.css @@ -1,8 +1,2 @@ @import url("/variants/_Antiking/style.css"); - -piece.black.pawn { - background-image: url('/variants/Berolina/pieces/black_pawn.svg'); -} -piece.white.pawn { - background-image: url('/variants/Berolina/pieces/white_pawn.svg'); -} +@import url("/variants/_Berolina/style.css"); diff --git a/variants/Apocalypse/class.js b/variants/Apocalypse/class.js index 1f7cc7a..ace9c4d 100644 --- a/variants/Apocalypse/class.js +++ b/variants/Apocalypse/class.js @@ -68,7 +68,7 @@ export default class ApocalypseRules extends ChessRules { return { 'p': { "class": "pawn", - moves: [ + both: [ { steps: [[pawnShift, 0], [pawnShift, -1], [pawnShift, 1]], range: 1 diff --git a/variants/Balaklava/class.js b/variants/Balaklava/class.js index dd3cf62..e16322f 100644 --- a/variants/Balaklava/class.js +++ b/variants/Balaklava/class.js @@ -34,7 +34,7 @@ export default class BalaklavaRules extends ChessRules { genRandInitBaseFen() { const baseFen = super.genRandInitBaseFen(); return { - fen: baseFen.replace(/n/g, 'm').replace(/N/g, 'M'), + fen: baseFen.fen.replace(/n/g, 'm').replace(/N/g, 'M'), o: baseFen.o }; } diff --git a/variants/Balaklava/pieces/CREDITS b/variants/Balaklava/pieces/CREDITS new file mode 100644 index 0000000..b4b12de --- /dev/null +++ b/variants/Balaklava/pieces/CREDITS @@ -0,0 +1 @@ +https://www.flaticon.com/free-icon/mammoth_925138 diff --git a/variants/Balaklava/pieces/black_mammoth.svg b/variants/Balaklava/pieces/black_mammoth.svg new file mode 100644 index 0000000..8ed01bc --- /dev/null +++ b/variants/Balaklava/pieces/black_mammoth.svg @@ -0,0 +1,188 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + version="1.1" + id="Capa_1" + x="0px" + y="0px" + viewBox="0 0 512 512" + style="enable-background:new 0 0 512 512;" + xml:space="preserve" + sodipodi:docname="bm.svg" + inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"><metadata + id="metadata61"><rdf:RDF><cc:Work + rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs + id="defs59" /><sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="960" + inkscape:window-height="1060" + id="namedview57" + showgrid="false" + inkscape:zoom="1.3037281" + inkscape:cx="267.74608" + inkscape:cy="256" + inkscape:window-x="0" + inkscape:window-y="20" + inkscape:window-maximized="0" + inkscape:current-layer="Capa_1" /> +<g + id="g6" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> + <g + id="g4"> + <path + d="m 438.343,344.359 c -4.851,-2.408 -10.847,-0.341 -13.234,4.487 -2.371,4.796 -0.269,10.891 4.496,13.235 4.829,2.376 10.873,0.295 13.236,-4.487 2.411,-4.892 0.395,-10.823 -4.498,-13.235 z" + id="path2" + inkscape:connector-curvature="0" /> + </g> +</g> +<g + id="g12" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> + <g + id="g10"> + <path + d="m 467.46,150.829 c -1.733,-15.248 -6.124,-34.746 -21.759,-41.571 -10.77,-4.702 -23.892,-1.747 -34.523,4.547 -6.781,4.099 -18.321,12.042 -10.307,20.913 7.08,7.837 14.602,-0.5 20.913,-4.219 5.652,-3.33 13.154,-5.117 18.55,-0.339 5.8,5.136 6.684,15.673 7.477,22.854 1.948,17.465 2.975,36.611 2.975,55.371 0.011,27.339 -2.164,67.774 -12.552,105.195 -3.379,12.174 15.648,17.618 19.046,5.28 9.859,-35.804 13.274,-73.435 13.274,-110.475 0,-19.482 -1.076,-39.378 -3.094,-57.556 z" + id="path8" + inkscape:connector-curvature="0" /> + </g> +</g> +<g + id="g18" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> + <g + id="g16"> + <path + d="m 502.474,107.08 c -9.946,-41.4 -28.689,-62.392 -55.709,-62.392 -15.26,0 -32.325,7.019 -49.631,20.134 C 388.072,56.662 369.273,43.347 331.948,27.839 271.84,2.862 171.24,37.325 166.964,38.812 c -5.866,2.04 -8.42,9.519 -5.043,14.719 l 17.097,26.328 c -7.076,11.717 -11.364,24.558 -15.458,36.868 -5.591,16.812 -10.873,32.691 -22.564,44.941 -9.831,10.301 -23.446,18.055 -37.86,26.263 -16.712,9.517 -35.247,20.076 -51.564,36.617 -8.26,-21.929 -10.022,-46.135 -5.211,-72.169 4.42,-23.919 13.024,-40.47 13.137,-40.687 5.08,-9.714 -7.812,-19.452 -15.683,-11.661 -22.547,22.318 -37.545,53.825 -42.229,88.72 -4.325,32.219 0.268,65.239 12.925,93.5 -5.695,14.793 -8.577,29.553 -8.577,44.179 0,91.966 71.609,166.785 159.628,166.785 5.459,0 9.884,-4.425 9.884,-9.884 v -43.497 c 0,-5.459 -4.425,-9.884 -9.884,-9.884 -43.608,0 -79.775,-34.561 -85.645,-79.318 20.138,11.026 45.616,19.431 68.858,17.529 23.725,-1.941 44.963,-13.751 61.902,-30.056 23.258,13.904 50.269,21.512 76.954,21.512 12.708,0 24.846,-1.591 36.235,-4.74 11.691,81.18 29.847,128.893 30.649,130.975 1.587,4.118 5.712,6.678 10.107,6.29 1.558,-0.14 38.568,-3.845 75.271,-40.31 21.141,-21.004 37.932,-48.664 49.91,-82.212 C 504.532,328.363 512,277.943 512,219.758 512,188.408 511.013,142.62 502.474,107.08 Z M 324.363,46.093 c 34.536,14.35 51.257,26.204 58.631,32.601 l -30.826,35.442 -54.093,3.685 -20.647,-36.056 c -1.781,-3.11 -5.075,-4.973 -8.575,-4.973 -12.223,0 -60.617,11.765 -61.483,10.432 -0.004,-0.006 -21.767,-33.521 -21.767,-33.521 27.8,-8.1 96.849,-25.024 138.76,-7.61 z M 155.678,449.238 v 23.846 C 83.154,467.735 25.702,404.003 25.702,326.43 c 0,-6.727 0.755,-13.525 2.236,-20.376 8.775,12.577 19.387,23.343 31.371,31.787 0.008,58.182 42.403,106.13 96.369,111.397 z M 142.045,348.579 C 103.786,348.577 76.358,325.485 74.822,324.431 57.553,312.582 43.221,296.453 34.113,277.546 18.954,246.079 16.052,209.127 24.058,176.025 c -0.608,25.515 4.803,49.727 16.037,71.165 12.432,23.724 32.193,43.798 54.137,58.904 29.228,20.108 56.812,21.28 82.13,3.536 5.245,6.042 11.202,11.753 17.69,16.962 0.803,0.645 -23.052,21.987 -52.007,21.987 z M 99.329,285.408 c 8.397,-5.763 49.588,-4.266 55.651,-4.294 2.49,4.328 5.523,8.758 8.862,13.135 -31.392,23.532 -62.522,-7.351 -64.513,-8.841 z m 327.7,151.327 c -22.589,22.895 -45.422,31.281 -56.787,34.222 -3.314,0.857 -21.904,-88.65 -22.872,-94.198 -6.058,-34.715 -11.745,-70.446 -11.721,-105.759 -0.049,-14.489 1.354,-26.912 3.844,-34.089 4.13,-11.904 -14.601,-18.463 -18.719,-6.347 -3.331,9.993 -4.844,22.457 -4.893,40.436 0.015,24.252 3.18,50.343 5.128,64.121 -10.353,3.138 -21.544,4.728 -33.376,4.728 -25.495,0 -51.376,-8.004 -72.885,-22.545 -10.735,-7.238 -36.569,-32.481 -44.887,-50.357 -1.679,-3.608 -5.363,-5.848 -9.332,-5.707 -7.558,0.283 -61.608,-2.142 -76.625,11.172 -9.287,-8.866 -17.031,-18.475 -23.114,-28.703 15.374,-17.626 34.027,-28.288 52.13,-38.597 15.709,-8.946 30.547,-17.396 42.378,-29.793 14.75,-15.455 20.989,-34.212 27.022,-52.351 2.706,-8.136 5.444,-16.254 9.041,-24.046 2.539,4.966 6.758,9.921 12.945,8.889 l 59.407,-10.22 20.286,35.424 c 1.768,3.089 5.05,4.972 8.575,4.972 0.224,0 0.448,-0.008 0.674,-0.023 l 64.361,-4.385 c 2.621,-0.179 5.063,-1.393 6.786,-3.375 l 39.423,-45.326 c 0.057,-0.066 0.108,-0.136 0.163,-0.203 15.512,-12.885 30.76,-20.219 42.788,-20.219 45.467,0 45.467,116.891 45.467,155.302 -0.004,124.712 -35.463,186.829 -65.207,216.977 z" + id="path14" + inkscape:connector-curvature="0" /> + </g> +</g> +<g + id="g24" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> + <g + id="g22"> + <path + d="m 273.825,195.683 c -10.331,-3.287 -19.651,-5.079 -28.022,-5.78 1.723,0.119 1.801,-19.811 -0.622,-19.811 10e-4,0 5.858,0 5.878,0 12.693,0 12.791,-19.768 0,-19.768 0,0 -33.58,0 -33.606,0 -25.652,0 -38.388,32.855 -21.733,51.383 -13.006,8.991 -18.263,19.694 -18.857,20.971 -5.316,11.42 12.52,19.957 17.924,8.338 12.344,-26.537 50.285,-23.726 73.043,-16.495 11.822,3.756 18.189,-14.957 5.995,-18.838 z m -56.371,-3.934 c -5.45,0 -9.884,-4.858 -9.884,-10.829 -0.001,-5.97 4.433,-10.828 9.884,-10.828 5.45,0 9.884,4.857 9.884,10.828 0,5.29 -4.249,10.829 -9.884,10.829 z" + id="path20" + inkscape:connector-curvature="0" /> + </g> +</g> +<g + id="g26" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g28" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g30" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g32" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g34" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g36" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g38" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g40" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g42" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g44" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g46" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g48" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g50" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g52" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g54" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<path + style="fill:#312c28;fill-opacity:1;stroke-width:0.76703107" + d="m 357.70724,446.54438 c -4.04767,-9.68742 -18.36193,-75.08012 -22.93829,-104.7903 -5.22617,-33.92891 -6.98462,-55.3622 -6.35584,-77.47014 0.33094,-11.63575 0.78831,-16.40488 2.05967,-21.47687 1.92752,-7.68974 1.59125,-10.68941 -1.48887,-13.28116 -5.11614,-4.30495 -12.05781,-3.01526 -14.57878,2.70858 -3.38208,7.67897 -4.24373,15.71447 -4.21799,39.33624 0.0228,20.93974 0.76172,32.28367 3.33293,51.16802 l 0.59624,4.37911 -5.41384,1.23135 c -24.29564,5.52592 -50.96752,2.27242 -75.04742,-9.15448 -11.08287,-5.25928 -19.50522,-11.52913 -30.88539,-22.992 -11.46485,-11.54817 -17.67548,-19.25061 -22.28732,-27.64083 -4.32936,-7.87631 -4.92966,-8.10681 -21.12141,-8.11025 -25.12325,-0.005 -43.935,2.46716 -53.50267,7.03205 l -4.87657,2.32668 -3.452887,-3.3385 c -3.892511,-3.76355 -13.560356,-15.94193 -15.251123,-19.21152 -1.487842,-2.87717 -0.489996,-4.34016 8.031337,-11.7751 8.312629,-7.25287 19.532563,-14.79263 37.684003,-25.32354 19.44678,-11.28243 26.77183,-16.34935 34.73935,-24.03005 11.35166,-10.94304 17.57729,-21.73686 25.13324,-43.57537 4.20383,-12.15006 9.18072,-25.75133 9.58653,-26.19887 0.13615,-0.15016 1.57075,1.11795 3.18799,2.81802 1.61723,1.70006 3.87651,3.32597 5.02062,3.61312 1.28964,0.32368 12.46638,-1.27255 29.40942,-4.20018 15.03108,-2.59726 27.49227,-4.55925 27.69152,-4.35999 0.19926,0.19925 4.58306,7.71833 9.74176,16.70905 7.36048,12.828 9.92906,16.66774 11.93262,17.83788 2.53962,1.48322 2.71748,1.47999 33.5778,-0.61 17.06356,-1.15561 31.84368,-2.47428 32.8447,-2.93037 1.00102,-0.4561 10.25722,-10.53034 20.56933,-22.3872 20.18834,-23.212533 23.31082,-26.051042 35.94116,-32.672428 16.75646,-8.784482 28.47664,-7.982024 37.90398,2.59521 11.61906,13.036298 19.16325,42.173838 21.66829,83.688338 4.16784,69.07117 -1.3273,126.75059 -16.31214,171.21928 -15.24883,45.25215 -40.19364,77.51268 -72.53701,93.81044 -6.46349,3.25693 -11.99859,5.53416 -16.40468,6.74913 -2.8733,0.7923 -2.95648,0.75691 -3.98026,-1.69335 z m 63.35268,-95.36047 c 9.67579,-5.71564 1.32885,-20.7435 -8.8411,-15.91754 -3.35536,1.59222 -5.02648,4.52701 -5.02648,8.82741 0,2.59708 0.48,3.66292 2.6079,5.79082 2.13711,2.13711 3.1889,2.60791 5.82615,2.60791 1.77003,0 4.21512,-0.58887 5.43353,-1.3086 z m 13.90952,-34.62279 c 4.10593,-4.01733 10.00785,-33.4328 13.0282,-64.9332 2.06202,-21.50556 1.10514,-72.29817 -1.75568,-93.19427 -3.20582,-23.41608 -12.49997,-35.60159 -27.943,-36.63594 -12.14978,-0.81378 -28.86964,6.93797 -33.40513,15.48745 -2.13923,4.03249 -1.63365,6.5741 2.03811,10.24587 2.41653,2.41652 2.96998,2.62519 6.04394,2.27871 2.29438,-0.25861 4.92108,-1.43073 8.15857,-3.64062 6.27254,-4.2816 9.05262,-5.37719 13.64472,-5.37719 2.98382,0 4.3155,0.43298 6.19451,2.01406 4.57847,3.85253 6.17237,8.92859 7.67695,24.44851 4.56795,47.11908 2.09421,94.32302 -6.92818,132.20363 -2.76319,11.60135 -2.78996,13.16543 -0.27644,16.15259 3.59574,4.27329 9.68954,4.70155 13.52343,0.9504 z M 198.64249,236.97957 c 0.78452,-0.70998 2.42197,-3.05492 3.63878,-5.21099 7.6249,-13.51057 25.59035,-19.5998 48.05321,-16.28719 4.64054,0.68434 10.76105,1.909 13.60113,2.72145 8.04753,2.30214 12.83562,0.0798 14.07625,-6.5333 1.41786,-7.55784 -3.19544,-10.6923 -20.32647,-13.81063 -3.62113,-0.65916 -7.27421,-1.32843 -8.11794,-1.48729 -1.42192,-0.26772 -1.53506,-0.90207 -1.54772,-8.67801 l -0.0137,-8.38917 3.80327,-0.36545 c 3.02613,-0.29077 4.23517,-0.84884 5.91704,-2.73116 2.90304,-3.24907 3.4972,-6.96807 1.69984,-10.63974 -0.78178,-1.59702 -2.28432,-3.33275 -3.33899,-3.8572 -2.97039,-1.47706 -37.60927,-1.34169 -42.689,0.16683 -16.23954,4.82263 -24.12376,27.87331 -14.42309,42.16806 l 1.95667,2.88331 -4.77954,4.32419 c -8.61535,7.79455 -13.29532,15.50603 -12.36472,20.37412 0.47333,2.47609 4.15948,6.33368 6.53327,6.83714 2.82909,0.60003 6.80097,-0.10874 8.32169,-1.48497 z" + id="path33" + inkscape:connector-curvature="0" /><path + style="fill:#333333;fill-opacity:1;stroke-width:0.76703107" + d="m 292.67733,128.72172 c -0.9867,-1.58779 -5.01556,-8.5821 -8.95306,-15.54291 -8.83186,-15.613225 -10.13169,-17.395465 -13.33119,-18.278892 -3.44355,-0.950808 -13.26055,0.408756 -37.6123,5.208952 -10.92014,2.15257 -20.04053,3.72802 -20.26754,3.50101 -0.84024,-0.84024 -19.10444,-29.173916 -18.93874,-29.38011 0.44282,-0.551046 15.02692,-4.264829 26.07874,-6.640847 39.66617,-8.527785 73.09933,-9.045241 94.15803,-1.457316 17.61543,6.347238 50.1379,23.894978 54.88308,29.612563 1.17917,1.420803 -24.92918,31.38515 -27.9784,32.1106 -1.19509,0.28432 -11.31974,1.08064 -22.49922,1.7696 -11.17948,0.68895 -21.09562,1.41725 -22.03587,1.61845 -1.3375,0.28619 -2.09997,-0.26247 -3.50353,-2.5211 z" + id="path35" + inkscape:connector-curvature="0" /><path + style="fill:#333333;fill-opacity:1;stroke-width:0.76703107" + d="M 137.65538,337.45362 C 117.83296,333.87397 96.566089,322.1954 78.903273,305.19028 69.742902,296.371 63.750656,288.4859 58.208299,277.95808 45.77659,254.34378 40.850357,222.43695 45.438819,195.25114 l 0.970955,-5.75274 0.565282,6.13625 c 3.422449,37.15136 15.423111,62.46371 41.638294,87.82544 15.1213,14.62901 30.03718,24.55928 43.76947,29.1396 16.13154,5.38057 33.10222,3.58968 47.36388,-4.99824 l 4.48885,-2.70304 7.35392,7.11413 c 4.04466,3.91276 7.46169,7.3511 7.59339,7.64074 0.53599,1.17876 -9.20585,7.88039 -17.11414,11.7732 -10.96085,5.39539 -18.76177,7.26914 -29.91422,7.18527 -4.64054,-0.0349 -11.16514,-0.55606 -14.49912,-1.15813 z" + id="path37" + inkscape:connector-curvature="0" /><path + style="fill:#333333;fill-opacity:1;stroke-width:0.76703107" + d="m 142.79915,297.2778 c -4.48916,-0.95476 -11.79787,-3.99788 -16.61819,-6.9193 -5.41025,-3.27895 -10.21642,-7.38156 -9.49894,-8.10841 1.66029,-1.68197 11.49096,-2.74991 28.95272,-3.14523 l 18.79226,-0.42545 4.02657,5.83113 4.02657,5.83114 -2.92638,1.93659 c -6.70248,4.43549 -18.78803,6.69387 -26.75461,4.99953 z" + id="path39" + inkscape:connector-curvature="0" /><path + style="fill:#333333;fill-opacity:1;stroke-width:0.76703107" + d="M 151.80508,449.0928 C 99.279147,438.58879 59.197215,395.08861 50.42739,339.06947 49.323211,332.01629 49.183573,309.96732 50.212347,305.11392 l 0.694053,-3.27431 4.051062,5.31603 c 4.366387,5.72983 16.487077,17.67431 21.098598,20.79188 2.710927,1.83269 2.836724,2.11036 2.841733,6.2725 0.02255,18.73682 8.555044,42.62385 21.004496,58.80285 14.675141,19.07144 37.159961,32.79159 59.500271,36.30682 l 6.17499,0.97163 v 10.18559 10.18558 l -3.25989,-0.0647 c -1.79293,-0.0356 -6.52359,-0.71732 -10.51258,-1.51503 z" + id="path41" + inkscape:connector-curvature="0" /><path + style="fill:#312c28;fill-opacity:1;stroke-width:0.76703107" + d="m 134.8963,336.43182 c -13.4511,-2.8454 -29.23603,-10.41034 -42.722848,-20.47495 -7.199357,-5.37256 -21.068095,-18.98606 -25.292306,-24.82685 -10.993563,-15.2007 -18.33886,-34.23866 -21.33001,-55.28434 -1.383208,-9.73223 -1.496103,-27.65826 -0.233592,-37.09096 l 0.930917,-6.95522 0.548835,5.36921 c 0.94373,9.23245 2.351986,17.2582 3.028246,17.2582 0.357053,0 0.461667,0.48868 0.232474,1.08594 -1.117888,2.91317 6.12892,23.96756 11.770595,34.19749 13.206357,23.94682 38.436629,48.25211 61.720379,59.45761 18.35983,8.83581 36.51761,8.84064 53.79699,0.0143 l 6.78273,-3.46464 6.52357,5.9375 c 7.9641,7.24861 8.38484,7.92807 6.15212,9.93526 -5.68412,5.10997 -21.33035,13.05512 -29.7418,15.10287 -6.98512,1.70052 -23.52715,1.56608 -32.1663,-0.26141 z" + id="path4546" + inkscape:connector-curvature="0" /><path + style="fill:#312c28;fill-opacity:1;stroke-width:0.76703107" + d="m 158.75011,449.81518 c -11.16786,-1.29504 -25.70009,-5.8615 -37.66037,-11.83402 -35.106236,-17.53075 -60.36568,-51.29031 -69.129132,-92.39193 -1.463849,-6.86562 -1.724867,-10.50557 -1.769219,-24.67215 -0.02862,-9.14008 0.234977,-16.90564 0.585761,-17.2568 0.350784,-0.35116 1.365415,0.39639 2.254736,1.66122 2.353173,3.34679 18.493357,19.68018 22.03975,22.30359 2.090882,1.54671 3.037345,2.83351 3.057975,4.15758 0.02193,1.4073 0.20967,1.63366 0.705518,0.85063 0.409244,-0.64626 0.521906,0.8659 0.285734,3.83516 -0.445639,5.60278 1.177119,15.37752 4.076759,24.5565 1.049618,3.32263 2.258913,6.04114 2.687324,6.04114 0.42841,0 0.567748,0.3417 0.309639,0.75933 -0.702965,1.13742 5.177384,13.16931 9.919111,20.29569 10.838204,16.28882 29.041514,30.71335 46.925924,37.18468 7.02041,2.54029 21.40901,5.73808 22.57533,5.01725 0.44777,-0.27674 0.72962,3.56661 0.72962,9.94925 0,7.86187 -0.234,10.37591 -0.95879,10.30068 -0.52733,-0.0547 -3.51339,-0.39574 -6.63567,-0.7578 z" + id="path4548" + inkscape:connector-curvature="0" /><path + style="fill:#312c28;fill-opacity:1;stroke-width:0.76703107" + d="m 136.95982,294.96549 c -7.91626,-2.94195 -19.70524,-10.28489 -19.70524,-12.2737 0,-1.6651 16.80961,-3.06318 45.81013,-3.81008 1.19267,-0.0307 8.76228,10.67758 8.19582,11.59414 -0.23229,0.37584 -2.11793,1.54257 -4.19032,2.59273 -9.50673,4.81743 -20.40444,5.50396 -30.11039,1.89691 z" + id="path4550" + inkscape:connector-curvature="0" /><path + style="fill:#312c28;fill-opacity:1;stroke-width:0.76703107" + d="m 293.87997,129.86174 c -0.41065,-0.52734 -4.49809,-7.50492 -9.08318,-15.50574 -9.1303,-15.932008 -12.06276,-19.90585 -14.26449,-19.330087 -0.77306,0.202159 -1.40556,0.05471 -1.40556,-0.32766 0,-0.905437 -3.61459,-0.90561 -4.17417,-1.99e-4 -0.23625,0.382262 -1.09844,0.520101 -1.91598,0.306309 -1.75069,-0.457814 -6.56574,0.30229 -30.60134,4.830729 -9.84458,1.854768 -18.35824,3.372308 -18.91925,3.372308 -0.91129,0 -19.81301,-28.381124 -19.26602,-28.928114 0.59953,-0.599529 25.8932,-6.512896 35.20277,-8.229998 18.93877,-3.493161 29.14746,-4.49657 46.19375,-4.540369 25.3274,-0.06508 34.12918,2.116255 59.82843,14.827183 19.03263,9.413603 32.59882,17.768369 32.59882,20.076062 0,1.915716 -23.67685,28.877086 -26.851,30.575836 -0.74297,0.39762 -11.13486,1.42261 -23.09307,2.27774 -25.72253,1.83942 -23.32727,1.78055 -24.24971,0.596 z" + id="path4552" + inkscape:connector-curvature="0" /><path + style="fill:#ffffff;fill-opacity:1;stroke-width:0.76703107" + d="m 215.74137,194.94432 c -3.80509,-3.80509 -3.80509,-9.38783 0,-13.19293 3.61095,-3.61095 7.26566,-3.62618 10.84663,-0.0452 1.40948,1.40948 2.79304,3.48046 3.07458,4.60218 0.76562,3.05048 -0.21627,5.82286 -3.07458,8.68118 -3.58097,3.58097 -7.23568,3.56573 -10.84663,-0.0452 z" + id="path42" + inkscape:connector-curvature="0" /></svg> \ No newline at end of file diff --git a/variants/Balaklava/pieces/white_mammoth.svg b/variants/Balaklava/pieces/white_mammoth.svg new file mode 100644 index 0000000..5535a15 --- /dev/null +++ b/variants/Balaklava/pieces/white_mammoth.svg @@ -0,0 +1,172 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + version="1.1" + id="Capa_1" + x="0px" + y="0px" + viewBox="0 0 512 512" + style="enable-background:new 0 0 512 512;" + xml:space="preserve" + sodipodi:docname="wm.svg" + inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"><metadata + id="metadata61"><rdf:RDF><cc:Work + rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs + id="defs59" /><sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="960" + inkscape:window-height="1060" + id="namedview57" + showgrid="false" + inkscape:zoom="1.3037281" + inkscape:cx="264.67796" + inkscape:cy="256" + inkscape:window-x="0" + inkscape:window-y="20" + inkscape:window-maximized="0" + inkscape:current-layer="Capa_1" /> +<g + id="g6" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> + <g + id="g4"> + <path + d="m 438.343,344.359 c -4.851,-2.408 -10.847,-0.341 -13.234,4.487 -2.371,4.796 -0.269,10.891 4.496,13.235 4.829,2.376 10.873,0.295 13.236,-4.487 2.411,-4.892 0.395,-10.823 -4.498,-13.235 z" + id="path2" + inkscape:connector-curvature="0" /> + </g> +</g> +<g + id="g12" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> + <g + id="g10"> + <path + d="m 467.46,150.829 c -1.733,-15.248 -6.124,-34.746 -21.759,-41.571 -10.77,-4.702 -23.892,-1.747 -34.523,4.547 -6.781,4.099 -18.321,12.042 -10.307,20.913 7.08,7.837 14.602,-0.5 20.913,-4.219 5.652,-3.33 13.154,-5.117 18.55,-0.339 5.8,5.136 6.684,15.673 7.477,22.854 1.948,17.465 2.975,36.611 2.975,55.371 0.011,27.339 -2.164,67.774 -12.552,105.195 -3.379,12.174 15.648,17.618 19.046,5.28 9.859,-35.804 13.274,-73.435 13.274,-110.475 0,-19.482 -1.076,-39.378 -3.094,-57.556 z" + id="path8" + inkscape:connector-curvature="0" /> + </g> +</g> +<g + id="g18" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> + <g + id="g16"> + <path + d="m 502.474,107.08 c -9.946,-41.4 -28.689,-62.392 -55.709,-62.392 -15.26,0 -32.325,7.019 -49.631,20.134 C 388.072,56.662 369.273,43.347 331.948,27.839 271.84,2.862 171.24,37.325 166.964,38.812 c -5.866,2.04 -8.42,9.519 -5.043,14.719 l 17.097,26.328 c -7.076,11.717 -11.364,24.558 -15.458,36.868 -5.591,16.812 -10.873,32.691 -22.564,44.941 -9.831,10.301 -23.446,18.055 -37.86,26.263 -16.712,9.517 -35.247,20.076 -51.564,36.617 -8.26,-21.929 -10.022,-46.135 -5.211,-72.169 4.42,-23.919 13.024,-40.47 13.137,-40.687 5.08,-9.714 -7.812,-19.452 -15.683,-11.661 -22.547,22.318 -37.545,53.825 -42.229,88.72 -4.325,32.219 0.268,65.239 12.925,93.5 -5.695,14.793 -8.577,29.553 -8.577,44.179 0,91.966 71.609,166.785 159.628,166.785 5.459,0 9.884,-4.425 9.884,-9.884 v -43.497 c 0,-5.459 -4.425,-9.884 -9.884,-9.884 -43.608,0 -79.775,-34.561 -85.645,-79.318 20.138,11.026 45.616,19.431 68.858,17.529 23.725,-1.941 44.963,-13.751 61.902,-30.056 23.258,13.904 50.269,21.512 76.954,21.512 12.708,0 24.846,-1.591 36.235,-4.74 11.691,81.18 29.847,128.893 30.649,130.975 1.587,4.118 5.712,6.678 10.107,6.29 1.558,-0.14 38.568,-3.845 75.271,-40.31 21.141,-21.004 37.932,-48.664 49.91,-82.212 C 504.532,328.363 512,277.943 512,219.758 512,188.408 511.013,142.62 502.474,107.08 Z M 324.363,46.093 c 34.536,14.35 51.257,26.204 58.631,32.601 l -30.826,35.442 -54.093,3.685 -20.647,-36.056 c -1.781,-3.11 -5.075,-4.973 -8.575,-4.973 -12.223,0 -60.617,11.765 -61.483,10.432 -0.004,-0.006 -21.767,-33.521 -21.767,-33.521 27.8,-8.1 96.849,-25.024 138.76,-7.61 z M 155.678,449.238 v 23.846 C 83.154,467.735 25.702,404.003 25.702,326.43 c 0,-6.727 0.755,-13.525 2.236,-20.376 8.775,12.577 19.387,23.343 31.371,31.787 0.008,58.182 42.403,106.13 96.369,111.397 z M 142.045,348.579 C 103.786,348.577 76.358,325.485 74.822,324.431 57.553,312.582 43.221,296.453 34.113,277.546 18.954,246.079 16.052,209.127 24.058,176.025 c -0.608,25.515 4.803,49.727 16.037,71.165 12.432,23.724 32.193,43.798 54.137,58.904 29.228,20.108 56.812,21.28 82.13,3.536 5.245,6.042 11.202,11.753 17.69,16.962 0.803,0.645 -23.052,21.987 -52.007,21.987 z M 99.329,285.408 c 8.397,-5.763 49.588,-4.266 55.651,-4.294 2.49,4.328 5.523,8.758 8.862,13.135 -31.392,23.532 -62.522,-7.351 -64.513,-8.841 z m 327.7,151.327 c -22.589,22.895 -45.422,31.281 -56.787,34.222 -3.314,0.857 -21.904,-88.65 -22.872,-94.198 -6.058,-34.715 -11.745,-70.446 -11.721,-105.759 -0.049,-14.489 1.354,-26.912 3.844,-34.089 4.13,-11.904 -14.601,-18.463 -18.719,-6.347 -3.331,9.993 -4.844,22.457 -4.893,40.436 0.015,24.252 3.18,50.343 5.128,64.121 -10.353,3.138 -21.544,4.728 -33.376,4.728 -25.495,0 -51.376,-8.004 -72.885,-22.545 -10.735,-7.238 -36.569,-32.481 -44.887,-50.357 -1.679,-3.608 -5.363,-5.848 -9.332,-5.707 -7.558,0.283 -61.608,-2.142 -76.625,11.172 -9.287,-8.866 -17.031,-18.475 -23.114,-28.703 15.374,-17.626 34.027,-28.288 52.13,-38.597 15.709,-8.946 30.547,-17.396 42.378,-29.793 14.75,-15.455 20.989,-34.212 27.022,-52.351 2.706,-8.136 5.444,-16.254 9.041,-24.046 2.539,4.966 6.758,9.921 12.945,8.889 l 59.407,-10.22 20.286,35.424 c 1.768,3.089 5.05,4.972 8.575,4.972 0.224,0 0.448,-0.008 0.674,-0.023 l 64.361,-4.385 c 2.621,-0.179 5.063,-1.393 6.786,-3.375 l 39.423,-45.326 c 0.057,-0.066 0.108,-0.136 0.163,-0.203 15.512,-12.885 30.76,-20.219 42.788,-20.219 45.467,0 45.467,116.891 45.467,155.302 -0.004,124.712 -35.463,186.829 -65.207,216.977 z" + id="path14" + inkscape:connector-curvature="0" /> + </g> +</g> +<g + id="g24" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> + <g + id="g22"> + <path + d="m 273.825,195.683 c -10.331,-3.287 -19.651,-5.079 -28.022,-5.78 1.723,0.119 1.801,-19.811 -0.622,-19.811 10e-4,0 5.858,0 5.878,0 12.693,0 12.791,-19.768 0,-19.768 0,0 -33.58,0 -33.606,0 -25.652,0 -38.388,32.855 -21.733,51.383 -13.006,8.991 -18.263,19.694 -18.857,20.971 -5.316,11.42 12.52,19.957 17.924,8.338 12.344,-26.537 50.285,-23.726 73.043,-16.495 11.822,3.756 18.189,-14.957 5.995,-18.838 z m -56.371,-3.934 c -5.45,0 -9.884,-4.858 -9.884,-10.829 -0.001,-5.97 4.433,-10.828 9.884,-10.828 5.45,0 9.884,4.857 9.884,10.828 0,5.29 -4.249,10.829 -9.884,10.829 z" + id="path20" + inkscape:connector-curvature="0" /> + </g> +</g> +<g + id="g26" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g28" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g30" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g32" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g34" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g36" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g38" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g40" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g42" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g44" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g46" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g48" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g50" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g52" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<g + id="g54" + transform="matrix(0.9,0,0,0.9,25.600024,25.599998)"> +</g> +<path + style="fill:#ffffff;fill-opacity:1;stroke-width:0.76703107" + d="M 151.80508,449.0928 C 99.279147,438.58879 59.197215,395.08861 50.42739,339.06947 49.323211,332.01629 49.183573,309.96732 50.212347,305.11392 l 0.694053,-3.27431 4.051062,5.31603 c 4.366387,5.72983 16.487077,17.67431 21.098598,20.79188 2.710927,1.83269 2.836724,2.11036 2.841733,6.2725 0.02255,18.73682 8.555044,42.62385 21.004496,58.80285 14.675141,19.07144 37.159961,32.79159 59.500271,36.30682 l 6.17499,0.97163 v 10.18559 10.18558 l -3.25989,-0.0647 c -1.79293,-0.0356 -6.52359,-0.71732 -10.51258,-1.51503 z" + id="path33" + inkscape:connector-curvature="0" /><path + style="fill:#ffffff;fill-opacity:1;stroke-width:0.76703107" + d="M 137.65538,337.45362 C 117.83296,333.87397 96.566089,322.1954 78.903273,305.19028 69.742902,296.371 63.750656,288.4859 58.208299,277.95808 45.77659,254.34378 40.850357,222.43695 45.438819,195.25114 l 0.970955,-5.75274 0.565282,6.13625 c 3.422449,37.15136 15.423111,62.46371 41.638294,87.82544 15.1213,14.62901 30.03718,24.55928 43.76947,29.1396 16.13154,5.38057 33.10222,3.58968 47.36388,-4.99824 l 4.48885,-2.70304 7.35392,7.11413 c 4.04466,3.91276 7.46169,7.3511 7.59339,7.64074 0.53599,1.17876 -9.20585,7.88039 -17.11414,11.7732 -10.96085,5.39539 -18.76177,7.26914 -29.91422,7.18527 -4.64054,-0.0349 -11.16514,-0.55606 -14.49912,-1.15813 z" + id="path35" + inkscape:connector-curvature="0" /><path + style="fill:#ffffff;fill-opacity:1;stroke-width:0.76703107" + d="m 142.79915,297.2778 c -4.48916,-0.95476 -11.79787,-3.99788 -16.61819,-6.9193 -5.41025,-3.27895 -10.21642,-7.38156 -9.49894,-8.10841 1.66029,-1.68197 11.49096,-2.74991 28.95272,-3.14523 l 18.79226,-0.42545 4.02657,5.83113 4.02657,5.83114 -2.92638,1.93659 c -6.70248,4.43549 -18.78803,6.69387 -26.75461,4.99953 z" + id="path37" + inkscape:connector-curvature="0" /><path + style="fill:#ffffff;fill-opacity:1;stroke-width:0.76703107" + d="m 357.70724,446.54438 c -4.04767,-9.68742 -18.36193,-75.08012 -22.93829,-104.7903 -5.22617,-33.92891 -6.98462,-55.3622 -6.35584,-77.47014 0.33094,-11.63575 0.78831,-16.40488 2.05967,-21.47687 1.92752,-7.68974 1.59125,-10.68941 -1.48887,-13.28116 -5.11614,-4.30495 -12.05781,-3.01526 -14.57878,2.70858 -3.38208,7.67897 -4.24373,15.71447 -4.21799,39.33624 0.0228,20.93974 0.76172,32.28367 3.33293,51.16802 l 0.59624,4.37911 -5.41384,1.23135 c -24.29564,5.52592 -50.96752,2.27242 -75.04742,-9.15448 -11.08287,-5.25928 -19.50522,-11.52913 -30.88539,-22.992 -11.46485,-11.54817 -17.67548,-19.25061 -22.28732,-27.64083 -4.32936,-7.87631 -4.92966,-8.10681 -21.12141,-8.11025 -25.12325,-0.005 -43.935,2.46716 -53.50267,7.03205 l -4.87657,2.32668 -3.452887,-3.3385 c -3.892511,-3.76355 -13.560356,-15.94193 -15.251123,-19.21152 -1.487842,-2.87717 -0.489996,-4.34016 8.031337,-11.7751 8.312629,-7.25287 19.532563,-14.79263 37.684003,-25.32354 19.44678,-11.28243 26.77183,-16.34935 34.73935,-24.03005 11.35166,-10.94304 17.57729,-21.73686 25.13324,-43.57537 4.20383,-12.15006 9.18072,-25.75133 9.58653,-26.19887 0.13615,-0.15016 1.57075,1.11795 3.18799,2.81802 1.61723,1.70006 3.87651,3.32597 5.02062,3.61312 1.28964,0.32368 12.46638,-1.27255 29.40942,-4.20018 15.03108,-2.59726 27.49227,-4.55925 27.69152,-4.35999 0.19926,0.19925 4.58306,7.71833 9.74176,16.70905 7.36048,12.828 9.92906,16.66774 11.93262,17.83788 2.53962,1.48322 2.71748,1.47999 33.5778,-0.61 17.06356,-1.15561 31.84368,-2.47428 32.8447,-2.93037 1.00102,-0.4561 10.25722,-10.53034 20.56933,-22.3872 20.18834,-23.212533 23.31082,-26.051042 35.94116,-32.672428 16.75646,-8.784482 28.47664,-7.982024 37.90398,2.59521 11.61906,13.036298 19.16325,42.173838 21.66829,83.688338 4.16784,69.07117 -1.3273,126.75059 -16.31214,171.21928 -15.24883,45.25215 -40.19364,77.51268 -72.53701,93.81044 -6.46349,3.25693 -11.99859,5.53416 -16.40468,6.74913 -2.8733,0.7923 -2.95648,0.75691 -3.98026,-1.69335 z m 63.35268,-95.36047 c 9.67579,-5.71564 1.32885,-20.7435 -8.8411,-15.91754 -3.35536,1.59222 -5.02648,4.52701 -5.02648,8.82741 0,2.59708 0.48,3.66292 2.6079,5.79082 2.13711,2.13711 3.1889,2.60791 5.82615,2.60791 1.77003,0 4.21512,-0.58887 5.43353,-1.3086 z m 13.90952,-34.62279 c 4.10593,-4.01733 10.00785,-33.4328 13.0282,-64.9332 2.06202,-21.50556 1.10514,-72.29817 -1.75568,-93.19427 -3.20582,-23.41608 -12.49997,-35.60159 -27.943,-36.63594 -12.14978,-0.81378 -28.86964,6.93797 -33.40513,15.48745 -2.13923,4.03249 -1.63365,6.5741 2.03811,10.24587 2.41653,2.41652 2.96998,2.62519 6.04394,2.27871 2.29438,-0.25861 4.92108,-1.43073 8.15857,-3.64062 6.27254,-4.2816 9.05262,-5.37719 13.64472,-5.37719 2.98382,0 4.3155,0.43298 6.19451,2.01406 4.57847,3.85253 6.17237,8.92859 7.67695,24.44851 4.56795,47.11908 2.09421,94.32302 -6.92818,132.20363 -2.76319,11.60135 -2.78996,13.16543 -0.27644,16.15259 3.59574,4.27329 9.68954,4.70155 13.52343,0.9504 z M 198.64249,236.97957 c 0.78452,-0.70998 2.42197,-3.05492 3.63878,-5.21099 7.6249,-13.51057 25.59035,-19.5998 48.05321,-16.28719 4.64054,0.68434 10.76105,1.909 13.60113,2.72145 8.04753,2.30214 12.83562,0.0798 14.07625,-6.5333 1.41786,-7.55784 -3.19544,-10.6923 -20.32647,-13.81063 -3.62113,-0.65916 -7.27421,-1.32843 -8.11794,-1.48729 -1.42192,-0.26772 -1.53506,-0.90207 -1.54772,-8.67801 l -0.0137,-8.38917 3.80327,-0.36545 c 3.02613,-0.29077 4.23517,-0.84884 5.91704,-2.73116 2.90304,-3.24907 3.4972,-6.96807 1.69984,-10.63974 -0.78178,-1.59702 -2.28432,-3.33275 -3.33899,-3.8572 -2.97039,-1.47706 -37.60927,-1.34169 -42.689,0.16683 -16.23954,4.82263 -24.12376,27.87331 -14.42309,42.16806 l 1.95667,2.88331 -4.77954,4.32419 c -8.61535,7.79455 -13.29532,15.50603 -12.36472,20.37412 0.47333,2.47609 4.15948,6.33368 6.53327,6.83714 2.82909,0.60003 6.80097,-0.10874 8.32169,-1.48497 z" + id="path39" + inkscape:connector-curvature="0" /><path + style="fill:#ffffff;fill-opacity:1;stroke-width:0.76703107" + d="m 215.74138,194.94433 c -3.8051,-3.8051 -3.8051,-9.38784 0,-13.19294 3.61095,-3.61095 7.26566,-3.62618 10.84663,-0.0452 1.40948,1.40948 2.79304,3.48046 3.07457,4.60218 0.76562,3.05048 -0.21626,5.82287 -3.07457,8.68118 -3.58097,3.58097 -7.23568,3.56573 -10.84663,-0.0452 z" + id="path41" + inkscape:connector-curvature="0" /><path + style="fill:#ffffff;fill-opacity:1;stroke-width:0.76703107" + d="m 292.67733,128.72172 c -0.9867,-1.58779 -5.01556,-8.5821 -8.95306,-15.54291 -8.83186,-15.613225 -10.13169,-17.395465 -13.33119,-18.278892 -3.44355,-0.950808 -13.26055,0.408756 -37.6123,5.208952 -10.92014,2.15257 -20.04053,3.72802 -20.26754,3.50101 -0.84024,-0.84024 -19.10444,-29.173916 -18.93874,-29.38011 0.44282,-0.551046 15.02692,-4.264829 26.07874,-6.640847 39.66617,-8.527785 73.09933,-9.045241 94.15803,-1.457316 17.61543,6.347238 50.1379,23.894978 54.88308,29.612563 1.17917,1.420803 -24.92918,31.38515 -27.9784,32.1106 -1.19509,0.28432 -11.31974,1.08064 -22.49922,1.7696 -11.17948,0.68895 -21.09562,1.41725 -22.03587,1.61845 -1.3375,0.28619 -2.09997,-0.26247 -3.50353,-2.5211 z" + id="path43" + inkscape:connector-curvature="0" /></svg> \ No newline at end of file diff --git a/variants/Balaklava/style.css b/variants/Balaklava/style.css index a3550bc..c876806 100644 --- a/variants/Balaklava/style.css +++ b/variants/Balaklava/style.css @@ -1 +1,8 @@ @import url("/base_pieces.css"); + +piece.white.mammoth { + background-image: url('/variants/Balaklava/pieces/white_mammoth.svg'); +} +piece.black.mammoth { + background-image: url('/variants/Balaklava/pieces/black_mammoth.svg'); +} diff --git a/variants/Baroque/class.js b/variants/Baroque/class.js index edf1dd5..240f130 100644 --- a/variants/Baroque/class.js +++ b/variants/Baroque/class.js @@ -1,9 +1,6 @@ -import ChessRules from "/base_rules.js"; import GiveawayRules from "/variants/Giveaway/class.js"; import AbstractSpecialCaptureRules from "/variants/_SpecialCaptures.js"; import {Random} from "/utils/alea.js"; -import PiPo from "/utils/PiPo.js"; -import Move from "/utils/Move.js"; export default class BaroqueRules extends AbstractSpecialCaptureRules { diff --git a/variants/Benedict/class.js b/variants/Benedict/class.js index e6542c4..5503f2f 100644 --- a/variants/Benedict/class.js +++ b/variants/Benedict/class.js @@ -1,5 +1,4 @@ import AbstractFlipRules from "/variants/_Flip/class.js"; -import PiPo from "/utils/PiPo.js"; export default class BenedictRules extends AbstractFlipRules { diff --git a/variants/Berolina/style.css b/variants/Berolina/style.css index a3550bc..9250552 100644 --- a/variants/Berolina/style.css +++ b/variants/Berolina/style.css @@ -1 +1,2 @@ @import url("/base_pieces.css"); +@import url("/variants/_Berolina/style.css"); diff --git a/variants/Bicolour/class.js b/variants/Bicolour/class.js index fd2cdb0..3812d4c 100644 --- a/variants/Bicolour/class.js +++ b/variants/Bicolour/class.js @@ -2,9 +2,7 @@ import ChessRules from "/base_rules.js"; import {Random} from "/utils/alea.js"; import {ArrayFun} from "/utils/array.js"; -export class BicolourRules extends ChessRules { - - // TODO: Options +export default class BicolourRules extends ChessRules { get hasFlags() { return false; @@ -103,9 +101,11 @@ export class BicolourRules extends ChessRules { }; } - underCheck(color) { - const kingPos = this.searchKingPos(color)[0], - return (this.underAttack(kingPos, 'w') || this.underAttack(kingPos, 'b')); + underCheck(square_s) { + return ( + this.underAttack(square_s[0], 'w') || + this.underAttack(square_s[0], 'b') + ); } }; diff --git a/variants/Giveaway/class.js b/variants/Giveaway/class.js index 39f586c..3f27e5f 100644 --- a/variants/Giveaway/class.js +++ b/variants/Giveaway/class.js @@ -80,10 +80,10 @@ export default class GiveawayRules extends ChessRules { super(o); } - underCheck(square, oppCol) { + underCheck(square_s, oppCol) { if (this.options["mode"] == "suicide") return false; - return super.underCheck(square, oppCol); + return super.underCheck(square_s, oppCol); } getCurrentScore() { diff --git a/variants/Hex/class.js b/variants/Hex/class.js index 774de17..f58800f 100644 --- a/variants/Hex/class.js +++ b/variants/Hex/class.js @@ -187,7 +187,7 @@ export default class HexRules extends AbstractClickFillRules { max = z; explored[index] = true; component[index] = true; - for (let [dx, dy] of super.pieces()['k'].moves[0].steps) { + for (let [dx, dy] of super.pieces()['k'].both[0].steps) { const [nx, ny] = [x + dx, y + dy]; const nidx = getIndex(nx, ny); if ( diff --git a/variants/_Antiking/class.js b/variants/_Antiking/class.js index 941bd82..ac9aedc 100644 --- a/variants/_Antiking/class.js +++ b/variants/_Antiking/class.js @@ -57,8 +57,6 @@ export default class AbstractAntikingRules extends ChessRules { underCheck(square_s, color) { let res = false; - if (!Array.isArray(square_s[0])) - square_s = [square_s]; square_s.forEach(sq => { switch (this.getPiece(sq[0], sq[1])) { case 'k': diff --git a/variants/_Berolina/pawnSpec.js b/variants/_Berolina/pawnSpec.js index 088e7df..7cfc7be 100644 --- a/variants/_Berolina/pawnSpec.js +++ b/variants/_Berolina/pawnSpec.js @@ -1,7 +1,8 @@ -export default BerolinaPawnSpec = (color) => { +export default function (color) { const pawnShift = (color == "w" ? -1 : 1); return { + "class": "pawn", moves: [ { steps: [[pawnShift, 1], [pawnShift, -1]], @@ -16,4 +17,4 @@ export default BerolinaPawnSpec = (color) => { ] }; -}; +} diff --git a/variants/_Berolina/style.css b/variants/_Berolina/style.css new file mode 100644 index 0000000..4daa2c8 --- /dev/null +++ b/variants/_Berolina/style.css @@ -0,0 +1,6 @@ +piece.black.pawn { + background-image: url('/variants/_Berolina/pieces/black_pawn.svg'); +} +piece.white.pawn { + background-image: url('/variants/_Berolina/pieces/white_pawn.svg'); +} -- 2.44.0