i can’t figure out which ones to disable and change i’ve deleted and changed them multiple times in different ways. it’s gotta be staring me in the face i know it but it’s not clicking
Your code so far
<!-- file: index.html -->
/* file: styles.css */
/* file: script.js */
// User Editable Region
const getHighestDuplicates = (arr) => {
const counts = {};
for (const num of arr) {
if (counts[num]) {
counts[num]++;
} else {
counts[num] = 1;
}
}
let highestCount = 0;
for (const num of arr) {
const count = counts[num];
if (count >= 3 && count > highestCount) {
highestCount = count;
}
if (count >= 4 && count > highestCount) {
highestCount = count;
}
}
const sumOfAllDice = arr.reduce((a, b) => a + b, 0);
if (highestCount >= 4) {
updateRadioOption(1, sumOfAllDice);
}
if (highestCount >= 3) {
updateRadioOption(0, sumOfAllDice);
}
};
const detectFullHouse = (arr) => {
const counts = {};
for (const num of arr) {
counts[num] = counts[num] ? counts[num] + 1 : 1;
}
const hasThreeOfAKind = Object.values(counts).includes(3);
const hasPair = Object.values(counts).includes(2);
if (hasThreeOfAKind && hasPair) {
updateRadioOption(2, 25);
}
};
const checkForStraights = (arr) => {
const sortedNumbersArr = arr.sort((a, b) => a - b);
const uniqueNumbersArr = [...new Set(sortedNumbersArr)];
const uniqueNumbersStr = uniqueNumbersArr.join("");
const smallStraightsArr = ["1234", "2345", "3456"];
const largeStraightsArr = ["12345", "23456"];
if (smallStraightsArr.some(straight => uniqueNumbersStr.includes(straight))) {
updateRadioOption(3, 30);
}
if (largeStraightsArr.includes(uniqueNumbersStr)) {
updateRadioOption(4, 40);
}
updateRadioOption(0);
};
const resetRadioOptions = () => {
scoreInputs.forEach((input) => {
input.disabled = true;
input.checked = false;
});
scoreSpans.forEach((span) => {
span.textContent = "", score = 0;
});
};
const resetGame = () => {
diceValuesArr = [0, 0, 0, 0, 0];
score = 0;
round = 1;
rolls = 0;
listOfAllDice.forEach((dice, index) => {
dice.textContent = diceValuesArr[index];
});
totalScoreElement.textContent = score;
scoreHistory.innerHTML = "";
rollsElement.textContent = rolls;
roundElement.textContent = round;
resetRadioOptions();
};
rollDiceBtn.addEventListener("click", () => {
if (rolls === 3) {
alert("You have made three rolls this round. Please select a score.");
} else {
rolls++;
resetRadioOptions();
rollDice();
updateStats();
getHighestDuplicates(diceValuesArr);
detectFullHouse(diceValuesArr);
checkForStraights(diceValuesArr);
updateRadioOption(0)
}
});
// User Editable Region
Your browser information:
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36
Challenge Information:
Review Algorithmic Thinking by Building a Dice Game - Step 15
i updated it under the else to rollDice(, score = 0) and still nada it keeps popping up about something in the span but the instructions on this step are crazy ambiguous. I get they try to make us think on our feet to learn but this is like giving me a baseball bat and telling me to go fishing
when i replied earlier the only update i put in was what i put in the reply i have since restarted multiple times trying multiple different things from what i’m seeing in the code there is only one place that updates the span but when i change that it’s still throws me the same error
I’ve edited your code for readability. When you enter a code block into a forum post, please precede it with a separate line of three backticks and follow it with a separate line of three backticks to make it easier to read.
You can also use the “preformatted text” tool in the editor (</>) to add backticks around text.
You might notice that your code enabled the last radio button (“None of the Above”) multiple times within your getHighestDuplicates, detectFullHouse and checkForStraights functions.
There is a specific line of code that does this, and you successfully removed it from getHighestDuplicates, detectFullHouse functions, but not the checkForStraights function.
Can you please identify that line of code?
What the instructions are saying is to delete that line from those 3 functions and just put it at the end of the rollDiceBtn function instead.
thank you, that added some clarification to it i was confused about it saying leave the last one active and apparently misunderstood the placement i needed to have it