diff --git a/WebHostLib/static/assets/player-settings.js b/WebHostLib/static/assets/player-settings.js index 6707437f..f75ba906 100644 --- a/WebHostLib/static/assets/player-settings.js +++ b/WebHostLib/static/assets/player-settings.js @@ -148,7 +148,7 @@ const buildOptionsTable = (settings, romOpts = false) => { randomButton.classList.add('randomize-button'); randomButton.setAttribute('data-key', setting); randomButton.setAttribute('data-tooltip', 'Toggle randomization for this option!'); - randomButton.addEventListener('click', (event) => toggleRandomize(event, [select])); + randomButton.addEventListener('click', (event) => toggleRandomize(event, select)); if (currentSettings[gameName][setting] === 'random') { randomButton.classList.add('active'); select.disabled = true; @@ -185,7 +185,7 @@ const buildOptionsTable = (settings, romOpts = false) => { randomButton.classList.add('randomize-button'); randomButton.setAttribute('data-key', setting); randomButton.setAttribute('data-tooltip', 'Toggle randomization for this option!'); - randomButton.addEventListener('click', (event) => toggleRandomize(event, [range])); + randomButton.addEventListener('click', (event) => toggleRandomize(event, range)); if (currentSettings[gameName][setting] === 'random') { randomButton.classList.add('active'); range.disabled = true; @@ -269,7 +269,7 @@ const buildOptionsTable = (settings, romOpts = false) => { randomButton.setAttribute('data-key', setting); randomButton.setAttribute('data-tooltip', 'Toggle randomization for this option!'); randomButton.addEventListener('click', (event) => toggleRandomize( - event, [specialRange, specialRangeSelect]) + event, specialRange, specialRangeSelect) ); if (currentSettings[gameName][setting] === 'random') { randomButton.classList.add('active'); @@ -294,23 +294,25 @@ const buildOptionsTable = (settings, romOpts = false) => { return table; }; -const toggleRandomize = (event, inputElements) => { +const toggleRandomize = (event, inputElement, optionalSelectElement = null) => { const active = event.target.classList.contains('active'); const randomButton = event.target; if (active) { randomButton.classList.remove('active'); - for (const element of inputElements) { - element.disabled = undefined; - updateGameSetting(element); + inputElement.disabled = undefined; + if (optionalSelectElement) { + optionalSelectElement.disabled = undefined; } } else { randomButton.classList.add('active'); - for (const element of inputElements) { - element.disabled = true; - updateGameSetting(randomButton); + inputElement.disabled = true; + if (optionalSelectElement) { + optionalSelectElement.disabled = true; } } + + updateGameSetting(randomButton); }; const updateBaseSetting = (event) => {