UX Improvements. Add Generate buttons to weighted settings page.

This commit is contained in:
Chris Wilson
2020-12-04 03:40:46 -05:00
parent 73013395a7
commit 5529f4232b
7 changed files with 39 additions and 20 deletions

View File

@@ -35,6 +35,8 @@ window.addEventListener('load', () => {
<h2><a href="${window.location.origin}">Click here to return to safety!</a></h2>
`
});
document.getElementById('generate-game').addEventListener('click', () => generateGame());
document.getElementById('generate-race').addEventListener('click', () => generateGame(true));
});
const fetchPlayerSettingsYaml = () => new Promise((resolve, reject) => {
@@ -432,3 +434,15 @@ const buildSpritePicker = () => {
spritePicker.appendChild(sprites);
return spritePicker;
};
const generateGame = (raceMode = false) => {
const presetNumber = document.getElementById('preset-number').value;
axios.post('/api/generate', {
weights: { player: localStorage.getItem(`weightedSettings${presetNumber}`) },
presetData: { player: localStorage.getItem(`weightedSettings${presetNumber}`) },
playerCount: 1,
race: raceMode ? '1' : '0',
}).then((response) => {
window.location.href = response.data.url;
});
};