]> git.localhorst.tv Git - alttp.git/commitdiff
tracker descriptions
authorDaniel Karbach <daniel.karbach@localhorst.tv>
Sun, 24 Mar 2024 23:05:07 +0000 (00:05 +0100)
committerDaniel Karbach <daniel.karbach@localhorst.tv>
Sun, 24 Mar 2024 23:05:07 +0000 (00:05 +0100)
resources/js/components/tracker/Map.js
resources/js/i18n/de.js
resources/js/i18n/en.js
resources/sass/tracker.scss

index d8e76364fb864a0f09def8cd0e1423a24ad30f83..311263116a4c197f7af63378ecac1d793b2f6f1a 100644 (file)
@@ -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 <rect className={classNames.join(' ')} x={l.x} y={l.y}>
+       return <g className={classNames.join(' ')} transform={`translate(${l.x} ${l.y})`}>
                <title>{t(`tracker.location.${l.id}`)}</title>
-       </rect>;
+               <rect className="box" x="0" y="0" />
+               {number && l.cleared < l.total ?
+                       <text className="text" x="0" y="0">{Math.max(0, l.total - l.cleared)}</text>
+               : null}
+       </g>;
 };
 
 Location.propTypes = {
+       number: PropTypes.bool,
        l: PropTypes.shape({
                id: PropTypes.string,
                x: PropTypes.number,
@@ -716,7 +721,7 @@ const Map = () => {
                                                <Location key={l.id} l={l} />
                                        )}
                                        {lwDungeons.map(l =>
-                                               <Location key={l.id} l={l} size="lg" />
+                                               <Location key={l.id} number l={l} size="lg" />
                                        )}
                                </g>
                        </g>
@@ -756,7 +761,7 @@ const Map = () => {
                                                <Location key={l.id} l={l} />
                                        )}
                                        {dwDungeons.map(l =>
-                                               <Location key={l.id} l={l} size="lg" />
+                                               <Location key={l.id} number l={l} size="lg" />
                                        )}
                                </g>
                        </g>
index 3b6240c07e806254f316046647dbaa95f7b455be..7232e2d199bda91631b26172c26df45f063a53c3 100644 (file)
@@ -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',
index b4acc0cf6e935861659c993d3ce3f2b9bb0a51ff..a76dd6c1cbb528d7cf22b2c861536f64cb2159d1 100644 (file)
@@ -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',
index f1b745a0a24c97617f4a8e0a2afd52b2b9871f3b..96da0ae2594f35aa4ab52f0e7886f9b251547fff 100644 (file)
                        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;
+                                       }
                                }
                        }
                }