4SV
-
Автор темы
- #1
В общем сделал такой сайт, нужно добавить проверку чтобы элементы по вертикали не повторялись, думал как-то через массив реализовать, но слишком много циклов будет, как-то по говнокодски будет выглядеть, есть более оптимизированный вариант? И проверка на победу, тоже как-то костыльно выглядит...
JavaScript:
let attempt_element = document.getElementById("attempt");
let username_element = document.getElementById("username");
function getRandomInt(max) {
return Math.floor(Math.random() * max);
}
let username = prompt("Enter your name: ");
if (username == "" || username == null){
username = "Player";
}
username_element.innerHTML = username;
let attempts = 0;
let arr = new Array();
function generate(){
attempts++;
if (attempts <=3){
attempt_element.innerHTML = "Attempt " + (attempts) + " of 3";
for(let i = 1; i < 10; i++)
{
let random = getRandomInt(8)+1;
arr[i] = random;
let slot_element = document.getElementById("slot" + i);
slot_element.src = "img/" + random + ".png";
}
if (arr[0] == arr[3] && arr[0] == arr[6] || arr[1] == arr[4] && arr[1] == arr[7] || arr[2] == arr[5] && arr[2] == arr[8])
{
alert(username + ", you win!");
attempts = 0;
attempt_element.innerHTML = "Attempt " + (attempts) + " of 3";
}
}
else if (attempts == 4){
attempts = 0;
alert(username + ", you lose!");
attempt_element.innerHTML = "Attempt " + (attempts) + " of 3";
}
}