Skip to content

Commit 9b26258

Browse files
committed
add finished speak number guessing game
1 parent f3146b6 commit 9b26258

File tree

2 files changed

+69
-1
lines changed

2 files changed

+69
-1
lines changed
+58
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
const messageElement = document.getElementById("msg");
2+
3+
const randomNumber = getRandomNumber();
4+
5+
console.log(randomNumber);
6+
7+
window.SpeechRecognition =
8+
window.SpeechRecognition || window.webkitSpeechRecognition;
9+
let recognition = new window.SpeechRecognition();
10+
recognition.start();
11+
12+
function getRandomNumber() {
13+
return Math.floor(Math.random() * 100) + 1;
14+
}
15+
16+
function onSpeak(event) {
17+
const message = event.results[0][0].transcript;
18+
writeMessage(message);
19+
checkNumber(message);
20+
}
21+
22+
function writeMessage(message) {
23+
messageElement.innerHTML = `
24+
<div>You said: </div>
25+
<span class="box">${message}</span>
26+
`;
27+
}
28+
29+
function checkNumber(message) {
30+
const number = +message;
31+
if (Number.isNaN(number)) {
32+
messageElement.innerHTML += "<div>That is not a valid number</div>";
33+
return;
34+
}
35+
if (number > 100 || number < 1) {
36+
messageElement.innerHTML += "<div>Number must be between 1 and 100</div>";
37+
return;
38+
}
39+
if (number === randomNumber) {
40+
document.body.innerHTML = `
41+
<h2>Congrats! You have guessed the number! <br><br>
42+
It was ${number}</h2>
43+
<button class="play-again" id="play-again">Play Again</button>
44+
`;
45+
} else if (number > randomNumber) {
46+
messageElement.innerHTML += "<div>GO LOWER</div>";
47+
} else {
48+
messageElement.innerHTML += "<div>GO HIGHER</div>";
49+
}
50+
}
51+
52+
// Event Listeners
53+
recognition.addEventListener("result", onSpeak);
54+
recognition.addEventListener("end", () => recognition.start());
55+
56+
document.body.addEventListener("click", (e) => {
57+
if (e.target.id == "play-again") history.go(0);
58+
});

78-speak number guessing game/style.css

+11-1
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,21 @@ p {
5454
}
5555

5656
.play-again {
57+
cursor: pointer;
5758
padding: 0.5rem 1rem;
5859
border: 0;
5960
background-color: #f4f4f4;
6061
border-radius: 5px;
61-
margin-top: 0.625rem;
62+
margin-top: 2rem;
63+
}
64+
65+
.play-again:hover {
66+
background-color: #27273d;
67+
color: #f4f4f4;
68+
}
69+
70+
.play-again:focus {
71+
outline: none;
6272
}
6373

6474
.msg {

0 commit comments

Comments
 (0)