From 6d058992ebb47a571d88351a2f6fb96d447f3cea Mon Sep 17 00:00:00 2001 From: jordanbrauer Date: Tue, 4 Oct 2016 16:23:53 -0500 Subject: [PATCH] Working on symbol rarity colours. Working, but a few 'bugs'. --- less/keyrune.less | 18 ++-- sass/components/_rarities.scss | 19 ++++ sass/components/_setsymbol.scss | 27 ++++- sass/config/_variables.scss | 177 +++++++++++++++++++++++++++++++- sass/keyrune.scss | 1 + 5 files changed, 228 insertions(+), 14 deletions(-) create mode 100644 sass/components/_rarities.scss diff --git a/less/keyrune.less b/less/keyrune.less index 6f86592..1b6801e 100644 --- a/less/keyrune.less +++ b/less/keyrune.less @@ -1,8 +1,10 @@ -@import "variables.less"; -@import "path.less"; -@import "core.less"; -@import "sizes.less"; -@import "rarities.less"; -@import "width.less"; -@import "icons.less"; -@import "border.less"; +// Currently using this as a checklist for which files I have successfully converted into sass versions. + +// @import "variables.less"; // variable +// @import "path.less"; // typography +// @import "core.less"; // component +// @import "sizes.less"; // variable +@import "rarities.less"; // variable +@import "width.less"; // variable(?) +// @import "icons.less"; // component +@import "border.less"; // component diff --git a/sass/components/_rarities.scss b/sass/components/_rarities.scss new file mode 100644 index 0000000..2b6285d --- /dev/null +++ b/sass/components/_rarities.scss @@ -0,0 +1,19 @@ +// TODO: Fix background color leaking on gradient class. +// TODO: Fix text-stroke issue on non-gradient classes. +@each $scheme in $rarity_palette { + .#{$keyrune_prefix}.#{$keyrune_prefix}-#{nth($scheme, 1)} { + color: #{nth($scheme, 2)}; + + &.#{$keyrune_prefix}-grad { + background: gradient(linear, left top, right top, color-stop(1%, #{nth($scheme, 3)}), color-stop(50%, #{nth($scheme, 4)}), color-stop(100%, #{nth($scheme, 3)})); + background: linear-gradient(left, #{nth($scheme, 3)} 1%, #{nth($scheme, 4)} 50%, #{nth($scheme, 3)} 100%); + text-stroke: 0.03em #{nth($scheme, 5)}; + background-clip: text; + text-fill-color: transparent; + + &.#{$keyrune_prefix}-no-border { + text-stroke: 0; + } + } + } +} diff --git a/sass/components/_setsymbol.scss b/sass/components/_setsymbol.scss index d9ff293..8385228 100644 --- a/sass/components/_setsymbol.scss +++ b/sass/components/_setsymbol.scss @@ -15,13 +15,30 @@ // default symbol if the set does not exist yet, or setcode does not match &:before { - content: $setsymbol_default_content; + content: "#{$setsymbol_default_content}"; + } + + // set symbol size modifiers + @each $size in $symbol_sizes { + &.#{$keyrune_prefix}-#{nth($size, 1)} { + font-size: #{nth($size, 2)}; + } } } -// set symbol size modifier classes -@each $size in $symbol_sizes { - .#{$keyrune_prefix}.#{nth($size, 1)} { - font-size: #{nth($size, 2)} +// set symbol glyphs +// Originally, this was inside of the .#{$keyrune_prefix} class above, +// and used a '&' parent selector. +// However, the loop caused a strange +// interatction and printed all of the the set name comments above all +// of the set glyh classes; making a giant block of comments on top of +// a huge list of classes. +// +// Temporary solution for proper selector specificity was to prefix the +// class with the same variable as the main .ss class above. +@each $set in $mtg_setlist { + /* #{nth($set, 1)} */ + .#{$keyrune_prefix}.#{$keyrune_prefix}-#{nth($set, 2)}:before { + content: "#{nth($set, 3)}"; } } diff --git a/sass/config/_variables.scss b/sass/config/_variables.scss index c43afd6..a783ee8 100644 --- a/sass/config/_variables.scss +++ b/sass/config/_variables.scss @@ -49,6 +49,181 @@ $setsymbol_moz_font_smoothing: grayscale !default; $setsymbol_default_content: "\e684" !default; // MtG Setlist =================================== +// (Set_Name, Set_Code, Set_Glyph) $mtg_setlist: ( - + ("Alpha", 'lea', "\e600") + ("Beta", 'leb', "\e601") + ("Unlimited", '2ed', "\e602") + ("Revised", '3ed', "\e603") + ("4th Edition", '4ed', "\e604") + ("Summer Magic", 'psum', "\e605") + ("5th Edition", '5ed', "\e606") + ("6th Edition", '6ed', "\e607") + ("7th Edition", '7ed', "\e608") + ("8th Edition", '8ed', "\e609") + ("9th Edition", '9ed', "\e60a") + ("10th Edition", '10e', "\e60b") + ("Magic 2010", 'm10', "\e60c") + ("Magic 2011", 'm11', "\e60d") + ("Magic 2012", 'm12', "\e60e") + ("Magic 2013", 'm13', "\e60f") + ("Magic 2014", 'm14', "\e610") + ("Magic 2015", 'm15', "\e611") + ("Core background", 'bcore', "\e612") + ("Magic Origins", 'ori', "\e697") + ("Arabian Nights", 'arn', "\e613") + ("Antiquities", 'atq', "\e614") + ("Legends", 'leg', "\e615") + ("The Dark", 'drk', "\e616") + ("Fallen Empires", 'fem', "\e617") + ("Homelands", 'hml', "\e618") + ("Ice Age", 'ice', "\e619") + ("Alliances", 'all', "\e61a") + ("Coldsnap", 'csp', "\e61b") + ("Mirage", 'mir', "\e61c") + ("Visions", 'vis', "\e61d") + ("Weatherlight", 'wth', "\e61e") + ("Tempest", 'tmp', "\e61f") + ("Stronghold", 'sth', "\e620") + ("Exodus", 'exo', "\e621") + ("Urza's Saga", 'usg', "\e622") + ("Urza's Legacy", 'ulg', "\e623") + ("Urza's Destiny", 'uds', "\e624") + ("Mercadian Masque", 'mmq', "\e625") + ("Nemesis", 'nms', "\e626") + ("Prophecy", 'pcy', "\e627") + ("Invasion", 'inv', "\e628") + ("Planeshift", 'pls', "\e629") + ("Apocalypse", 'apc', "\e62a") + ("Odyssey", 'ody', "\e62b") + ("Torment", 'tor', "\e62c") + ("Judgement", 'jud', "\e62d") + ("Onslaught", 'ons', "\e62e") + ("Legions", 'lgn', "\e62f") + ("Scourge", 'scg', "\e630") + ("Mirrodin", 'mrd', "\e631") + ("Darksteel", 'dst', "\e632") + ("5th Dawn", '5dn', "\e633") + ("Champions of", 'chk', "\e634") + ("Betrayers of", 'bok', "\e635") + ("Saviors of Kamigawa", 'sok', "\e636") + ("Ravnica", 'rav', "\e637") + ("Guildpact", 'gpt', "\e638") + ("Dissension", 'dis', "\e639") + ("Time Spiral", 'tsp', "\e63a") + ("Planeshift", 'plc', "\e63b") + ("Future Sight", 'fut', "\e63c") + ("Lorwyn", 'lrw', "\e63d") + ("Morningtide", 'mor', "\e63e") + ("Shadowmoor", 'shm', "\e63f") + ("Eventide", 'eve', "\e640") + ("Shards of Alara", 'ala', "\e641") + ("Conflux", 'con', "\e642") + ("Alara Reborn", 'arb', "\e643") + ("Zendikar", 'zen', "\e644") + ("Worldwake", 'wwk', "\e645") + ("Rise of Eldrazi", 'roe', "\e646") + ("Scars of Mirrodin", 'som', "\e647") + ("Mirrodin Besieged", 'mbs', "\e648") + ("New Phyrexia", 'nph', "\e649") + ("Innistrad", 'isd', "\e64a") + ("Dark Ascension", 'dka', "\e64b") + ("Avacyn Restored", 'avr', "\e64c") + ("Return to Ravnica", 'rtr', "\e64d") + ("Gatecrash", 'gtc', "\e64e") + ("Dragon's Maze", 'dgm', "\e64f") + ("Theros", 'ths', "\e650") + ("Born of the Gods", 'bng', "\e651") + ("Journey into Nyx", 'jou', "\e652") + ("Khans of Tarkir", 'ktk', "\e653") + ("Fate Reforged", 'frf', "\e654") + ("Dragons of Tarkir", 'dtk', "\e693") + ("Battle for Zendikar", 'bfz', "\e699") + ("Oath of the", 'ogw', "\e901") + ("Shadows Over", 'soi', "\e902") + ("Eldritch Moon", 'emn', "\e90b") + ("Kaladesh", 'kld', "\e90e") + ("Aether Revolt", 'aer', "\e90f") + ("Vanguard", 'van', "\e655") + ("Planechase 2009", 'hop', "\e656") + ("Archenemy", 'arc', "\e657") + ("Commander", 'cmd', "\e658") + ("Planechase 2012", 'pc2', "\e659") + ("Commander's Arsenal", 'cm1', "\e65a") + ("Commander 2013", 'c13', "\e65b") + ("Conspiracy", 'cns', "\e65c") + ("Commander 2014", 'c14', "\e65d") + ("Commander 2015", 'c15', "\e900") + ("Conspiracy 2, Take", 'cn2', "\e904") + ("Commander 2016", 'c16', "\e910") + ("Planechase", 'pca', "\e911") + ("Chronicles", 'chr', "\e65e") + ("Anthologies", 'ath', "\e65f") + ("Battle Royale", 'brb', "\e660") + ("Beatdown", 'btd', "\e661") + ("Deckmasters", 'dkm', "\e662") + ("Modern Masters", 'mma', "\e663") + ("Modern Masters 2015", 'mm2', "\e695") + ("Eternal Masters", 'ema', "\e903") + ("Modern Masters 2017", 'mm3', "\e912") + ("Portal", 'por', "\e664") + ("Portal 2", 'po2', "\e665") + ("Portal 3 Kingdoms", 'ptk', "\e666") + ("Starter 1999", 's99', "\e667") + ("Starter 2000", 's00', "\e668") + ("Welcome Deck 2016", 'w16', "\e907") + ("Elves vs. Goblins", 'evg', "\e669") + ("Jace vs. Chandra", 'dd2', "\e66a") + ("Divine vs. Demonic", 'ddc', "\e66b") + ("Garruk vs. Liliana", 'ddd', "\e66c") + ("Phyrexia vs.", 'dde', "\e66d") + ("Elspeth vs.", 'ddf', "\e66e") + ("Knights vs. Dragons", 'ddg', "\e66f") + ("Ajani vs. Nicol", 'ddh', "\e670") + ("Venser vs. Koth", 'ddi', "\e671") + ("Izzet vs. Golgari", 'ddj', "\e672") + ("Sorin vs. Tibalt", 'ddk', "\e673") + ("Heroes vs. Monsters", 'ddl', "\e674") + ("Jace vs. Vraska", 'ddm', "\e675") + ("Speed vs. Cunning", 'ddn', "\e676") + ("Kiora vs. Elspeth", 'ddo', "\e677") + ("Zendikar vs.", 'ddp', "\e698") + ("Blessed vs. Cursed", 'ddq', "\e908") + ("Nissa vs. Ob", 'ddr', "\e90d") + ("Dragons", 'drb', "\e678") + ("Exiled", 'v09', "\e679") + ("Relics", 'v10', "\e67a") + ("Legends", 'v11', "\e67b") + ("Realms", 'v12', "\e67c") + ("Twenty", 'v13', "\e67d") + ("Annihilation", 'v14', "\e67e") + ("Angels", 'v15', "\e905") + ("Lore", 'v16', "\e906") + ("Slivers", 'h09', "\e67f") + ("Fire & Lightning", 'pd2', "\e680") + ("Graveborn", 'pd3', "\e681") + ("Modern Event Deck", 'md1', "\e682") + ("Guru", 'pgru', "\e683") + ("Magic symbol", 'pmtg1', "\e684") + ("Magic symbol", 'pmtg2', "\e685") + ("Leaf", 'pleaf', "\e686") + ("Media Insert", 'pmei', "\e687") + ("DCI (Arena)", 'parl', "\e688") + ("Dragons", 'dpa', "\e689") + ("Book Insert", 'pbook', "\e68a") + ("Astral", 'past', "\e68b") + ("Arena logo", 'parl2', "\e68c") + ("Zendikar", 'exp', "\e69a") + ("Salvat 2005", 'psalvat05', "\e909") + ("Salvat 2011", 'psalvat11', "\e90a") + ("Masterpieces,", 'mp1', "\e913") + ("Masters Edition", 'med', "\e68d") + ("Masters Edition II", 'me2', "\e68e") + ("Masters Edition III", 'me3', "\e68f") + ("Masters Edition IV", 'me4', "\e690") + ("Tempest Remastered", 'tpr', "\e694") + ("Vintage Masters", 'vma', "\e696") + ("Legendary Cube", 'xlcu', "\e90c") + ("Unglued", 'ugl', "\e691") + ("Unhinged", 'unh', "\e692") ) !default; diff --git a/sass/keyrune.scss b/sass/keyrune.scss index c47971c..fa3c2ef 100644 --- a/sass/keyrune.scss +++ b/sass/keyrune.scss @@ -7,3 +7,4 @@ // Components ========== @import 'components/typography'; @import 'components/setsymbol'; +@import 'components/rarities';