From 6ce22c808bd3025ea252334e516451ddc3b948eb Mon Sep 17 00:00:00 2001 From: Daniel Karbach Date: Mon, 25 Mar 2024 00:05:07 +0100 Subject: [PATCH] tracker descriptions --- resources/js/components/tracker/Map.js | 19 ++++-- resources/js/i18n/de.js | 94 ++++++++++++++++++++++++++ resources/js/i18n/en.js | 94 ++++++++++++++++++++++++++ resources/sass/tracker.scss | 39 ++++++++--- 4 files changed, 228 insertions(+), 18 deletions(-) diff --git a/resources/js/components/tracker/Map.js b/resources/js/components/tracker/Map.js index d8e7636..3112631 100644 --- a/resources/js/components/tracker/Map.js +++ b/resources/js/components/tracker/Map.js @@ -314,7 +314,7 @@ const LW_LOCATIONS = [ 'saha', ], x: 0.815, - y: 0.42, + y: 0.465, }, { id: 'saha-hut', @@ -324,7 +324,7 @@ const LW_LOCATIONS = [ 'saha-right', ], x: 0.815, - y: 0.465, + y: 0.42, }, { id: 'sick-kid', @@ -601,7 +601,7 @@ const DW_LOCATIONS = [ }, ]; -const Location = ({ l, size }) => { +const Location = ({ number, l, size }) => { const { t } = useTranslation(); const classNames = ['location', `status-${l.status}`]; @@ -609,12 +609,17 @@ const Location = ({ l, size }) => { classNames.push(`size-${size}`); } - return + return {t(`tracker.location.${l.id}`)} - ; + + {number && l.cleared < l.total ? + {Math.max(0, l.total - l.cleared)} + : null} + ; }; Location.propTypes = { + number: PropTypes.bool, l: PropTypes.shape({ id: PropTypes.string, x: PropTypes.number, @@ -716,7 +721,7 @@ const Map = () => { )} {lwDungeons.map(l => - + )} @@ -756,7 +761,7 @@ const Map = () => { )} {dwDungeons.map(l => - + )} diff --git a/resources/js/i18n/de.js b/resources/js/i18n/de.js index 3b6240c..7232e2d 100644 --- a/resources/js/i18n/de.js +++ b/resources/js/i18n/de.js @@ -230,7 +230,11 @@ export default { YoutubeIcon: 'YouTube', VideoIcon: 'Video', zelda: { + aga: 'Agahnim', + armos: 'Armos Knights', + arrghus: 'Arrghus', 'big-key': 'Big Key', + blind: 'Blind', 'blue-boomerang': 'Boomerang', 'blue-mail': 'Blue Mail', 'blue-pendant': 'Pendant of Power', @@ -277,17 +281,26 @@ export default { 'green-potion': 'Green Potion', 'half-magic': 'Half Magic', hammer: 'Hammer', + 'heart-0': 'Keine Heart Pieces', + 'heart-1': 'Ein Heart Piece', + 'heart-2': 'Zwei Heart Pieces', + 'heart-3': 'Drei Heart Pieces', 'heart-container': 'Heart Container', 'heart-piece': 'Heart Piece', + helma: 'King Helmasaur', hookshot: 'Hookshot', 'ice-rod': 'Ice Rod', + kholdstare: 'Kholdstare', lamp: 'Lamp', + lanmolas: 'Lanmolas', map: 'Map', 'master-sword': 'Master Sword', mirror: 'Mirror', 'mirror-shield': 'Mirror Shield', mitts: 'Titan \'s Mitts', moonpearl: 'Moonpearl', + moldorm: 'Moldorm', + mothula: 'Mothula', mushroom: 'Mushroom', 'not-flippers': 'Keine Flippers', 'not-mirror': 'Kein Mirror', @@ -297,6 +310,7 @@ export default { 'quarter-magic': 'Quarter Magic', 'red-bomb': 'Red Bomb', 'red-boomerang': 'Red Boomerang', + 'red-crystal': 'Red Crystal', 'red-mail': 'Red Mail', 'red-pendant': 'Pendant of Wisdom', 'red-potion': 'Red Potion', @@ -304,7 +318,13 @@ export default { silvers: 'Silvers', 'small-key': 'Small Key', somaria: 'Cane of Somaria', + 'sword-1': 'Fighter Sword', + 'sword-2': 'Master Sword', + 'sword-3': 'Tempered Sword', + 'sword-4': 'Gold Sword', 'tempered-sword': 'Tempered Sword', + trinexx: 'Trinexx', + vitreous: 'Vitreous', }, }, map: { @@ -480,6 +500,80 @@ export default { rulesetFilterHeading: 'Zeige nur Techniken, die in folgenden Regelsätzen erlaubt sind:', seeAlso: 'Siehe auch', }, + tracker: { + location: { + aginah: 'Aginah', + blacksmith: 'Blacksmith', + brewery: 'Brewery', + 'blinds-hideout': 'Blind\'s Hideout', + 'bombos-tablet': 'Bombos Tablet', + 'bonk-rocks': 'Pegasus Rocks', + 'bottle-merchant': 'Bottle Merchant', + 'bumper-cave': 'Bumper Cave', + 'c-house': 'C-Shaped House', + catfish: 'Catfish', + 'cave-45': 'Cave 45', + checkerboard: 'Checkerboard Cave', + 'chest-game': 'Chest Game', + 'chicken-house': 'Chicken House', + dam: 'Dam', + 'desert-ledge': 'Desert Ledge', + 'digging-game': 'Digging Game', + dp: 'Desert Palace', + ep: 'Eastern Palace', + 'floating-island': 'Floating Island', + 'flute-spot': 'Flute Spot', + 'ether-tablet': 'Ether Tablet', + 'graveyard-ledge': 'Graveyard Ledge', + gt: 'Ganon\'s Tower', + 'hammer-pegs': 'Hammer Pegs', + hobo: 'Hobo', + 'hookshot-cave': 'Hookshot Cave', + 'hookshot-cave-bonk': 'Hookshot Cave (bonkable chest)', + 'hype-cave': 'Hype Cave', + 'ice-rod-cave': 'Ice Rod Cave', + ip: 'Ice Palace', + 'kak-well': 'Kakariko Well', + 'kings-tomb': 'King\'s Tomb', + 'lake-hylia-island': 'Lake Hylia Island', + library: 'Library', + 'links-house': 'Link\'s House', + 'lost-woods-hideout': 'Lost Woods Hideout', + lumberjack: 'Lumberjack', + 'magic-bat': 'Magic Bat', + 'mimic-cave': 'Mimic Cave', + 'mini-moldorm-cave': 'Mini Moldorm Cave', + 'mire-shed': 'Mire Shed', + mm: 'Misery Mire', + 'mushroom-spot': 'Mushroom Spot', + 'old-man': 'Old Man', + 'paradox-cave': 'Paradox Cave', + pd: 'Palace of Darkness', + pedestal: 'Master Sword Pedestal', + 'potion-shop': 'Potion Shop', + 'purple-chest': 'Purple Chest', + pyramid: 'Pyramid Ledge', + 'pyramid-fairy': 'Pyramid Fairy', + 'race-game': 'Race Game', + saha: 'Sahasrahla', + 'saha-hut': 'Sahasrahla\'s Hut', + 'sick-kid': 'Sick Kid', + sp: 'Swamp Palace', + 'spec-rock': 'Spectacle Rock', + 'spec-rock-cave': 'Spectacle Rock Cave', + 'spike-cave': 'Spike Cave', + 'spiral-cave': 'Spiral Cave', + stumpy: 'Stumpy', + 'super-bunny': 'Super Bunny Cave', + sw: 'Skull Woods', + tavern: 'Back of Tavern', + th: 'Tower of Hera', + tt: 'Thieves\' Town', + 'waterfall-fairy': 'Waterfall Fairy', + zora: 'King Zora', + 'zora-ledge': 'Zora\'s Ledge', + }, + }, tournaments: { admins: 'Organisation', applicationDenied: 'Antrag wurde abgelehnt', diff --git a/resources/js/i18n/en.js b/resources/js/i18n/en.js index b4acc0c..a76dd6c 100644 --- a/resources/js/i18n/en.js +++ b/resources/js/i18n/en.js @@ -230,7 +230,11 @@ export default { YoutubeIcon: 'YouTube', VideoIcon: 'Video', zelda: { + aga: 'Agahnim', + armos: 'Armos Knights', + arrghus: 'Arrghus', 'big-key': 'Big Key', + blind: 'Blind', 'blue-boomerang': 'Boomerang', 'blue-mail': 'Blue Mail', 'blue-pendant': 'Pendant of Power', @@ -277,16 +281,25 @@ export default { 'green-potion': 'Green Potion', 'half-magic': 'Half Magic', hammer: 'Hammer', + 'heart-0': 'No Heart Pieces', + 'heart-1': 'One Heart Piece', + 'heart-2': 'Two Heart Pieces', + 'heart-3': 'Three Heart Pieces', 'heart-container': 'Heart Container', 'heart-piece': 'Heart Piece', + helma: 'King Helmasaur', hookshot: 'Hookshot', 'ice-rod': 'Ice Rod', + kholdstare: 'Kholdstare', lamp: 'Lamp', + lanmolas: 'Lanmolas', map: 'Map', 'master-sword': 'Master Sword', mirror: 'Mirror', 'mirror-shield': 'Mirror Shield', mitts: 'Titan \'s Mitts', + moldorm: 'Moldorm', + mothula: 'Mothula', moonpearl: 'Moonpearl', mushroom: 'Mushroom', 'not-flippers': 'No Flippers', @@ -297,6 +310,7 @@ export default { 'quarter-magic': 'Quarter Magic', 'red-bomb': 'Red Bomb', 'red-boomerang': 'Red Boomerang', + 'red-crystal': 'Red Crystal', 'red-mail': 'Red Mail', 'red-pendant': 'Pendant of Wisdom', 'red-potion': 'Red Potion', @@ -304,7 +318,13 @@ export default { silvers: 'Silvers', 'small-key': 'Small Key', somaria: 'Cane of Somaria', + 'sword-1': 'Fighter Sword', + 'sword-2': 'Master Sword', + 'sword-3': 'Tempered Sword', + 'sword-4': 'Gold Sword', 'tempered-sword': 'Tempered Sword', + trinexx: 'Trinexx', + vitreous: 'Vitreous', }, }, map: { @@ -480,6 +500,80 @@ export default { rulesetFilterHeading: 'Only show techniques allowed in the following rulesets:', seeAlso: 'See also', }, + tracker: { + location: { + aginah: 'Aginah', + blacksmith: 'Blacksmith', + brewery: 'Brewery', + 'blinds-hideout': 'Blind\'s Hideout', + 'bombos-tablet': 'Bombos Tablet', + 'bonk-rocks': 'Pegasus Rocks', + 'bottle-merchant': 'Bottle Merchant', + 'bumper-cave': 'Bumper Cave', + 'c-house': 'C-Shaped House', + catfish: 'Catfish', + 'cave-45': 'Cave 45', + checkerboard: 'Checkerboard Cave', + 'chest-game': 'Chest Game', + 'chicken-house': 'Chicken House', + dam: 'Dam', + 'desert-ledge': 'Desert Ledge', + 'digging-game': 'Digging Game', + dp: 'Desert Palace', + ep: 'Eastern Palace', + 'floating-island': 'Floating Island', + 'flute-spot': 'Flute Spot', + 'ether-tablet': 'Ether Tablet', + 'graveyard-ledge': 'Graveyard Ledge', + gt: 'Ganon\'s Tower', + 'hammer-pegs': 'Hammer Pegs', + hobo: 'Hobo', + 'hookshot-cave': 'Hookshot Cave', + 'hookshot-cave-bonk': 'Hookshot Cave (bonkable chest)', + 'hype-cave': 'Hype Cave', + 'ice-rod-cave': 'Ice Rod Cave', + ip: 'Ice Palace', + 'kak-well': 'Kakariko Well', + 'kings-tomb': 'King\'s Tomb', + 'lake-hylia-island': 'Lake Hylia Island', + library: 'Library', + 'links-house': 'Link\'s House', + 'lost-woods-hideout': 'Lost Woods Hideout', + lumberjack: 'Lumberjack', + 'magic-bat': 'Magic Bat', + 'mimic-cave': 'Mimic Cave', + 'mini-moldorm-cave': 'Mini Moldorm Cave', + 'mire-shed': 'Mire Shed', + mm: 'Misery Mire', + 'mushroom-spot': 'Mushroom Spot', + 'old-man': 'Old Man', + 'paradox-cave': 'Paradox Cave', + pd: 'Palace of Darkness', + pedestal: 'Master Sword Pedestal', + 'potion-shop': 'Potion Shop', + 'purple-chest': 'Purple Chest', + pyramid: 'Pyramid Ledge', + 'pyramid-fairy': 'Pyramid Fairy', + 'race-game': 'Race Game', + saha: 'Sahasrahla', + 'saha-hut': 'Sahasrahla\'s Hut', + 'sick-kid': 'Sick Kid', + sp: 'Swamp Palace', + 'spec-rock': 'Spectacle Rock', + 'spec-rock-cave': 'Spectacle Rock Cave', + 'spike-cave': 'Spike Cave', + 'spiral-cave': 'Spiral Cave', + stumpy: 'Stumpy', + 'super-bunny': 'Super Bunny Cave', + sw: 'Skull Woods', + tavern: 'Back of Tavern', + th: 'Tower of Hera', + tt: 'Thieves\' Town', + 'waterfall-fairy': 'Waterfall Fairy', + zora: 'King Zora', + 'zora-ledge': 'Zora\'s Ledge', + }, + }, tournaments: { admins: 'Admins', applicationDenied: 'Application denied', diff --git a/resources/sass/tracker.scss b/resources/sass/tracker.scss index f1b745a..96da0ae 100644 --- a/resources/sass/tracker.scss +++ b/resources/sass/tracker.scss @@ -123,20 +123,37 @@ width: 50em; height: auto; .location { - width: 0.04px; - height: 0.04px; - fill: green; - stroke: black; - stroke-width: 0.003px; - transform: translate(-0.02px, -0.02px); + .box { + width: 0.04px; + height: 0.04px; + fill: green; + stroke: black; + stroke-width: 0.003px; + transform: translate(-0.02px, -0.02px); + } + .text { + fill: black; + font-size: 0.02px; + font-weight: bold; + text-anchor: middle; + dominant-baseline: middle; + pointer-events: none; + } &.status-cleared { - fill: grey; - opacity: 0.4; + .box { + fill: grey; + opacity: 0.4; + } } &.size-lg { - width: 0.08px; - height: 0.08px; - transform: translate(-0.04px, -0.04px); + .box { + width: 0.08px; + height: 0.08px; + transform: translate(-0.04px, -0.04px); + } + .text { + font-size: 0.04px; + } } } } -- 2.39.2