X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=variants%2FHex%2Fclass.js;h=925507eb2d7074e7ba3388d51bc7eb4df8347b27;hb=e7d409fc03a8cd8459a2b41f9fef51c0a3fb0d6d;hp=ab634b8891e94b849295ba684f48aa592a8e8285;hpb=a1b45f4c9f254fad73af06b4123b7208247bbba4;p=xogo.git diff --git a/variants/Hex/class.js b/variants/Hex/class.js index ab634b8..925507e 100644 --- a/variants/Hex/class.js +++ b/variants/Hex/class.js @@ -78,24 +78,21 @@ export default class HexRules extends ChessRules { return (emptyCount + "/").repeat(this.size.x).slice(0, -1) + " w 0"; } - // TODO: enable vertical board (rotate?) getSvgChessboard() { // NOTE: with small margin seems nicer let width = 173.2 * this.size.y + 173.2 * (this.size.y-1) / 2 + 30, height = 50 + Math.floor(150 * this.size.x) + 30, min_x = -86.6 - 15, min_y = -100 - 15; -// if (this.size.ratio < 1) { -// [width, height] = [height, width]; -// [min_x, min_y] = [min_y, min_x]; -// } + if (this.size.ratio < 1) { + // Rotate by 30 degrees to display vertically + [width, height] = [height, width]; + [min_x, min_y] = [min_y, min_x]; + } let board = ` + class="chessboard_SVG"> `; - board += ""; + board += "`; } } - board += ``; + board += ` this.rescale(e.deltaY < 0 ? "up" : "down")); + } if ('ontouchstart' in window) document.addEventListener("touchstart", mousedown, {passive: false}); } - // TODO: enable rotation get size() { - const baseRatio = 1.619191; // 2801.2 / 1730, "widescreen" - const rotate = false; //window.innerWidth < window.innerHeight; //"vertical screen" + const baseRatio = 1.6191907514450865; //2801.2 / 1730, "widescreen" + const rotate = window.innerWidth < window.innerHeight; //"vertical screen" return { x: this.options["bsize"], y: this.options["bsize"],