diff --git a/src/actions.js b/src/actions.js index 7b9e38950..4a50d326b 100644 --- a/src/actions.js +++ b/src/actions.js @@ -6755,6 +6755,9 @@ export function setPlanet(opt){ $('#evolution').append(parent); + let srDescButton = $(`${title} description`); + $('#evolution').append(srDescButton); + let popper = false; let gecked = 0; popover(id,function(obj){ @@ -6797,6 +6800,7 @@ export function setPlanet(opt){ } title = `${traits}${biomes[biome].label} ${num}`; $(`#${id} .aTitle`).html(title); + srDescButton.html(title + ' description'); gecked++; global.race.geck--; if (!global.race.hasOwnProperty('gecked')){ @@ -6825,6 +6829,10 @@ export function setPlanet(opt){ } }); + srDescButton.on('click', function() { + srPlanetDesc(title, biome, orbit, trait, geology, gecked); + }); + return custom ? custom : (biome === 'eden' ? 'hellscape' : biome); } @@ -6847,6 +6855,31 @@ function planetDesc(obj,title,biome,orbit,trait,geology,gecked){ return undefined; } +function srPlanetDesc(title,biome,orbit,trait,geology,gecked){ + let desc = ''; + desc = desc + `
${loc('set_planet',[title,biomes[biome].label,orbit])}
`; + desc = desc + `
${biomes[biome].desc}
`; + if (trait.length > 0){ + trait.forEach(function(t){ + desc = desc + `
${planetTraits[t].desc}
`; + }); + } + + let pg = planetGeology(geology); + if (pg.length > 0){ + // modify geology text to have it be spoken better + pg = pg.replaceAll(': ', ','); // add commas after each list item + pg = pg.replace(/,(?!.*,)/, '.'); // replace trailing comma with period + + desc = desc + `
${pg}
`; + } + if (gecked && gecked > 0){ + desc = desc + `
${loc(`rejuvenated`)}
`; + } + srSpeak(desc); +} + function buildPlanet(aspect,opt,args){ args = args || {}; if (aspect === 'biome'){ diff --git a/src/space.js b/src/space.js index 6d31e42ee..108141291 100644 --- a/src/space.js +++ b/src/space.js @@ -1,4 +1,4 @@ -import { save, global, seededRandom, webWorker, keyMultiplier, sizeApproximation, p_on, support_on, int_on, gal_on } from './vars.js'; +import { save, global, seededRandom, webWorker, keyMultiplier, sizeApproximation, p_on, support_on, int_on, gal_on, srSpeak } from './vars.js'; import { vBind, messageQueue, clearElement, popover, clearPopper, flib, powerModifier, powerCostMod, calcPrestige, spaceCostMultiplier, darkEffect, eventActive, calcGenomeScore, randomKey, getTraitDesc, deepClone, get_qlevel, timeFormat } from './functions.js'; import { unlockAchieve, unlockFeat, universeAffix } from './achieve.js'; import { races, traits, genus_def, genusVars, planetTraits, biomes, traitCostMod } from './races.js'; @@ -7472,6 +7472,9 @@ export function setUniverse(){ $('#evolution').append(parent); + let srDescButton = $(`${universe_types[universe].name} description`); + $('#evolution').append(srDescButton); + $('#'+id).on('click',function(){ global.race['universe'] = universe; clearElement($('#evolution')); @@ -7479,6 +7482,14 @@ export function setUniverse(){ clearPopper(); }); + srDescButton.on('click',function(){ + let desc = ''; + desc = desc + universe_types[universe].name + ' universe: '; + desc = desc + universe_types[universe].desc + '. '; + desc = desc + universe_types[universe].effect + '.'; + srSpeak(desc); + }); + popover(id,function(obj){ obj.popper.append($(`
${universe_types[universe].name}
`)); obj.popper.append($(`
${universe_types[universe].desc}
`));