Как мне сложить числа на костях вместе для рекорда + провал

У меня есть игра в кости, которую я должен сделать для школы, я зашел далеко.. игра работает, но моя проблема в том, что я должен сделать систему рекордов и ограничить 6,7,8,9 (если сумма любой из них зависит от того, что выбирает игрок) это провалит игру, и вы начнете сначала.

Я просто хочу поставить рекорд и эту неудачную часть для моего проекта.

Я сделал это до сих пор:

let images = ["dice1.png",
"dice2.png",
"dice3.png",
"dice4.png",
"dice5.png",
"dice6.png"];
let dice = document.querySelectorAll("img");

function roll(){
    dice.forEach(function(die){
        die.classList.add("shake");
    });
    setTimeout(function(){
        dice.forEach(function(die){
            die.classList.remove("shake");
    });
    let dieOneValue = Math.floor(Math.random()*6)
    ;
    let dieTwoValue = Math.floor(Math.random()*6)
    ;
    console.info(dieOneValue,dieTwoValue);
    document.querySelector("#die-1").setAttribute
    ("src", images[dieOneValue]);
    document.querySelector("#die-2").setAttribute
    ("src", images[dieTwoValue]);
    document.querySelector("#total").innerHTML = 
    "Du rullade " + ( (dieOneValue +1) + (dieTwoValue + 1 ) )
},
1000
);
}

И это та часть, которую они могут выбрать только номер, иначе они получат сообщение об ошибке.

var numb=document.forms['myform']['num'];
var error=document.getElementById('error');

function validation()
{
    if (numb.value=='')
    {
        error.innerHTML = "Bara nummer funkar";
        error.style.display = "block";
        return false;
    }
    
    if (numb.value>9)
    {
        error.innerHTML = "Bara nummer 6,7,8,9 funkar";
        error.style.display = "block";
        return false;
    }
    if (numb.value<6)
    {
        error.innerHTML = "Bara nummer 6,7,8,9 funkar";
        error.style.display = "block";
        return false;
    }
    return true;
}

Непонятно, в чем ваш вопрос или где вы застряли. Можете ли вы указать, какая часть требует внимания?

Kinglish 20.11.2022 20:14
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
1
78
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Итак, вам нужно поле ввода, чтобы запросить у игрока «неудачный» номер.

<input id = "fail-number" type = "number" min = "6" max = "9">

В этот момент вам, вероятно, понадобится кнопка для запуска игры. И кнопка броска кубика не должна быть видна.

Ваш EventListener на кнопке запуска игры должен срабатывать только в том случае, если введенное число имеет значение.

startGame.addEventListener("click", function() {
  if (failNumber){
    //toggle class on startGame which makes the button invisible
    //toggle class on rollDice which makes the button visible
    //toggle class on number-input which makes the input invisible
    //roll dice or let the user press rollDice button
  };
});

Теперь вам нужно только проверять после каждого броска кубиков, соответствуют ли суммированные числа кубиков вашему failNumber.

if (diceSum == failNumber){
  //save current score as highscore
  //set current score to 0
  //toggle class on rollDice which makes button invisible
  //toggle class on startGame which makes button visible
  //toggle class on number-input which makes input visible
} else {
  //add diceSum to current score
}

Плохо, если я сделал это неясным и т. д. Я делаю веб-сайт, а не ту обычную игру в кости, которую вы можете увидеть на проигрывателе Google против компьютера, и вы пишете, сколько раз она должна бросаться, а затем вы видите, кто победит.

Вот так выглядит моя страница. сайт

И я хочу сделать код, который исключает возможность выбора чего-либо, кроме 6, 7, 8 или 9, в качестве «неудачного» числа. Если вы приземлитесь на выбранный номер, вы проиграли игру, подсчитывает ваш рекорд и делает невозможным продолжение, если вы не перезапустите.

Большое спасибо заранее! ps: У меня мозг поджарен на этой части.

Пожалуйста, не отвечайте на свой вопрос дополнительной информацией. Вместо этого вы должны отредактировать исходный вопрос. Я отредактировал свой последний ответ и надеюсь, что вы на правильном пути с этим.

gmad 23.11.2022 23:51

Дополнительная информация по вопросу должна быть добавлена ​​через правки, а не ответ.

Blye 24.11.2022 23:14

Другие вопросы по теме