function pickRandom(arr) { return arr[Math.floor(Math.random() * arr.length)]; } export function dungeonTemplate(data) { const bodyFonts = [ "'Lora', serif", "'Merriweather', serif", "'Libre Baskerville', serif", "'Source Serif 4', serif" ]; const headingFonts = [ "'Cinzel', serif", "'MedievalSharp', serif", "'Cormorant Garamond', serif", "'Playfair Display', serif" ]; const tableFonts = [ "'Alegreya Sans', sans-serif", "'Cabin', sans-serif", "'IBM Plex Sans', sans-serif", "'Cormorant Garamond', serif" ]; const quoteFonts = [ "'Playfair Display', serif", "'Uncial Antiqua', serif", "'Libre Baskerville', serif", "'Merriweather', serif" ]; const bodyFont = pickRandom(bodyFonts); const headingFont = pickRandom(headingFonts); const tableFont = pickRandom(tableFonts); const quoteFont = pickRandom(quoteFonts); return ` ${data.title}

${data.title}

${data.flavor}

Adventure Hooks & Rumors

Locations

${data.rooms.map((room, i) => `

${i + 1}. ${room.name}

${room.description}

`).join("")}

Encounters

${data.encounters.map(e => ``).join("")}
NameDetails
${e.name}${e.details}

Treasure

NPCs

Plot Resolutions

Dungeon Map
`; }