-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.js
More file actions
153 lines (120 loc) · 4.47 KB
/
Copy pathscript.js
File metadata and controls
153 lines (120 loc) · 4.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
"use strict";
// generate random number function
function generateRandomNumber(){
const randomNumber = parseInt(Math.random() * 100);
return randomNumber;
}
// validation user number, check the enetred value number or not
function validateUserNumber(number=null){
if (number < 0 || isNaN(number ) || number === ""){
errorMessageDisplay("Please enter valid number...");
}
else if(number > 100){
errorMessageDisplay("Please enter number less than 100");
}
else{
errorMessageDisplay(parseInt(number))
checkUserGuessNumber(parseInt(number));
}
}
// display error message function, if user did not enter a valid value
function errorMessageDisplay(message){
const errorMessageHeading2 = document.getElementById('errorMessage');
if (isNaN(message)){
errorMessageHeading2.innerHTML = message;
errorMessageHeading2.style.color = "red";
errorMessageHeading2.style.display = "block";
hintMessage.innerHTML = "Please try again...";
}
else{
errorMessageHeading2.style.display = "none";
}
}
// function match the user guess number
function checkUserGuessNumber(validNumber){
if(validNumber === randomNumber){
greetings(validNumber);
winGame();
}
else if(validNumber > randomNumber){
totalAttempts--;
previousUserGuess.push(validNumber);
hintMessage.innerHTML = "Your number greater than random number";
displayGuess();
gameOver();
}
else if(validNumber < randomNumber){
totalAttempts--;
previousUserGuess.push(validNumber);
hintMessage.innerHTML = "Your number less than random number";
displayGuess();
gameOver();
}
}
// function about to display the user remaining attempts and also display the list of previous guesses on the html page
function displayGuess(){
displayPreviousGuesses.innerHTML = previousUserGuess;
displayRemainingAttempts.innerHTML = totalAttempts;
}
// greeting messages will display if user won the game
function greetings(matchNumber){
let greetingMessage = document.querySelector('#greeting');
userTotalAttempts.innerHTML = `Your Total Atempts: ${10-totalAttempts}`
greetingMessage.innerHTML = `Congratulations! Your Guess the Number ${matchNumber} Successfully`;
greetingMessage.style.color = "green";
}
// if user won the game... this function display message you won the game, after won the user won't be to continue the game
function winGame(){
submitButton.disabled = true;
inputTag.disabled = true;
submitButton.value = "Game Won!"
submitButton.style.backgroundColor = "green";
submitButton.style.color = "white";
}
// if user attempts 0, then the game will end, and the user won't be able to play the game
function gameOver(){
if(totalAttempts < 1){
submitButton.disabled = true;
inputTag.disabled = true;
submitButton.value = "Game Over!";
submitButton.style.backgroundColor = "red";
submitButton.style.color = "white";
hintMessage.innerHTML = "You Lose the Game!";
hintMessage.style.color = "red";
}
}
// main execution
// event listener activate if the user submit
// store form in a var
const form = document.querySelector('.form');
// for display if the user number less than or greater than
let hintMessage = document.querySelector('.hint');
// for display the user previous guess
const displayPreviousGuesses = document.querySelector('.guesses');
// for display the remaining user attempts or total attempts
const displayRemainingAttempts = document.querySelector('.attempts');
// for display the total attempts after won the game
const userTotalAttempts = document.querySelector('.totalAttempts');
// submit button
const submitButton = document.querySelector('#submitButton');
// input tag where the user enter value
const inputTag = document.querySelector('#guessField');
// display message when the start 1st time game
hintMessage.innerHTML = "Please Start the Game";
// call generate random function and store in a memory
const randomNumber = generateRandomNumber();
// store the user previous guess for display or remember
const previousUserGuess = [];
// total game attempts
let totalAttempts = 10;
// listen the form and execute the value if the user submit
form.addEventListener('submit', (event) => {
// form submit without reloading the page
event.preventDefault();
// get and store the user input value
let getUserNumber = document.getElementById('guessField').value;
// function for check the user the entered value valid or not. it may be a text or character or empty
validateUserNumber(getUserNumber);
// empty the input field after submit the value
document.getElementById('guessField').value = '';
});