diff --git a/client/icons/book-inside-cover.svg b/client/icons/book-inside-cover.svg new file mode 100644 index 000000000..9005e3247 --- /dev/null +++ b/client/icons/book-inside-cover.svg @@ -0,0 +1,53 @@ + + + + + + + + + diff --git a/client/icons/customIcons.less b/client/icons/customIcons.less index 3e28089a5..d89afdab1 100644 --- a/client/icons/customIcons.less +++ b/client/icons/customIcons.less @@ -40,6 +40,9 @@ .book-front-cover { content: url('../icons/book-front-cover.svg'); } +.book-inside-cover { + content: url('../icons/book-inside-cover.svg'); +} .davek { content: url('../icons/Davek.svg'); } diff --git a/themes/V3/5ePHB/snippets.js b/themes/V3/5ePHB/snippets.js index 68d5cc596..6811f9240 100644 --- a/themes/V3/5ePHB/snippets.js +++ b/themes/V3/5ePHB/snippets.js @@ -3,7 +3,7 @@ const MagicGen = require('./snippets/magic.gen.js'); const ClassTableGen = require('./snippets/classtable.gen.js'); const MonsterBlockGen = require('./snippets/monsterblock.gen.js'); -const scriptGen = require('./snippets/script.gen.js'); +const scriptGen = require('./snippets/script.gen.js'); const ClassFeatureGen = require('./snippets/classfeature.gen.js'); const CoverPageGen = require('./snippets/coverpage.gen.js'); const TableOfContentsGen = require('./snippets/tableOfContents.gen.js'); @@ -172,7 +172,13 @@ module.exports = [ { name : 'Cover Page', icon : 'fac book-front-cover', - gen : CoverPageGen, + gen : CoverPageGen.front, + experimental : true + }, + { + name : 'Inside Cover Page', + icon : 'fac book-inside-cover', + gen : CoverPageGen.inside, experimental : true }, { diff --git a/themes/V3/5ePHB/snippets/coverpage.gen.js b/themes/V3/5ePHB/snippets/coverpage.gen.js index 5351f5db5..0c81fbc3c 100644 --- a/themes/V3/5ePHB/snippets/coverpage.gen.js +++ b/themes/V3/5ePHB/snippets/coverpage.gen.js @@ -13,7 +13,7 @@ const titles = [ 'The Living Dead Above the Fearful Cage', 'Bahamut\'s Demonspawn', 'Across Gruumsh\'s Elemental Chaos', 'The Blade of Orcus', 'Beyond Revenge', 'Brain of Insanity', - 'Breed Battle!, A New Beginning', 'Evil Lake, A New Beginning', + 'A New Beginning', 'Evil Lake of the Merfolk', 'Invasion of the Gigantic Cat, Part II', 'Kraken War 2020', 'The Body Whisperers', 'The Doctor from Heaven', 'The Diabolical Tales of the Ape-Women', 'The Doctor Immortal', @@ -23,7 +23,7 @@ const titles = [ 'Sky of Zelda: The Thunder of Force', 'Core Battle', 'Ruby of Atlantis: The Quake of Peace', 'Deadly Amazement III', 'Dry Chaos IX', 'Gate Thunder', - 'Vyse\'s Skies', 'White Greatness III', + 'Vyse\'s Skies', 'Blue Greatness III', 'Yellow Divinity', 'Zidane\'s Ghost' ]; @@ -68,23 +68,43 @@ const footnote = [ 'In an amazing kingdom, in an age of sorcery and lost souls, eight space pirates quest for freedom.' ]; -module.exports = ()=>{ - return dedent` - {{coverPage }} +module.exports = { - {{logo ![](/assets/naturalCritLogo.svg)}} + front : function() { + return dedent` + {{coverPage }} - # ${_.sample(titles)} - ## ${_.sample(subtitles)} - __________ + {{logo ![](/assets/naturalCritLogo.svg)}} - {{banner HOMEBREW}} + # ${_.sample(titles)} + ## ${_.sample(subtitles)} + ___ - {{footnote - ${_.sample(footnote)} - }} + {{banner HOMEBREW}} - ![background image](https://i.imgur.com/Mqx8Vf7.png) + {{footnote + ${_.sample(footnote)} + }} - \page`; + ![background image](https://i.imgur.com/Mqx8Vf7.png) + + \page`; + }, + + inside : function() { + return dedent` + {{insideCover}} + + # ${_.sample(titles)} + ## ${_.sample(subtitles)} + ___ + + {{imageMaskCenter${_.random(1, 16)},--offsetX:0%,--offsetY:0%,--rotation:0 + ![](https://i.imgur.com/IsfUnFR.jpg){height:100%} + }} + + {{logo ![](/assets/naturalCritLogo.svg)}} + + \page`; + } }; diff --git a/themes/V3/5ePHB/style.less b/themes/V3/5ePHB/style.less index c75cf0a1a..460091427 100644 --- a/themes/V3/5ePHB/style.less +++ b/themes/V3/5ePHB/style.less @@ -686,25 +686,6 @@ h5 + table{ &:after { all: unset; } - .logo { - position : absolute; - top : 0.5cm; - left : 0; - right : 0; - filter :drop-shadow(0 0 0.075cm black); - img { - height : 2cm; - width : 100%; - } - } - .columnWrapper > p img { - position : absolute; - bottom : 0; - left : 0; - height : 100%; - min-width : 100%; - z-index : -1; - } h1 { text-shadow: unset; filter : drop-shadow(0 0 1.5px black) drop-shadow(0 0 0 black) @@ -713,7 +694,6 @@ h5 + table{ drop-shadow(0 0 0 black) drop-shadow(0 0 0 black); text-transform : uppercase; font-weight : normal; - display : block; margin-top : 1.2cm; margin-bottom : 0; color : white; @@ -781,8 +761,73 @@ h5 + table{ width : 70%; font-family : Overpass; } + .logo { + position : absolute; + top : 0.5cm; + left : 0; + right : 0; + filter : drop-shadow(0 0 0.075cm black); + img { + height : 2cm; + width : 100%; + } + } + .columnWrapper > p img { + position : absolute; + bottom : 0; + left : 0; + height : 100%; + min-width : 100%; + z-index : -1; + } +} +//***************************** +// * INSIDE COVER PAGE +// *****************************/ +.page:has(.insideCover) { + columns : 1; + text-align : center; + &:after { + all : unset; + } + h1 { + font-family : NodestoCapsCondensed; + font-weight : normal; + font-size : 2.1cm; + margin-top : 1.2cm; + margin-bottom : 0; + text-transform : uppercase; + line-height : 0.85em; + } + h2 { + font-family : NodestoCapsCondensed; + font-weight : normal; + font-size : 0.85cm; + letter-spacing : 0.5cm; + } + hr { + display : block; + position : relative; + background-image : @horizontalRule; + background-size : 100% 100%; + visibility : visible; + height : 0.5cm; + width : 12cm; + border : none; + margin : auto; + } + .logo { + position : absolute; + bottom : 1cm; + left : 0; + right : 0; + height : 2cm; + img { + height : 2cm; + width : 100%; + } + } } - //***************************** // * TABLE OF CONTENTS diff --git a/themes/V3/Blank/snippets/imageMask.gen.js b/themes/V3/Blank/snippets/imageMask.gen.js index 5ddef7a2a..602747b65 100644 --- a/themes/V3/Blank/snippets/imageMask.gen.js +++ b/themes/V3/Blank/snippets/imageMask.gen.js @@ -4,7 +4,7 @@ const dedent = require('dedent-tabs').default; module.exports = { center :()=>{ return dedent` - {{imageMaskCenter${_.random(1, 16)},--offsetX:0%,--offsetY:0%,--rotation:0; + {{imageMaskCenter${_.random(1, 16)},--offsetX:0%,--offsetY:0%,--rotation:0 ![](https://i.imgur.com/GZfjDWV.png){height:100%} }}