diff --git a/assets/scripts/keyboard.js b/assets/scripts/keyboard.js index c275530b..97ea2417 100644 --- a/assets/scripts/keyboard.js +++ b/assets/scripts/keyboard.js @@ -48,7 +48,7 @@ var submissionLst = []; KEYBOARD_EL.innerHTML = `
- + @@ -102,14 +102,14 @@ function checkLevel(level){ dictValue = "levelThree" } else { - window.location.replace("ahshit.html"); + window.location.replace("ahshit.html"); } } // POPULATE PAGE WITH LEVEL APPROPRIATE WORDS function assignSound(levelPath, words){ path = `assets/audio/${levelPath}`; - try{ + try{ // setting neutral values wordLst = words; numSubmitted = 0; @@ -122,7 +122,7 @@ function assignSound(levelPath, words){ wordFivePlayer.src = `${path}/${words[4]}.mp3` } catch(error) { console.log(error) - } + } } // MOVE TO NEXT ROUND @@ -134,7 +134,7 @@ function nextRound(){ } else if (level.textContent == "Level Three: Hard"){ endGame(); } else { - window.location.replace("ahshit.html"); + window.location.replace("ahshit.html"); } nextRoundBtn.innerHTML = `
` checkLevel(level) @@ -215,21 +215,21 @@ function checkGuess() { if ((attemptStr.toLowerCase() == activeWord.toLowerCase())) { stopSound(activePlayer[1]); activePlayer[0].style.backgroundColor = "#79b15a"; - activePlayer[0].classList.add("submitted", "fa-check"); + activePlayer[0].classList.add("submitted", "fa-check"); activePlayer[0].classList.remove("clicked","fa-play-circle", "fa-circle-stop","btn"); // RECORD FOR RESULTS activePlayer[3] = `${attemptStr}` //submissionLst.push(`${attemptStr}`) - + // DEACTIVATE WORD activeWord = null; - activePlayer = null; + activePlayer = null; } else { stopSound(activePlayer[1]); activePlayer[0].style.backgroundColor = "#d25842"; - activePlayer[0].classList.add("submitted", "fa-xmark"); + activePlayer[0].classList.add("submitted", "fa-xmark"); activePlayer[0].classList.remove("clicked","fa-circle-stop", "fa-play-circle","btn"); // RECORD FOR RESULTS @@ -238,10 +238,10 @@ function checkGuess() { // DEACTIVATE WORD activeWord = null; - activePlayer = null; + activePlayer = null; } attemptStr = ''; - attempt.value = attemptStr; + attempt.value = attemptStr; numSubmitted += 1; if (numSubmitted == 5) { @@ -286,7 +286,7 @@ function updatePlayer(playerLst, activePlayer) { activePlayer[0].classList.add("fa-play-circle"); lastActiveWord = activeWord; - + // DEACTIVATE WORD activeWord = null; activePlayer = null; @@ -350,51 +350,90 @@ wordFive.addEventListener("click", (e) => { // LINK ONSCREEN KEYBOARD FUNCTIONALITY TO KEYPRESSS document.getElementById("keyboard-cont").addEventListener("click", (e) => { const target = e.target - + if (!target.classList.contains("keyboard-button")) { return } let key = target.textContent - if (target.classList.contains("fa-delete-left")){ + if (target.classList.contains("fa-delete-left")) { + target.classList.add("clicked") + setTimeout(() => { + setTimeout(target.classList.remove("clicked")); + }, 50); deleteLetter(); return //key = "Backspace" } - if (key==="submit"){ + if (key === "submit") { + target.classList.add("clicked") + setTimeout(() => { + setTimeout(target.classList.remove("clicked")); + }, 50); guessPreprocess(); return //key = "Enter" } let pressedKey = target.innerText; - insertLetter(pressedKey) + let found = pressedKey.match(/[a-z]/gi) + + if (!found || found.length > 1) { + return + } else { + insertLetter(pressedKey) + document.querySelector(`#${pressedKey.toLowerCase()}`).classList.add("clicked") + setTimeout(() => { + setTimeout(document.querySelector(`#${pressedKey.toLowerCase()}`).classList.remove("clicked")); + }, 50); + return; + } //document.querySelector(`#${pressedKey.toLowerCase()}`).classList.add("clicked") //document.dispatchEvent(new KeyboardEvent("keyup", {'key': key})) }) // KEYPRESS TYPING LISTENER -document.addEventListener("keyup", (e) => { +document.addEventListener("keydown", (e) => { - let pressedKey = String(e.key) - let found = pressedKey.match(/[a-z]/gi) + let pressedKey = String(e.key) + let found = pressedKey.match(/[a-z]/gi) if (pressedKey === "Enter") { + document.querySelector(`#${pressedKey}`).classList.add("clicked"); + return; + } + + if (pressedKey === "Backspace" & attemptStr.length != 0) { document.querySelector(`#${pressedKey}`).classList.add("clicked") - setTimeout(() => { - setTimeout(document.querySelector(`#${pressedKey}`).classList.remove("clicked")); - }, 50); + return; + } + + if (!found || found.length > 1) { + return + } else if (document.querySelector(`#${pressedKey.toLowerCase()}`) && !document.querySelector(`#${pressedKey.toLowerCase()}`).classList.contains("clicked")) { + insertLetter(pressedKey) + document.querySelector(`#${pressedKey.toLowerCase()}`).classList.add("clicked") + return; + } else { + return; + } +}) + +document.addEventListener("keyup", (e) => { + + let pressedKey = String(e.key) + let found = pressedKey.match(/[a-z]/gi) + + if (pressedKey === "Enter") { + document.querySelector(`#${pressedKey}`).classList.remove("clicked"); guessPreprocess(); return; } if (pressedKey === "Backspace" & attemptStr.length != 0) { - document.querySelector(`#${pressedKey}`).classList.add("clicked") - setTimeout(() => { - setTimeout(document.querySelector(`#${pressedKey}`).classList.remove("clicked")); - }, 50); + document.querySelector(`#${pressedKey}`).classList.remove("clicked"); deleteLetter() return; } @@ -402,11 +441,7 @@ document.addEventListener("keyup", (e) => { if (!found || found.length > 1) { return } else { - insertLetter(pressedKey) - document.querySelector(`#${pressedKey.toLowerCase()}`).classList.add("clicked") - setTimeout(() => { - setTimeout(document.querySelector(`#${pressedKey.toLowerCase()}`).classList.remove("clicked")); - }, 50); + document.querySelector(`#${pressedKey.toLowerCase()}`).classList.remove("clicked"); return; } }) diff --git a/assets/scripts/practice.js b/assets/scripts/practice.js index 5c20b8ec..3e93dc60 100644 --- a/assets/scripts/practice.js +++ b/assets/scripts/practice.js @@ -58,7 +58,7 @@ KEYBOARD_EL.innerHTML = `
-
+
` @@ -79,7 +79,7 @@ function checkLevel(level){ wordLst = shuffle(hardWords) levelPath = "levelThreeNEW" } else { - window.location.replace("ahshit.html"); + window.location.replace("ahshit.html"); } path = `assets/audio/${levelPath}`; updateWord(); @@ -185,7 +185,7 @@ function checkGuess() { } attemptStr = ''; - attempt.value = attemptStr; + attempt.value = attemptStr; return } @@ -195,7 +195,7 @@ function updatePlayer(playerLst, activePlayer) { stopSound(activePlayer[1]); activePlayer[0].classList.remove("clicked","fa-circle-stop"); activePlayer[0].classList.add("fa-play-circle"); - + lastActiveWord = activeWord; // DEACTIVATE WORD @@ -234,20 +234,28 @@ wordOne.addEventListener("click", (e) => { // LINK ONSCREEN KEYBOARD FUNCTIONALITY TO KEYPRESSS document.getElementById("keyboard-cont").addEventListener("click", (e) => { const target = e.target - + if (!target.classList.contains("keyboard-button")) { return } let key = target.textContent - if (target.classList.contains("fa-delete-left")){ + if (target.classList.contains("fa-delete-left")) { + target.classList.add("clicked") + setTimeout(() => { + setTimeout(target.classList.remove("clicked")); + }, 50); deleteLetter(); return //key = "Backspace" } - if (key==="submit"){ + if (key === "submit") { + target.classList.add("clicked") + setTimeout(() => { + setTimeout(target.classList.remove("clicked")); + }, 50); guessPreprocess(); return //key = "Enter" @@ -263,32 +271,52 @@ document.getElementById("keyboard-cont").addEventListener("click", (e) => { document.querySelector(`#${pressedKey.toLowerCase()}`).classList.add("clicked") setTimeout(() => { setTimeout(document.querySelector(`#${pressedKey.toLowerCase()}`).classList.remove("clicked")); - }, 50); + }, 50); return; } //document.dispatchEvent(new KeyboardEvent("keyup", {'key': key})) }) // KEYPRESS TYPING LISTENER -document.addEventListener("keyup", (e) => { +document.addEventListener("keydown", (e) => { - let pressedKey = String(e.key) - let found = pressedKey.match(/[a-z]/gi) + let pressedKey = String(e.key) + let found = pressedKey.match(/[a-z]/gi) if (pressedKey === "Enter") { + document.querySelector(`#${pressedKey}`).classList.add("clicked"); + return; + } + + if (pressedKey === "Backspace" & attemptStr.length != 0) { document.querySelector(`#${pressedKey}`).classList.add("clicked") - setTimeout(() => { - setTimeout(document.querySelector(`#${pressedKey}`).classList.remove("clicked")); - }, 50); + return; + } + + if (!found || found.length > 1) { + return + } else if (document.querySelector(`#${pressedKey.toLowerCase()}`) && !document.querySelector(`#${pressedKey.toLowerCase()}`).classList.contains("clicked")) { + insertLetter(pressedKey) + document.querySelector(`#${pressedKey.toLowerCase()}`).classList.add("clicked") + return; + } else { + return; + } +}) + +document.addEventListener("keyup", (e) => { + + let pressedKey = String(e.key) + let found = pressedKey.match(/[a-z]/gi) + + if (pressedKey === "Enter") { + document.querySelector(`#${pressedKey}`).classList.remove("clicked"); guessPreprocess() return; } if (pressedKey === "Backspace" & attemptStr.length != 0) { - document.querySelector(`#${pressedKey}`).classList.add("clicked") - setTimeout(() => { - setTimeout(document.querySelector(`#${pressedKey}`).classList.remove("clicked")); - }, 50); + document.querySelector(`#${pressedKey}`).classList.remove("clicked"); deleteLetter() return; } @@ -296,11 +324,7 @@ document.addEventListener("keyup", (e) => { if (!found || found.length > 1) { return } else { - insertLetter(pressedKey) - document.querySelector(`#${pressedKey.toLowerCase()}`).classList.add("clicked") - setTimeout(() => { - setTimeout(document.querySelector(`#${pressedKey.toLowerCase()}`).classList.remove("clicked")); - }, 50); + document.querySelector(`#${pressedKey.toLowerCase()}`).classList.remove("clicked"); return; } }) diff --git a/assets/scripts/spelloff.js b/assets/scripts/spelloff.js index 9d1c3163..cc4f11bd 100644 --- a/assets/scripts/spelloff.js +++ b/assets/scripts/spelloff.js @@ -56,7 +56,7 @@ KEYBOARD_EL.innerHTML = `
-
+
` @@ -168,7 +168,7 @@ function checkGuess() { endGame(); } attemptStr = ''; - attempt.value = attemptStr; + attempt.value = attemptStr; return } @@ -178,7 +178,7 @@ function updatePlayer(playerLst, activePlayer) { stopSound(activePlayer[1]); activePlayer[0].classList.remove("clicked","fa-circle-stop"); activePlayer[0].classList.add("fa-play-circle"); - + lastActiveWord = activeWord; // DEACTIVATE WORD @@ -217,20 +217,28 @@ wordOne.addEventListener("click", (e) => { // LINK ONSCREEN KEYBOARD FUNCTIONALITY TO KEYPRESSS document.getElementById("keyboard-cont").addEventListener("click", (e) => { const target = e.target - + if (!target.classList.contains("keyboard-button")) { return } let key = target.textContent - if (target.classList.contains("fa-delete-left")){ + if (target.classList.contains("fa-delete-left")) { + target.classList.add("clicked") + setTimeout(() => { + setTimeout(target.classList.remove("clicked")); + }, 50); deleteLetter(); return //key = "Backspace" } - if (key==="submit"){ + if (key === "submit") { + target.classList.add("clicked") + setTimeout(() => { + setTimeout(target.classList.remove("clicked")); + }, 50); guessPreprocess(); return //key = "Enter" @@ -246,32 +254,52 @@ document.getElementById("keyboard-cont").addEventListener("click", (e) => { document.querySelector(`#${pressedKey.toLowerCase()}`).classList.add("clicked") setTimeout(() => { setTimeout(document.querySelector(`#${pressedKey.toLowerCase()}`).classList.remove("clicked")); - }, 50); + }, 50); return; } //document.dispatchEvent(new KeyboardEvent("keyup", {'key': key})) }) // KEYPRESS TYPING LISTENER -document.addEventListener("keyup", (e) => { +document.addEventListener("keydown", (e) => { - let pressedKey = String(e.key) - let found = pressedKey.match(/[a-z]/gi) + let pressedKey = String(e.key) + let found = pressedKey.match(/[a-z]/gi) if (pressedKey === "Enter") { + document.querySelector(`#${pressedKey}`).classList.add("clicked"); + return; + } + + if (pressedKey === "Backspace" & attemptStr.length != 0) { document.querySelector(`#${pressedKey}`).classList.add("clicked") - setTimeout(() => { - setTimeout(document.querySelector(`#${pressedKey}`).classList.remove("clicked")); - }, 50); + return; + } + + if (!found || found.length > 1) { + return + } else if (document.querySelector(`#${pressedKey.toLowerCase()}`) && !document.querySelector(`#${pressedKey.toLowerCase()}`).classList.contains("clicked")) { + insertLetter(pressedKey) + document.querySelector(`#${pressedKey.toLowerCase()}`).classList.add("clicked") + return; + } else { + return; + } +}) + +document.addEventListener("keyup", (e) => { + + let pressedKey = String(e.key) + let found = pressedKey.match(/[a-z]/gi) + + if (pressedKey === "Enter") { + document.querySelector(`#${pressedKey}`).classList.remove("clicked"); guessPreprocess() return; } if (pressedKey === "Backspace" & attemptStr.length != 0) { - document.querySelector(`#${pressedKey}`).classList.add("clicked") - setTimeout(() => { - setTimeout(document.querySelector(`#${pressedKey}`).classList.remove("clicked")); - }, 50); + document.querySelector(`#${pressedKey}`).classList.remove("clicked"); deleteLetter() return; } @@ -279,11 +307,7 @@ document.addEventListener("keyup", (e) => { if (!found || found.length > 1) { return } else { - insertLetter(pressedKey) - document.querySelector(`#${pressedKey.toLowerCase()}`).classList.add("clicked") - setTimeout(() => { - setTimeout(document.querySelector(`#${pressedKey.toLowerCase()}`).classList.remove("clicked")); - }, 50); + document.querySelector(`#${pressedKey.toLowerCase()}`).classList.remove("clicked"); return; } }) diff --git a/assets/scripts/youtube.js b/assets/scripts/youtube.js index a868868b..d521a372 100644 --- a/assets/scripts/youtube.js +++ b/assets/scripts/youtube.js @@ -56,7 +56,7 @@ KEYBOARD_EL.innerHTML = `
-
+
` @@ -69,11 +69,11 @@ function checkLevel(level){ } function updateWord(){ - if (wordCounter < 10){ + if (wordCounter < 10) { levelPath = "levelOneNEW" } else if ((wordCounter >= 10) && (wordCounter<20)){ levelPath = "levelTwoNEW" - }else if ((wordCounter >= 20) && (wordCounter<100)){ + } else if ((wordCounter >= 20) && (wordCounter<100)){ levelPath = "levelThreeNEW" } wordLst = genYoutubeWordLst() @@ -155,11 +155,11 @@ function checkGuess() { updateWord(); } else { submissionLst.push(`${attemptStr}`) - endGame(); + endGame(); } attemptStr = ''; - attempt.value = attemptStr; + attempt.value = attemptStr; return } @@ -169,7 +169,7 @@ function updatePlayer(playerLst, activePlayer) { stopSound(activePlayer[1]); activePlayer[0].classList.remove("clicked","fa-circle-stop"); activePlayer[0].classList.add("fa-play-circle"); - + lastActiveWord = activeWord; // DEACTIVATE WORD @@ -208,20 +208,28 @@ wordOne.addEventListener("click", (e) => { // LINK ONSCREEN KEYBOARD FUNCTIONALITY TO KEYPRESSS document.getElementById("keyboard-cont").addEventListener("click", (e) => { const target = e.target - + if (!target.classList.contains("keyboard-button")) { return } let key = target.textContent - if (target.classList.contains("fa-delete-left")){ + if (target.classList.contains("fa-delete-left")) { + target.classList.add("clicked") + setTimeout(() => { + setTimeout(target.classList.remove("clicked")); + }, 50); deleteLetter(); return //key = "Backspace" } - if (key==="submit"){ + if (key === "submit") { + target.classList.add("clicked") + setTimeout(() => { + setTimeout(target.classList.remove("clicked")); + }, 50); guessPreprocess(); return //key = "Enter" @@ -237,32 +245,52 @@ document.getElementById("keyboard-cont").addEventListener("click", (e) => { document.querySelector(`#${pressedKey.toLowerCase()}`).classList.add("clicked") setTimeout(() => { setTimeout(document.querySelector(`#${pressedKey.toLowerCase()}`).classList.remove("clicked")); - }, 50); + }, 50); return; } //document.dispatchEvent(new KeyboardEvent("keyup", {'key': key})) }) // KEYPRESS TYPING LISTENER -document.addEventListener("keyup", (e) => { +document.addEventListener("keydown", (e) => { - let pressedKey = String(e.key) - let found = pressedKey.match(/[a-z]/gi) + let pressedKey = String(e.key) + let found = pressedKey.match(/[a-z]/gi) if (pressedKey === "Enter") { + document.querySelector(`#${pressedKey}`).classList.add("clicked"); + return; + } + + if (pressedKey === "Backspace" & attemptStr.length != 0) { document.querySelector(`#${pressedKey}`).classList.add("clicked") - setTimeout(() => { - setTimeout(document.querySelector(`#${pressedKey}`).classList.remove("clicked")); - }, 50); + return; + } + + if (!found || found.length > 1) { + return + } else if (document.querySelector(`#${pressedKey.toLowerCase()}`) && !document.querySelector(`#${pressedKey.toLowerCase()}`).classList.contains("clicked")) { + insertLetter(pressedKey) + document.querySelector(`#${pressedKey.toLowerCase()}`).classList.add("clicked") + return; + } else { + return; + } +}) + +document.addEventListener("keyup", (e) => { + + let pressedKey = String(e.key) + let found = pressedKey.match(/[a-z]/gi) + + if (pressedKey === "Enter") { + document.querySelector(`#${pressedKey}`).classList.remove("clicked"); guessPreprocess() return; } if (pressedKey === "Backspace" & attemptStr.length != 0) { - document.querySelector(`#${pressedKey}`).classList.add("clicked") - setTimeout(() => { - setTimeout(document.querySelector(`#${pressedKey}`).classList.remove("clicked")); - }, 50); + document.querySelector(`#${pressedKey}`).classList.remove("clicked"); deleteLetter() return; } @@ -270,11 +298,7 @@ document.addEventListener("keyup", (e) => { if (!found || found.length > 1) { return } else { - insertLetter(pressedKey) - document.querySelector(`#${pressedKey.toLowerCase()}`).classList.add("clicked") - setTimeout(() => { - setTimeout(document.querySelector(`#${pressedKey.toLowerCase()}`).classList.remove("clicked")); - }, 50); + document.querySelector(`#${pressedKey.toLowerCase()}`).classList.remove("clicked"); return; } }) diff --git a/assets/styles/mobile_style.css b/assets/styles/mobile_style.css index 66343cde..48b51734 100644 --- a/assets/styles/mobile_style.css +++ b/assets/styles/mobile_style.css @@ -21,7 +21,7 @@ p { .header { width: 95%; - margin-left: auto; + margin-left: auto; margin-right: auto; text-align: center; } @@ -45,7 +45,7 @@ p { .content { width: 95%; - margin-left: auto; + margin-left: auto; margin-right: auto; text-align: center; } @@ -53,7 +53,7 @@ p { .footer { width:50%; display:flex; - align-items: center; + align-items: center; justify-content: center; flex-direction: column-reverse; margin-left:auto; @@ -77,8 +77,8 @@ table { text-align: left; text-justify: inter-word; width: 95%; - margin-left: auto; - margin-right: auto; + margin-left: auto; + margin-right: auto; } td { @@ -143,7 +143,7 @@ a { .btn { color: black; padding: 10px 30px 10px 30px; - width:fit-content; + width:fit-content; margin-left: auto; margin-right: auto; -webkit-tap-highlight-color: rgba(0,0,0,0); @@ -169,7 +169,7 @@ a { align-items: center; row-gap: 2px; } - + #keyboard-cont div { display: flex; justify-content: center; @@ -178,8 +178,8 @@ a { gap:3px; } -.fourth-row{ - padding: 20px 0 20px 0; +.fourth-row { + padding: 10px 10px 10px 10px; } .keyboard-button {