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}
`));