forked from ankur12-1610/Polyglot_JS
-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.js
124 lines (76 loc) · 3.71 KB
/
main.js
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
// HELLO FELLOW CODERS! WE WELCOME YOU TO THE WORLD OF JAVASCRIPT
//----- We've curated this assignment for someone staring out in exploring the beauty of JavaScript and would urge you to go through the resources shared with you before you start with this. ----- //
//Go through the CSS file as well to get a hold of all the attributes we've added. You're free to add some of your own and maybe delete some of ours xD
//The point is, we want you to have fun and use all the concepts while doing this task. In case of any doubts, feel free to reach out to us!
// Your main work would be here, in main.js and would advice you to also pay a visit to the scenario.js
// Life of the player and the hacker.
var playerLife = 5;
var hackerLife = 5;
// Message to be displayed when the game is over
var hackerWinnerMessage = "Write the message here";
var playerWinnerMessage = "Write the message here";
// ---------------Game code starts here ---------------//
// declare a few handy variables like we've done :p
var playerStartLife = parseInt(playerLife);
var hackerStartLife = parseInt(hackerLife);
// we will declare the functions for you and you will complete those
updateScores();
// you learnt DOM manipulation right? here's an example of the same. Go ahead and use manipulate the DOM!
document.querySelector(".game-board").classList.add("before-game");
var allCardElements = document.querySelectorAll(".card");
// Adds click handler to all player card elements so that your cards are actionable
// An example of a function that controls what would happen when a card is clicked
function cardClicked(cardEl) {
if(cardSelected) { return; }
cardSelected = true;
cardEl.classList.add("played-card");
document.querySelector(".game-board").classList.add("card-selected");
// Yes JS is cool and this would allow you to wait 500ms before revealing the hacker power
setTimeout(function(){
revealHackerPower();
},500)
setTimeout(function(){
revealPlayerPower();
},800)
setTimeout(function(){
compareCards();
}, 1400);
}
// Now write a function that shows the power level on the player card
function revealPlayerPower(){
}
// Write a function that shows the power level on the hacker card
function revealHackerPower(){
}
// Write a function to compare the cards. Here is where all your skills would come in handy!
// P.S: We've added the 'disabled' attribute in the CSS file for the button and you should use it in case you want a certain element to just go away or 'vanish' at a certain time. For eg: You'd definitely want the 'Next' button to go away after a player chooses a card right?
function compareCards(){
}
//Use conditional statements and complete the function that shows the winner message
function gameOver(winner) {
}
// Write a function that starts the game
function startGame() {
}
// Now write a function that starts the game over from scratch
function restartGame(){
}
// We've also used a cool life bar that displays the life left. Write a function that updates the displayed life bar and life totals
// use innerHTML and a lot of other cool things to do this.
function updateScores(){
// Here these update life totals for each player
document.querySelector(".player-stats .life-total").innerHTML = playerLife;
// We've added the code to update the player lifebar
var playerPercent = playerLife / playerStartLife * 100;
if (playerPercent < 0) {
playerPercent = 0;
}
document.querySelector(".player-stats .life-left").style.height = playerPercent + "%";
// Now you write the code to update the hacker lifebar
}
// Write a function that Plays one turn of the game
function playTurn() {
}
// Finally write the function that reveals the cards. Use
function revealCards(){
}