From 0760d861aac62ed093d95ab86f7226dc6b8d3a70 Mon Sep 17 00:00:00 2001 From: Benjamin Auder <benjamin.auder@somewhere> Date: Wed, 10 Feb 2021 14:43:57 +0100 Subject: [PATCH] Improve Spartan, Avalam + Emergo pieces --- .../images/pieces/Avalam/generateSVG.py | 7 +- .../pieces/Emergo/generateSVG_composite.py | 14 +-- .../pieces/Emergo/generateSVG_simple.py | 7 +- client/public/images/pieces/Spartan/SOURCE | 2 + client/public/images/pieces/Spartan/bc.svg | 89 ++++++++++++++++++- client/public/images/pieces/Spartan/bg.svg | 15 +++- client/public/images/pieces/Spartan/bl.svg | 89 ++++++++++++++++++- client/public/images/pieces/Spartan/bp.svg | 68 ++++++++++++++ client/src/variants/Spartan.js | 3 +- server/db/queryGameStat.sql | 3 +- 10 files changed, 279 insertions(+), 18 deletions(-) create mode 100644 client/public/images/pieces/Spartan/SOURCE mode change 120000 => 100644 client/public/images/pieces/Spartan/bc.svg mode change 120000 => 100644 client/public/images/pieces/Spartan/bg.svg mode change 120000 => 100644 client/public/images/pieces/Spartan/bl.svg create mode 100644 client/public/images/pieces/Spartan/bp.svg diff --git a/client/public/images/pieces/Avalam/generateSVG.py b/client/public/images/pieces/Avalam/generateSVG.py index 8d526787..746a2be6 100755 --- a/client/public/images/pieces/Avalam/generateSVG.py +++ b/client/public/images/pieces/Avalam/generateSVG.py @@ -12,7 +12,7 @@ black = '<circle cx="115" cy="115" r="100" fill="crimson" stroke="darkslategray" white = '<circle cx="115" cy="115" r="100" fill="gold" stroke="darkslategray"/>' digits = [ - # 1 + # 1 (unused here) '<path d="M130,85 v60"', # 2 '<path d="M100,85 h30 v30 h-30 v30 h30"', @@ -34,7 +34,8 @@ for color in ["white", "black"]: f.write("\n") f.write(white if color == "white" else black) f.write("\n") - f.write(digits[number] + ' fill="none" stroke-width="5" ' + ('stroke="red"' if color == "white" else 'stroke="yellow"') + '/>') - f.write("\n") + if number >= 1: + f.write(digits[number] + ' fill="none" stroke-width="5" ' + ('stroke="red"' if color == "white" else 'stroke="yellow"') + '/>') + f.write("\n") f.write(final) f.close() diff --git a/client/public/images/pieces/Emergo/generateSVG_composite.py b/client/public/images/pieces/Emergo/generateSVG_composite.py index 1e37f2b6..85726d57 100755 --- a/client/public/images/pieces/Emergo/generateSVG_composite.py +++ b/client/public/images/pieces/Emergo/generateSVG_composite.py @@ -21,7 +21,7 @@ black_bottom = '<circle cx="115" cy="115" r="100" fill="black"/>' digits = { "top": [ - # 1 + # 1 (unused here) '<path d="M130,35 v60"', # 2 '<path d="M100,35 h30 v30 h-30 v30 h30"', @@ -47,7 +47,7 @@ digits = { '<path d="M90,35 v60 M100,35 h30 v30 h-30 v30 h30"' ], "bottom": [ - # 1 + # 1 (unused here) '<path d="M130,135 v60"', # 2 '<path d="M100,135 h30 v30 h-30 v30 h30"', @@ -88,9 +88,11 @@ for colorTop in ["white", "black"]: f.write("\n") f.write(white_top if colorTop == "white" else black_top) f.write("\n") - f.write(digits["top"][top] + ' fill="none" stroke-width="5" ' + ('stroke="red"' if colorTop == "white" else 'stroke="orange"') + '/>') - f.write("\n") - f.write(digits["bottom"][bottom] + ' fill="none" stroke-width="5" ' + ('stroke="red"' if colorTop == "black" else 'stroke="orange"') + '/>') - f.write("\n") + if top >= 1: + f.write(digits["top"][top] + ' fill="none" stroke-width="5" ' + ('stroke="red"' if colorTop == "white" else 'stroke="orange"') + '/>') + f.write("\n") + if bottom >= 1: + f.write(digits["bottom"][bottom] + ' fill="none" stroke-width="5" ' + ('stroke="red"' if colorTop == "black" else 'stroke="orange"') + '/>') + f.write("\n") f.write(final) f.close() diff --git a/client/public/images/pieces/Emergo/generateSVG_simple.py b/client/public/images/pieces/Emergo/generateSVG_simple.py index fd397af2..c8ef8261 100755 --- a/client/public/images/pieces/Emergo/generateSVG_simple.py +++ b/client/public/images/pieces/Emergo/generateSVG_simple.py @@ -12,7 +12,7 @@ black = '<circle cx="115" cy="115" r="100" fill="black"/>' white = '<circle cx="115" cy="115" r="100" fill="whitesmoke" stroke="saddlebrown"/>' digits = [ - # 1 + # 1 (unused) '<path d="M130,85 v60"', # 2 '<path d="M100,85 h30 v30 h-30 v30 h30"', @@ -49,7 +49,8 @@ for color in ["white", "black"]: f.write("\n") f.write(white if color == "white" else black) f.write("\n") - f.write(digits[number] + ' fill="none" stroke-width="5" ' + ('stroke="red"' if color == "white" else 'stroke="orange"') + '/>') - f.write("\n") + if number >= 1: + f.write(digits[number] + ' fill="none" stroke-width="5" ' + ('stroke="red"' if color == "white" else 'stroke="orange"') + '/>') + f.write("\n") f.write(final) f.close() diff --git a/client/public/images/pieces/Spartan/SOURCE b/client/public/images/pieces/Spartan/SOURCE new file mode 100644 index 00000000..c34f13ec --- /dev/null +++ b/client/public/images/pieces/Spartan/SOURCE @@ -0,0 +1,2 @@ +Hoplite pawn drawn from: +https://fr.m.wikipedia.org/wiki/Fichier:OOjs_UI_icon_bell.svg diff --git a/client/public/images/pieces/Spartan/bc.svg b/client/public/images/pieces/Spartan/bc.svg deleted file mode 120000 index f7661a29..00000000 --- a/client/public/images/pieces/Spartan/bc.svg +++ /dev/null @@ -1 +0,0 @@ -../br.svg \ No newline at end of file diff --git a/client/public/images/pieces/Spartan/bc.svg b/client/public/images/pieces/Spartan/bc.svg new file mode 100644 index 00000000..899f4809 --- /dev/null +++ b/client/public/images/pieces/Spartan/bc.svg @@ -0,0 +1,88 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<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" + height="100%" + width="100%" + version="1.1" + viewBox="0 0 2048 2048" + id="svg16" + sodipodi:docname="br.svg" + inkscape:version="1.0.2 (e86c870879, 2021-01-15)"> + <metadata + id="metadata22"> + <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="defs20" /> + <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="namedview18" + showgrid="false" + inkscape:zoom="0.43115234" + inkscape:cx="1024" + inkscape:cy="1024" + inkscape:window-x="0" + inkscape:window-y="20" + inkscape:window-maximized="0" + inkscape:current-layer="svg16" /> + <path + style="color:#000000" + d="m 1161,1706 h 170 v 137 h 274 V 1468 L 1383,1297 V 819 L 1553,649 V 444 h 153 V 205 H 341 v 239 h 153 v 205 l 171,170 v 478 l -222,171 v 375 h 273 v -137 h 171 v 137 h 274 z M 564,460 V 358 h 920 v 102 z m 460,1092 H 512 v -46 l 73,-55 h 879 l 71,55 v 46 z m 0,-169 H 674 l 60,-47 v -57 h 580 v 57 l 60,47 z m 0,-546 H 734 v -46 l -60,-58 h 700 l -60,58 v 46 z m 0,-172 H 610 l -46,-43 v -58 h 920 v 58 l -46,43 z" + fill-rule="nonzero" + display="block" + fill="#000000" + id="path2" /> + <g + fill-rule="nonzero" + fill="#ffffff" + id="g14" + transform="matrix(1,0,0,-1,0,2048)"> + <path + style="color:#000000" + d="m 564,1588 v 102 h 920 v -102 z" + display="block" + id="path4" /> + <path + style="color:#000000" + d="M 1024,496 H 512 v 46 l 73,55 h 879 l 71,-55 v -46 z" + display="block" + id="path6" /> + <path + style="color:#000000" + d="M 1024,665 H 674 l 60,47 v 57 h 580 v -57 l 60,-47 z" + display="block" + id="path8" /> + <path + style="color:#000000" + d="M 1024,1211 H 734 v 46 l -60,58 h 700 l -60,-58 v -46 z" + display="block" + id="path10" /> + <path + style="color:#000000" + d="M 1024,1383 H 610 l -46,43 v 58 h 920 v -58 l -46,-43 z" + display="block" + id="path12" /> + </g> +</svg> diff --git a/client/public/images/pieces/Spartan/bg.svg b/client/public/images/pieces/Spartan/bg.svg deleted file mode 120000 index a41e488c..00000000 --- a/client/public/images/pieces/Spartan/bg.svg +++ /dev/null @@ -1 +0,0 @@ -../Schess/be.svg \ No newline at end of file diff --git a/client/public/images/pieces/Spartan/bg.svg b/client/public/images/pieces/Spartan/bg.svg new file mode 100644 index 00000000..ae6789d8 --- /dev/null +++ b/client/public/images/pieces/Spartan/bg.svg @@ -0,0 +1,14 @@ +<svg xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="100%" width="100%" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 2048 2048"> + <path style="color:black;" d="m1161 1706h170v137h274v-375l-222-171v-478l170-170v-205h153v-239h-1365v239h153v205l171 170v478l-222 171v375h273v-137h171v137h274v-137zm-597-1246v-102h920v102h-920zm460 1092h-512v-46l73-55h879l71 55v46h-511zm0-169h-350l60-47v-57h580v57l60 47h-350zm0-546h-290v-46l-60-58h700l-60 58v46h-290zm0-172h-414l-46-43v-58h920v58l-46 43h-414z" fill-rule="nonzero" transform="translate(0,2048) scale(1,-1)" display="block" fill="#000"/> + <g fill-rule="nonzero" fill="#fff"> + <path style="color:black;" d="m564 1588v102h920v-102h-920z" display="block"/> + <path style="color:black;" d="m1024 496h-512v46l73 55h879l71-55v-46h-511z" display="block"/> + <path style="color:black;" d="m1024 665h-350l60 47v57h580v-57l60-47h-350z" display="block"/> + <path style="color:black;" d="m1024 1211h-290v46l-60 58h700l-60-58v-46h-290z" display="block"/> + <path style="color:black;" d="m1024 1383h-414l-46 43v58h920v-58l-46-43h-414z" display="block"/> + </g> + <g fill-rule="nonzero" fill="#f00"> + <path style="color:black;" d="M740,800 l560,360 v40 L740,840 z" display="block"/> + <path style="color:black;" d="M1300,800 l-560,360 v40 L1300,840 z" display="block"/> + </g> +</svg> diff --git a/client/public/images/pieces/Spartan/bl.svg b/client/public/images/pieces/Spartan/bl.svg deleted file mode 120000 index dfaa0688..00000000 --- a/client/public/images/pieces/Spartan/bl.svg +++ /dev/null @@ -1 +0,0 @@ -../bb.svg \ No newline at end of file diff --git a/client/public/images/pieces/Spartan/bl.svg b/client/public/images/pieces/Spartan/bl.svg new file mode 100644 index 00000000..17ba73f9 --- /dev/null +++ b/client/public/images/pieces/Spartan/bl.svg @@ -0,0 +1,88 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<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" + height="100%" + width="100%" + version="1.1" + viewBox="0 0 2048 2048" + id="svg16" + sodipodi:docname="bb.svg" + inkscape:version="1.0.2 (e86c870879, 2021-01-15)"> + <metadata + id="metadata22"> + <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="defs20" /> + <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="namedview18" + showgrid="false" + inkscape:zoom="0.43115234" + inkscape:cx="1024" + inkscape:cy="1024" + inkscape:window-x="0" + inkscape:window-y="20" + inkscape:window-maximized="0" + inkscape:current-layer="svg16" /> + <path + style="color:#000000" + d="m 1290,564.11538 -42,102 q -102,22 -224,22 -121,0 -222,-22 l -42,-101 q 124,31 264,31 138,0 266,-32 z m -84,206 -29,70 v 27 q -76,11 -153,11 -75,0 -152,-11 l -1,-27 -27,-70 q 85,15 180,15 96,0 182,-15 z m -35,-378 q -40,30 -80,95 h -32 q 0,-49 23,-95 z m -206,0 q 23,49 23,95 h -32 q -39,-64 -81,-95 z m 59,-18 q -14,-57 -34,-79 -20,-22 -53,-46 -36,-25 -85,-42 -49,-17 -109,-9 l -281,39 q -17,2 -30,0 -13,-2 -26,-2 -21,0 -53,-9 -32,-9 -51,-28 l -97,159 q 18,20 32,28 14,8 33,17 58,27 124,33 28,2 55,1 27,-1 56,2 54,-9 108,-16 54,-7 110,-16 60,0 81,12 11,6 35,22 24,16 48,47 -53,6 -108,20 -55,14 -97,31 l 104,258 q -78,45 -109,72 -31,27 -49,64 -26,46 -33,89.00002 -7,43 -7,77 1,60 28,132 27,72 104,130 63,48 123,99 60,51 119,119 -74,38 -74,121 0,56 39,96 39,40 97,40 56,0 96,-40 40,-40 40,-96 0,-82 -74,-121 58,-68 117,-119 59,-51 125,-99 75,-57 102,-129 27,-72 29,-133 0,-34 -7,-77 -7,-43.00002 -32,-89.00002 -20,-36 -50,-63 -30,-27 -108,-73 l 104,-258 q -44,-16 -99,-30 -55,-14 -106,-21 23,-31 47,-47 24,-16 36,-22 21,-12 81,-12 54,8 108,15 54,7 110,17 27,-3 54,-2 27,1 57,-1 64,-6 124,-33 18,-9 32,-17 14,-8 33,-28 l -98,-159 q -18,18 -50,27 -32,9 -53,10 -13,0 -26,2 -13,2 -31,0 l -280,-39 q -60,-9 -111,8 -51,17 -85,45 -33,27 -52,46 -19,19 -33,77 z m -37,744.00002 v -85 q 0,-37.00002 37,-37.00002 37,0 37,37.00002 v 86 h 90 q 35,0 35,36 0,36 -35,36 h -90 v 90 q 0,37 -37,37 -37,0 -37,-37 v -90 h -88 q -35,0 -35,-36 0,-36 35,-36 z" + fill-rule="nonzero" + display="block" + fill="#000000" + id="path2" /> + <g + fill-rule="nonzero" + fill="#ffffff" + id="g14" + transform="matrix(1,0,0,-1,0,2030.1154)"> + <path + style="color:#000000" + d="m 1290,1466 -42,-102 q -102,-22 -224,-22 -121,0 -222,22 l -42,101 q 124,-31 264,-31 138,0 266,32 z" + display="block" + id="path4" /> + <path + style="color:#000000" + d="m 1206,1260 -29,-70 v -27 q -76,-11 -153,-11 -75,0 -152,11 l -1,27 -27,70 q 85,-15 180,-15 96,0 182,15 z" + display="block" + id="path6" /> + <path + style="color:#000000" + d="m 1171,1638 q -40,-30 -80,-95 h -32 q 0,49 23,95 z" + display="block" + id="path8" /> + <path + style="color:#000000" + d="m 965,1638 q 23,-49 23,-95 h -32 q -39,64 -81,95 z" + display="block" + id="path10" /> + <path + style="color:#000000" + d="m 987,912 v 85 q 0,37 37,37 37,0 37,-37 v -86 h 90 q 35,0 35,-36 0,-36 -35,-36 h -90 v -90 q 0,-37 -37,-37 -37,0 -37,37 v 90 h -88 q -35,0 -35,36 0,36 35,36 z" + display="block" + id="path12" /> + </g> +</svg> diff --git a/client/public/images/pieces/Spartan/bp.svg b/client/public/images/pieces/Spartan/bp.svg new file mode 100644 index 00000000..30f3063b --- /dev/null +++ b/client/public/images/pieces/Spartan/bp.svg @@ -0,0 +1,68 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<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" + width="20" + height="20" + viewBox="0 0 20 20" + version="1.1" + id="svg6" + sodipodi:docname="bp.svg" + inkscape:version="1.0.2 (e86c870879, 2021-01-15)"> + <metadata + id="metadata12"> + <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="defs10" /> + <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="namedview8" + showgrid="false" + inkscape:zoom="31.218764" + inkscape:cx="10" + inkscape:cy="10" + inkscape:window-x="0" + inkscape:window-y="20" + inkscape:window-maximized="0" + inkscape:current-layer="svg6" + inkscape:document-rotation="0" /> + <title + id="title2">Hoplite</title> + <path + d="m 15.954393,8.9177205 a 5.38,5.38 0 0 0 -4.46,-4.85 c 0.06,-0.69 -0.01,-2.15 -1.5399992,-2.15 -1.53,0 -1.6,1.46 -1.54,2.15 a 5.38,5.38 0 0 0 -4.46,4.85 v 6.0000005 l -2,2 v 1 H 17.954393 v -1 l -2,-2 z" + id="path4" /> + <text + x="7.837368" + y="13.043901" + fill="#808080" + style="font-size:7.98644px;font-family:'DejaVu Sans', 'Bitstream Vera Sans';stroke-width:0.532429" + xml:space="preserve" + id="text4" + transform="scale(0.95601811,1.0460053)"><tspan + x="7.837368" + y="13.043901" + id="tspan2" + style="stroke-width:0.532429">v</tspan></text> +</svg> diff --git a/client/src/variants/Spartan.js b/client/src/variants/Spartan.js index 3b4fc771..acab8ad3 100644 --- a/client/src/variants/Spartan.js +++ b/client/src/variants/Spartan.js @@ -12,8 +12,7 @@ export class SpartanRules extends ChessRules { } getPpath(b) { - if ([V.LIEUTENANT, V.GENERAL, V.CAPTAIN, V.WARLORD].includes(b[1])) - return "Spartan/" + b; + if (b[0] == 'b' && b[1] != 'k') return "Spartan/" + b; return b; } diff --git a/server/db/queryGameStat.sql b/server/db/queryGameStat.sql index c1720902..6b8d5a13 100644 --- a/server/db/queryGameStat.sql +++ b/server/db/queryGameStat.sql @@ -1,4 +1,5 @@ select name,total from GameStat g join variants v on g.vid = v.id -where total > 0; +where total > 0 +order by total desc; -- 2.44.0