From 1a618cc3e2984c1cde87c9e7ab4e66e49abace32 Mon Sep 17 00:00:00 2001 From: dattaaanand Date: Wed, 27 Nov 2024 20:34:55 +0530 Subject: [PATCH] Issue 3 Complete --- 3-typing-game/images/TextboxDisabled.png | Bin 0 -> 19992 bytes 3-typing-game/images/image.png | Bin 0 -> 19327 bytes 3-typing-game/images/modalDialogueBox.png | Bin 0 -> 30315 bytes 3-typing-game/images/myGame.png.png | Bin 0 -> 26517 bytes 3-typing-game/images/onStart.png | Bin 0 -> 24065 bytes 3-typing-game/myTypingGame/gameStyle.css | 30 +++++++ 3-typing-game/myTypingGame/myGame.html | 28 +++++++ 3-typing-game/myTypingGame/script.js | 44 ++++++++++ 3-typing-game/solution.md | 57 +++++++++++++ 3-typing-game/typing-game-solution/index.html | 24 ++++++ 3-typing-game/typing-game-solution/script.js | 78 ++++++++++++++++++ 3-typing-game/typing-game-solution/style.css | 76 +++++++++++++++++ 12 files changed, 337 insertions(+) create mode 100644 3-typing-game/images/TextboxDisabled.png create mode 100644 3-typing-game/images/image.png create mode 100644 3-typing-game/images/modalDialogueBox.png create mode 100644 3-typing-game/images/myGame.png.png create mode 100644 3-typing-game/images/onStart.png create mode 100644 3-typing-game/myTypingGame/gameStyle.css create mode 100644 3-typing-game/myTypingGame/myGame.html create mode 100644 3-typing-game/myTypingGame/script.js create mode 100644 3-typing-game/solution.md create mode 100644 3-typing-game/typing-game-solution/index.html create mode 100644 3-typing-game/typing-game-solution/script.js create mode 100644 3-typing-game/typing-game-solution/style.css diff --git a/3-typing-game/images/TextboxDisabled.png b/3-typing-game/images/TextboxDisabled.png new file mode 100644 index 0000000000000000000000000000000000000000..11a161ac7ea7498a863fcb82e9bea399d7e1e624 GIT binary patch literal 19992 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 M=kzP$V!)sO4PQ?6ZvX%Q literal 0 HcmV?d00001 diff --git a/3-typing-game/images/modalDialogueBox.png b/3-typing-game/images/modalDialogueBox.png new file mode 100644 index 0000000000000000000000000000000000000000..42828fc453c14bf4354e466fc7b9adb25bbe445c GIT binary patch literal 30315 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 Wuu~}%x(EmnGdH_@27B5m>c0Sw$pDN1 literal 0 HcmV?d00001 diff --git a/3-typing-game/images/myGame.png.png b/3-typing-game/images/myGame.png.png new file mode 100644 index 0000000000000000000000000000000000000000..446744a0d40260f755961a18c4d24053fe25fa06 GIT binary patch literal 26517 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 OU$%0%Sb6@&z5fIEAXqK{ literal 0 HcmV?d00001 diff --git a/3-typing-game/myTypingGame/gameStyle.css b/3-typing-game/myTypingGame/gameStyle.css new file mode 100644 index 0000000..bdb867c --- /dev/null +++ b/3-typing-game/myTypingGame/gameStyle.css @@ -0,0 +1,30 @@ +body { + font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif; + background-color: #000000; + color: white; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + height: 100vh; +} + +#game-area { + text-align: center; +} + +#box { + width: 600px; + height: 400px; + border: 4px solid #0eb029; + background-color: white; + position: relative; + margin-top: 20px; + overflow: hidden; +} + +.shape { + width: 20px; + height: 20px; + position: absolute; +} diff --git a/3-typing-game/myTypingGame/myGame.html b/3-typing-game/myTypingGame/myGame.html new file mode 100644 index 0000000..2d86bbe --- /dev/null +++ b/3-typing-game/myTypingGame/myGame.html @@ -0,0 +1,28 @@ + + + + + + Key-Art Dash + + + +
+

Dattaaaa's KeyBoard Game

+

+ Press a Key to Pop Up a Coloured Cube! +

+

+ Space To Burst multiple Cubes! +

+

+ Backspace to UNDO +

+

+ Enter to Reset. +

+
+
+ + + diff --git a/3-typing-game/myTypingGame/script.js b/3-typing-game/myTypingGame/script.js new file mode 100644 index 0000000..e8f8e61 --- /dev/null +++ b/3-typing-game/myTypingGame/script.js @@ -0,0 +1,44 @@ +const canvas = document.getElementById("box"); +const shapes = []; +function randomColor() { + return `hsl(${Math.floor(Math.random() * 360)}, 70%, 60%)`; +} + +function createShape(x, y, color) { + const div = document.createElement("div"); + div.className = "shape"; + div.style.left = `${x}px`; + div.style.top = `${y}px`; + div.style.backgroundColor = color; + canvas.appendChild(div); + shapes.push(div); +} + +document.addEventListener("keydown", (event) => { + const canvasRect = canvas.getBoundingClientRect(); + + const x = Math.random() * canvasRect.width - 20; + const y = Math.random() * canvasRect.height - 20; + + if (event.key === " ") { + for (let i = 0; i < 10; i++) { + createShape(Math.random() * canvasRect.width, Math.random() * canvasRect.height, randomColor()); + } + } + else if (event.key === "Backspace") { + const lastShape = shapes.pop(); + if (lastShape) { + canvas.removeChild(lastShape); + } + } + else if (event.key === "Enter") { + shapes.forEach((shape) => canvas.removeChild(shape)); + shapes.length = 0; + } + else { + createShape(x, y, randomColor()); + } + if (["Backspace", "Enter", " "].includes(event.key)) { + event.preventDefault(); + } +}); diff --git a/3-typing-game/solution.md b/3-typing-game/solution.md new file mode 100644 index 0000000..5e24979 --- /dev/null +++ b/3-typing-game/solution.md @@ -0,0 +1,57 @@ +# 3-typing-game + +--- +--- + +- First of all, created the basic typing game from the given code. +- Added a little CSS to make it look better. +![Typing Game](./images/image.png) + +--- +### Challenge + +- Disabled the input event listener along with the textbox by `typedValueElement.disabled = true;` +- To display a modal dialogue box, and also store the highscores using localStorage, I added these. +- HTML: + ``` + + ``` +- JavaScript: + ``` + const modal = document.getElementById('modal'); + const modalMsg = document.getElementById('modal-message'); + const close = document.getElementById('close-modal'); + ``` + In the input event listener, I added, + ``` + showModal(message); + ``` + And created functions + ``` + function showModal(message) { + modalMsg.innerText = message; + modal.style.display = 'flex'; + } + close.addEventListener('click', () => { + modal.style.display = 'none'; + }); + ``` + +--- + +### Assignment + +I created a very simple game, when there is a canvas box. +- When you press a key, a cube with a colour pops up on the canvas. +- Backspace will remove the previous cube. +- Spacebar will add multiple cubes.\ +- Enter will clear the canvas. + +You can see the Image ![here](./images/myGame.png.png) + +The files are ![here](./myTypingGame/). \ No newline at end of file diff --git a/3-typing-game/typing-game-solution/index.html b/3-typing-game/typing-game-solution/index.html new file mode 100644 index 0000000..db4f9fe --- /dev/null +++ b/3-typing-game/typing-game-solution/index.html @@ -0,0 +1,24 @@ + + + Typing game + + + +

Typing game!

+

Practice your typing skills with a quote from Sherlock Holmes. Click **start** to begin!

+

+

+
+ + +
+ + + + + \ No newline at end of file diff --git a/3-typing-game/typing-game-solution/script.js b/3-typing-game/typing-game-solution/script.js new file mode 100644 index 0000000..bcfd295 --- /dev/null +++ b/3-typing-game/typing-game-solution/script.js @@ -0,0 +1,78 @@ +const quotes = [ + 'When you have eliminated the impossible, whatever remains, however improbable, must be the truth.', + 'There is nothing more deceptive than an obvious fact.', + 'I ought to know by this time that when a fact appears to be opposed to a long train of deductions it invariably proves to be capable of bearing some other interpretation.', + 'I never make exceptions. An exception disproves the rule.', + 'What one man can invent another can discover.', + 'Nothing clears up a case so much as stating it to another person.', + 'Education never ends, Watson. It is a series of lessons, with the greatest for the last.', +]; + +let words = []; +let wordIndex = 0; +let startTime = Date.now(); +const quoteElement = document.getElementById('quote'); +const messageElement = document.getElementById('message'); +const typedValueElement = document.getElementById('typed-value'); +const modal = document.getElementById('modal'); +const modalMsg = document.getElementById('modal-message'); +const close = document.getElementById('close-modal'); +typedValueElement.disabled = true; + +document.getElementById('start').addEventListener('click', () => { + const quoteIndex = Math.floor(Math.random() * quotes.length); + const quote = quotes[quoteIndex]; + words = quote.split(' '); + wordIndex = 0; + const spanWords = words.map(function(word) { + return `${word} ` + }); + quoteElement.innerHTML = spanWords.join(''); + quoteElement.childNodes[0].className = 'highlight'; + messageElement.innerText = ''; + typedValueElement.disabled = false; + typedValueElement.value = ''; + typedValueElement.focus(); + startTime = new Date().getTime(); +}); +typedValueElement.addEventListener('input', () => { + const currentWord = words[wordIndex]; + const typedValue = typedValueElement.value; + + if (typedValue === currentWord && wordIndex === words.length - 1) { + const elapsedTime = new Date().getTime() - startTime; + const HighScore = localStorage.getItem("highest"); + let message = ''; + if(HighScore != null){ + message= `CONGRATULATIONS! You finished in ${elapsedTime / 1000} seconds.Current highscore is ${HighScore}`; + } + if(HighScore>(elapsedTime/1000) || HighScore == null){ + message = `CONGRATULATIONS! You set a new Highscore of ${elapsedTime / 1000} seconds.`; + localStorage.setItem("highest",elapsedTime/1000); + } + showModal(message); + typedValueElement.disabled = true; + } + else if (typedValue.endsWith(' ') && typedValue.trim() === currentWord) { + typedValueElement.value = ''; + wordIndex++; + for (const wordElement of quoteElement.childNodes) { + wordElement.className = ''; + } + quoteElement.childNodes[wordIndex].className = 'highlight'; + } + else if (currentWord.startsWith(typedValue)) { + typedValueElement.className = ''; + } + else { + typedValueElement.className = 'error'; + } +}); + +function showModal(message) { + modalMsg.innerText = message; + modal.style.display = 'flex'; +} +close.addEventListener('click', () => { + modal.style.display = 'none'; +}); \ No newline at end of file diff --git a/3-typing-game/typing-game-solution/style.css b/3-typing-game/typing-game-solution/style.css new file mode 100644 index 0000000..02bd053 --- /dev/null +++ b/3-typing-game/typing-game-solution/style.css @@ -0,0 +1,76 @@ +.highlight { + background-color: rgb(216, 216, 157); +} + +.error { + background-color: lightcoral; + border: red; +} +.modal { + display: none; + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: rgba(0, 0, 0, 0.5); + justify-content: center; + align-items: center; +} +.modal-content { + background: white; + padding: 20px; + border-radius: 8px; + text-align: center; +} +button { + padding: 5px 10px; + font-size: 16px; + margin-top: 10px; +} +body { + font-family: Arial, sans-serif; + background-color: #f9f9f9; + color: #333; + text-align: center; + padding: 20px; +} + +h1 { + font-size: 2rem; + color: #444; +} + +p { + font-size: 1rem; + margin: 10px 0; +} + +#quote { + font-style: italic; + color: #555; + margin: 20px 0; +} + +#typed-value { + font-size: 1rem; + padding: 5px; + margin-right: 10px; + width: 250px; + border: 1px solid #ccc; + border-radius: 4px; +} + +button { + font-size: 1rem; + padding: 8px 15px; + color: #fff; + background-color: #a8a546; + border: none; + border-radius: 4px; + cursor: pointer; +} + +button:hover { + background-color: #0056b3; +}