From 2f2f1a87455593ecb2703aed769f63eada89729e Mon Sep 17 00:00:00 2001 From: Sam Tubbax Date: Wed, 31 Dec 2025 11:05:03 +0100 Subject: [PATCH 1/2] Add buttons to Rotate map in hyperlane view --- css/style.css | 113 +++++++++++++++++++++++++++++++++++++++++--- css/style.css.map | 2 +- css/style.scss | 33 +++++++++++-- js/draft.js | 13 +++++ templates/draft.php | 4 ++ 5 files changed, 154 insertions(+), 11 deletions(-) diff --git a/css/style.css b/css/style.css index 7a77922..c1d859b 100644 --- a/css/style.css +++ b/css/style.css @@ -1256,24 +1256,125 @@ h4:first-child { left: 7.5em; top: 12.98em; } -.map img[data-rotate="1"] { +.map[data-rotate="1"] { + transform: rotate(60deg); +} +.map[data-rotate="1"] img { + transform: translate(-50%, -50%) rotate(-60deg); +} +.map[data-rotate="1"] span { + transform: translate(-50%, -50%) rotate(-60deg) scale(0.3, 0.3); +} +.map[data-rotate="-1"] { + transform: rotate(-60deg); +} +.map[data-rotate="-1"] img { transform: translate(-50%, -50%) rotate(60deg); } -.map img[data-rotate="2"] { +.map[data-rotate="-1"] span { + transform: translate(-50%, -50%) rotate(60deg) scale(0.3, 0.3); +} +.map[data-rotate="2"] { + transform: rotate(120deg); +} +.map[data-rotate="2"] img { + transform: translate(-50%, -50%) rotate(-120deg); +} +.map[data-rotate="2"] span { + transform: translate(-50%, -50%) rotate(-120deg) scale(0.3, 0.3); +} +.map[data-rotate="-2"] { + transform: rotate(-120deg); +} +.map[data-rotate="-2"] img { transform: translate(-50%, -50%) rotate(120deg); } -.map img[data-rotate="3"] { +.map[data-rotate="-2"] span { + transform: translate(-50%, -50%) rotate(120deg) scale(0.3, 0.3); +} +.map[data-rotate="3"] { + transform: rotate(180deg); +} +.map[data-rotate="3"] img { + transform: translate(-50%, -50%) rotate(-180deg); +} +.map[data-rotate="3"] span { + transform: translate(-50%, -50%) rotate(-180deg) scale(0.3, 0.3); +} +.map[data-rotate="-3"] { + transform: rotate(-180deg); +} +.map[data-rotate="-3"] img { transform: translate(-50%, -50%) rotate(180deg); } -.map img[data-rotate="4"] { +.map[data-rotate="-3"] span { + transform: translate(-50%, -50%) rotate(180deg) scale(0.3, 0.3); +} +.map[data-rotate="4"] { + transform: rotate(240deg); +} +.map[data-rotate="4"] img { + transform: translate(-50%, -50%) rotate(-240deg); +} +.map[data-rotate="4"] span { + transform: translate(-50%, -50%) rotate(-240deg) scale(0.3, 0.3); +} +.map[data-rotate="-4"] { + transform: rotate(-240deg); +} +.map[data-rotate="-4"] img { transform: translate(-50%, -50%) rotate(240deg); } -.map img[data-rotate="5"] { +.map[data-rotate="-4"] span { + transform: translate(-50%, -50%) rotate(240deg) scale(0.3, 0.3); +} +.map[data-rotate="5"] { + transform: rotate(300deg); +} +.map[data-rotate="5"] img { + transform: translate(-50%, -50%) rotate(-300deg); +} +.map[data-rotate="5"] span { + transform: translate(-50%, -50%) rotate(-300deg) scale(0.3, 0.3); +} +.map[data-rotate="-5"] { + transform: rotate(-300deg); +} +.map[data-rotate="-5"] img { transform: translate(-50%, -50%) rotate(300deg); } -.map img[data-rotate="6"] { +.map[data-rotate="-5"] span { + transform: translate(-50%, -50%) rotate(300deg) scale(0.3, 0.3); +} +.map[data-rotate="6"] { + transform: rotate(360deg); +} +.map[data-rotate="6"] img { + transform: translate(-50%, -50%) rotate(-360deg); +} +.map[data-rotate="6"] span { + transform: translate(-50%, -50%) rotate(-360deg) scale(0.3, 0.3); +} +.map[data-rotate="-6"] { + transform: rotate(-360deg); +} +.map[data-rotate="-6"] img { transform: translate(-50%, -50%) rotate(360deg); } +.map[data-rotate="-6"] span { + transform: translate(-50%, -50%) rotate(360deg) scale(0.3, 0.3); +} + +.rotate-map { + display: flex; + flex-direction: row; + justify-content: space-between; +} + +.rotate-map button { + font-size: 30px; + padding: 0.1em 0.3em 0.3em; +} #log p { border-bottom: 1px solid rgba(0, 0, 0, 0.2); diff --git a/css/style.css.map b/css/style.css.map index 468e762..844fa64 100644 --- a/css/style.css.map +++ b/css/style.css.map @@ -1 +1 @@ -{"version":3,"sourceRoot":"","sources":["style.scss"],"names":[],"mappings":"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EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAMR;EACI;;AADJ;EACI;;AADJ;EACI;;AADJ;EACI;;AADJ;EACI;;AADJ;EACI;;;AAIZ;EACI;EACA;;;AAEJ;EACI;;;AAGJ;EACI;;;AAEJ;EACI;EACA;EACA;;;AAEJ;EACI;EACA;EACA;EACA;EACA;;AAEA;EAPJ;IAQQ;;;AAGJ;EACI;EACA;;AAEA;EAJJ;IAKQ;;;;AAKR;EACI;EACA;EACA;;;AAGR;EAEI;EACA;EACA;EACA;;;AAGJ;EACI;;AACA;EACI;;;AAIJ;EACI;EACA;EACA;;AAEA;EACI;EACA;EACA;;AAIR;EACI;;AACA;EACI,OAp4BG;;AAw4BX;EACI;;AACA;EACI,OA14BG;;AA84BX;EACI;;AACA;EACI,OAh5BG;;AAo5BX;EACI;;AACA;EACI,OAt5BG;;;AA25BX;EACI;EACA;EACA;;AAEJ;EACI,OAp6BO;;AAs6BX;EACI,OAt6BO;;AAw6BX;EACI,OAx6BO;;AA06BX;EACI,OA16BO;;;AA86Bf;EACI;IACI,kBA17BK;;EA67BT;IACI,OA/7BW;;EAk8Bf;IACI,kBAl8BK;IAm8BL,OAp8BW;IAq8BX,cAr8BW;;EAw8Bf;IACI,OAt8Be;;EAy8BnB;IACI,kBA18Be;IA28Bf,OA98BW;;EAi9Bf;IACI,cAl9BW;;EAs9BX;IACI,cAn9BS;;EAq9Bb;IACI,cAt9BS;IAu9BT,kBA19BC;;EA49BD;IACI,qBA79BH;IA89BG,kBA99BH;;EAo+BT;IACI,cAl+Ba;;EAq+BjB;IACI,kBAz+BK;;EA4+BT;IACI,OA7+BK;;EA++BT;IACI;;EAEJ;IACI,OAp/BW;IAq/BX,cAr/BW;;;AAy/BnB;EACI;;;AAEJ;EACI;;;AAEJ;EACI;;;AAEJ;EACI;;;AAGJ;EACI;IACI;;EAEJ;IACI;IACA;IACA;;EAEJ;IACI;;EAEJ;IACI;;EAEJ;IACI;IACA;;EACA;IACI;;EAGR;IACI;IACA;;EACA;IACI;;EAGR;IACI;;EAEJ;IACI;IACA","file":"style.css"} \ No newline at end of file +{"version":3,"sourceRoot":"","sources":["style.scss"],"names":[],"mappings":"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EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAFJ;EACI;EACA;;AAOV;EACE;;AAEA;EACE;;AAEF;EACE;;AAGJ;EACE;;AAEA;EACE;;AAEF;EACE;;AAjBJ;EACE;;AAEA;EACE;;AAEF;EACE;;AAGJ;EACE;;AAEA;EACE;;AAEF;EACE;;AAjBJ;EACE;;AAEA;EACE;;AAEF;EACE;;AAGJ;EACE;;AAEA;EACE;;AAEF;EACE;;AAjBJ;EACE;;AAEA;EACE;;AAEF;EACE;;AAGJ;EACE;;AAEA;EACE;;AAEF;EACE;;AAjBJ;EACE;;AAEA;EACE;;AAEF;EACE;;AAGJ;EACE;;AAEA;EACE;;AAEF;EACE;;AAjBJ;EACE;;AAEA;EACE;;AAEF;EACE;;AAGJ;EACE;;AAEA;EACE;;AAEF;EACE;;;AAKV;EACE;EACA;EACA;;;AAEF;EACE;EACA;;;AAEF;EACI;EACA;;;AAEJ;EACI;;;AAGJ;EACI;;;AAEJ;EACI;EACA;EACA;;;AAEJ;EACI;EACA;EACA;EACA;EACA;;AAEA;EAPJ;IAQQ;;;AAGJ;EACI;EACA;;AAEA;EAJJ;IAKQ;;;;AAKR;EACI;EACA;EACA;;;AAGR;EAEI;EACA;EACA;EACA;;;AAGJ;EACI;;AACA;EACI;;;AAIJ;EACI;EACA;EACA;;AAEA;EACI;EACA;EACA;;AAIR;EACI;;AACA;EACI,OA75BG;;AAi6BX;EACI;;AACA;EACI,OAn6BG;;AAu6BX;EACI;;AACA;EACI,OAz6BG;;AA66BX;EACI;;AACA;EACI,OA/6BG;;;AAo7BX;EACI;EACA;EACA;;AAEJ;EACI,OA77BO;;AA+7BX;EACI,OA/7BO;;AAi8BX;EACI,OAj8BO;;AAm8BX;EACI,OAn8BO;;;AAu8Bf;EACI;IACI,kBAn9BK;;EAs9BT;IACI,OAx9BW;;EA29Bf;IACI,kBA39BK;IA49BL,OA79BW;IA89BX,cA99BW;;EAi+Bf;IACI,OA/9Be;;EAk+BnB;IACI,kBAn+Be;IAo+Bf,OAv+BW;;EA0+Bf;IACI,cA3+BW;;EA++BX;IACI,cA5+BS;;EA8+Bb;IACI,cA/+BS;IAg/BT,kBAn/BC;;EAq/BD;IACI,qBAt/BH;IAu/BG,kBAv/BH;;EA6/BT;IACI,cA3/Ba;;EA8/BjB;IACI,kBAlgCK;;EAqgCT;IACI,OAtgCK;;EAwgCT;IACI;;EAEJ;IACI,OA7gCW;IA8gCX,cA9gCW;;;AAkhCnB;EACI;;;AAEJ;EACI;;;AAEJ;EACI;;;AAEJ;EACI;;;AAGJ;EACI;IACI;;EAEJ;IACI;IACA;IACA;;EAEJ;IACI;;EAEJ;IACI;;EAEJ;IACI;IACA;;EACA;IACI;;EAGR;IACI;IACA;;EACA;IACI;;EAGR;IACI;;EAEJ;IACI;IACA","file":"style.css"} \ No newline at end of file diff --git a/css/style.scss b/css/style.scss index b2b5d7c..2f82b4e 100644 --- a/css/style.scss +++ b/css/style.scss @@ -778,8 +778,6 @@ h4 { display: none; } .map { - - width: 100%; height: 100%; transform: translate(-50%, -50%); @@ -833,12 +831,39 @@ h4 { } } + @for $i from 1 through 6 { - img[data-rotate="#{$i}"] { - transform: translate(-50%, -50%) rotate(#{$i * 60}deg); + &[data-rotate="#{$i}"] { + transform: rotate(#{$i * 60}deg); + + img { + transform: translate(-50%, -50%) rotate(#{$i * -60}deg) + } + span { + transform: translate(-50%, -50%) rotate(#{$i * -60}deg) scale(0.3, 0.3); } + } + &[data-rotate="-#{$i}"] { + transform: rotate(#{$i * -60}deg); + + img { + transform: translate(-50%, -50%) rotate(#{$i * 60}deg) + } + span { + transform: translate(-50%, -50%) rotate(#{$i * 60}deg) scale(0.3, 0.3); + } + } } } +.rotate-map { + display: flex; + flex-direction: row; + justify-content: space-between; +} +.rotate-map button { + font-size: 30px; + padding: 0.1em 0.3em 0.3em; +} #log p { border-bottom: 1px solid rgba(0, 0, 0, 0.2); padding-bottom: 1em; diff --git a/js/draft.js b/js/draft.js index 39b71f7..cd7b4b1 100644 --- a/js/draft.js +++ b/js/draft.js @@ -18,6 +18,12 @@ $(document).ready(function () { } }); + $('.rotate-map-left').on('click', function (e) { + rotateMap(-1); + }) + $('.rotate-map-right').on('click', function (e) { + rotateMap(1); + }) $('.close-popup').on('click', function(e) { $(this).parents('.popup').removeClass('open'); @@ -581,3 +587,10 @@ function getPlayerInPosition(position) { } return null; } + + +let mapRotation = 0; +function rotateMap(direction) { + mapRotation = (mapRotation + direction) % 6; + $('#mapview-hyperlane .map').attr('data-rotate', mapRotation); +} \ No newline at end of file diff --git a/templates/draft.php b/templates/draft.php index 3e1e246..1167ce2 100644 --- a/templates/draft.php +++ b/templates/draft.php @@ -305,6 +305,10 @@

Hyperlane Map

+
+ + +
From f58f40b70a4404c9a2c3bc0ca1a3c820ae8404f5 Mon Sep 17 00:00:00 2001 From: Sam Tubbax Date: Wed, 31 Dec 2025 11:12:20 +0100 Subject: [PATCH 2/2] Revert tile selection thing, because it makes valid slice generation a lot harder apparently --- data/tile-selection.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/data/tile-selection.json b/data/tile-selection.json index 9f52197..822f9ec 100644 --- a/data/tile-selection.json +++ b/data/tile-selection.json @@ -1,8 +1,8 @@ { "BaseGame": { "high": [28, 29, 30, 32, 33, 35, 36, 38], - "mid": [26, 27, 31, 34, 37, 24], - "low": [19, 20, 21, 22, 23, 25] + "mid": [26, 27, 31, 34, 37], + "low": [19, 20, 21, 22, 23, 24, 25] }, "PoK": { "high": [69, 70, 71, 75 ],