From 27f99871a384f54dfc255c1200dd4b5d01d72fc6 Mon Sep 17 00:00:00 2001 From: VijaySamant4368 Date: Mon, 3 Jun 2024 19:52:21 +0530 Subject: [PATCH 1/2] Added game FruitCatcher --- Games/FruitCatcher/README.md | 25 +++++++ Games/FruitCatcher/index.html | 18 +++++ Games/FruitCatcher/script.js | 70 ++++++++++++++++++ Games/FruitCatcher/style.css | 63 ++++++++++++++++ README.md | 3 +- .../images/Screenshot 2024-06-03 195029.png | Bin 0 -> 17744 bytes 6 files changed, 178 insertions(+), 1 deletion(-) create mode 100644 Games/FruitCatcher/README.md create mode 100644 Games/FruitCatcher/index.html create mode 100644 Games/FruitCatcher/script.js create mode 100644 Games/FruitCatcher/style.css create mode 100644 assets/images/Screenshot 2024-06-03 195029.png diff --git a/Games/FruitCatcher/README.md b/Games/FruitCatcher/README.md new file mode 100644 index 0000000000..542115334c --- /dev/null +++ b/Games/FruitCatcher/README.md @@ -0,0 +1,25 @@ +# **FruitCatcher** + +#### Description + +"Fruit Catcher" is a simple and engaging game where players control a basket to catch falling fruits. The goal is to catch as many fruits as possible within a limited time, with the game getting progressively harder. + +#### Functionality + +- The game starts immediately upon loading. +- Players use the left and right arrow keys to move the basket. +- Fruits fall from the top of the screen at increasing speeds. +- Each fruit caught increases the player's score. +- The game ends when a fruit is missed. + +#### How to Play + +1. **Start the Game:** Open the `index.html` file in a web browser. +2. **Move the Basket:** Use the left (`←`) and right (`→`) arrow keys to move the basket. +3. **Catch Fruits:** Position the basket under the falling fruits to catch them. +4. **Score Points:** Each fruit caught increases your score by 1. +5. **End Game:** The game ends when the player decides to stop or refreshes the page. Your final score will be displayed. + +Enjoy catching fruits and try to beat your high score! + + diff --git a/Games/FruitCatcher/index.html b/Games/FruitCatcher/index.html new file mode 100644 index 0000000000..c7f71f5faf --- /dev/null +++ b/Games/FruitCatcher/index.html @@ -0,0 +1,18 @@ + + + + + + Catch the Falling Stars + + + +
+
+
+
Score: 0
+
Game Over
+
+ + + diff --git a/Games/FruitCatcher/script.js b/Games/FruitCatcher/script.js new file mode 100644 index 0000000000..2e3e4e3b42 --- /dev/null +++ b/Games/FruitCatcher/script.js @@ -0,0 +1,70 @@ +const game = document.getElementById('game'); +const basket = document.getElementById('basket'); +const starsContainer = document.getElementById('stars-container'); +const scoreDisplay = document.getElementById('score'); +const gameOverDisplay = document.getElementById('game-over'); + +let score = 0; +let gameInterval; +let starFallInterval; +let starSpeed = 2; + +document.addEventListener('keydown', moveBasket); + +function moveBasket(event) { + const basketRect = basket.getBoundingClientRect(); + if (event.key === 'ArrowLeft' && basketRect.left > 0) { + basket.style.left = basketRect.left - 20 + 'px'; + } + if (event.key === 'ArrowRight' && basketRect.right < game.clientWidth) { + basket.style.left = basketRect.left + 20 + 'px'; + } +} + +function createStar() { + const star = document.createElement('div'); + star.classList.add('star'); + star.style.left = Math.random() * (game.clientWidth - 20) + 'px'; + starsContainer.appendChild(star); +} + +function fallStars() { + const stars = document.querySelectorAll('.star'); + stars.forEach(star => { + const starRect = star.getBoundingClientRect(); + if (starRect.top + starSpeed >= game.clientHeight) { + endGame(); + } else if (checkCollision(basket, star)) { + star.remove(); + score++; + scoreDisplay.textContent = 'Score: ' + score; + } else { + star.style.top = starRect.top + starSpeed + 'px'; + } + }); + if (Math.random() < 0.1) createStar(); +} + +function checkCollision(basket, star) { + const basketRect = basket.getBoundingClientRect(); + const starRect = star.getBoundingClientRect(); + return !( + basketRect.top > starRect.bottom || + basketRect.right < starRect.left || + basketRect.bottom < starRect.top || + basketRect.left > starRect.right + ); +} + +function startGame() { + gameInterval = setInterval(fallStars, 20); + starFallInterval = setInterval(() => { starSpeed += 0.1; }, 1000); +} + +function endGame() { + clearInterval(gameInterval); + clearInterval(starFallInterval); + gameOverDisplay.style.display = 'block'; +} + +startGame(); diff --git a/Games/FruitCatcher/style.css b/Games/FruitCatcher/style.css new file mode 100644 index 0000000000..6d1b698c2d --- /dev/null +++ b/Games/FruitCatcher/style.css @@ -0,0 +1,63 @@ +body { + margin: 0; + padding: 0; + display: flex; + justify-content: center; + align-items: center; + height: 100vh; + background-color: #282c34; + color: white; + font-family: Arial, sans-serif; +} + +#game { + position: relative; + width: 80%; + height: 90vh; + border: 2px solid #fff; + overflow: hidden; +} + +#basket { + position: absolute; + bottom: 20px; + left: 50%; + width: 100px; + height: 30px; + background-color: #ffcc00; + border-radius: 10px; + transform: translateX(-50%); +} + +#stars-container { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; +} + +.star { + position: absolute; + width: 20px; + height: 20px; + background-color: #fff; + border-radius: 50%; +} + +#score { + position: absolute; + top: 10px; + left: 10px; + font-size: 20px; +} + +#game-over { + display: none; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + font-size: 40px; + color: red; +} diff --git a/README.md b/README.md index 6a5fc3f87b..0fbc7d76fc 100644 --- a/README.md +++ b/README.md @@ -319,7 +319,8 @@ This repository also provides one such platforms where contributers come over an |[Color The Page](https://github.com/kunjgit/GameZone/tree/main/Games/Color_The_Page)| |[AquaSort_Game](https://github.com/kunjgit/GameZone/tree/main/Games/AquaSort_Game) | | [Tic-Tac-Toe Game](https://github.com/kunjgit/GameZone/tree/main/Games/Tic-Tac-Toe) | -| [Rapid_click_frenzy](https://github.com/kunjgit/GameZone/tree/main/Games/Rapid_click_frenzy) +| [Rapid_click_frenzy](https://github.com/kunjgit/GameZone/tree/main/Games/Rapid_click_frenzy) | +| [FruitCatcher](https://github.com/kunjgit/GameZone/tree/main/Games/FruitCatcher) diff --git a/assets/images/Screenshot 2024-06-03 195029.png b/assets/images/Screenshot 2024-06-03 195029.png new file mode 100644 index 0000000000000000000000000000000000000000..4a698fef4b15d9d4ef76a239d2d82aefb593cccd GIT binary patch literal 17744 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 H+QfCJUK literal 0 HcmV?d00001 From cd574c15f9ae93a02449cf3b0b21b518c2864e56 Mon Sep 17 00:00:00 2001 From: VijaySamant4368 Date: Wed, 12 Jun 2024 14:17:07 +0530 Subject: [PATCH 2/2] Changed file name and improved controls --- Games/FruitCatcher/script.js | 37 ++++++++++++------ Games/FruitCatcher/style.css | 2 +- assets/images/FruitCatcher.png | Bin 0 -> 19463 bytes .../images/Screenshot 2024-06-03 195029.png | Bin 17744 -> 0 bytes 4 files changed, 27 insertions(+), 12 deletions(-) create mode 100644 assets/images/FruitCatcher.png delete mode 100644 assets/images/Screenshot 2024-06-03 195029.png diff --git a/Games/FruitCatcher/script.js b/Games/FruitCatcher/script.js index 2e3e4e3b42..03d8948bc4 100644 --- a/Games/FruitCatcher/script.js +++ b/Games/FruitCatcher/script.js @@ -7,19 +7,33 @@ const gameOverDisplay = document.getElementById('game-over'); let score = 0; let gameInterval; let starFallInterval; -let starSpeed = 2; +let starSpeed = 0.1; + document.addEventListener('keydown', moveBasket); function moveBasket(event) { const basketRect = basket.getBoundingClientRect(); - if (event.key === 'ArrowLeft' && basketRect.left > 0) { - basket.style.left = basketRect.left - 20 + 'px'; - } - if (event.key === 'ArrowRight' && basketRect.right < game.clientWidth) { - basket.style.left = basketRect.left + 20 + 'px'; + const gameRect = game.getBoundingClientRect(); + const step = 200; // Number of pixels to move per key press + + if (event.key === 'ArrowLeft') + { + if (basketRect.left - step > gameRect.left) { + basket.style.left = basket.offsetLeft - step + 'px'; + } else{ + basket.style.left = (gameRect.left + 10) + 'px'; + } + } + if (event.key === 'ArrowRight') + if (basketRect.right + step < gameRect.right){ + basket.style.left = basket.offsetLeft + step + 'px'; + } + else{ + basket.style.left = (gameRect.right - basket.getBoundingClientRect().width - 10) + 'px'; + } + } -} function createStar() { const star = document.createElement('div'); @@ -39,10 +53,9 @@ function fallStars() { score++; scoreDisplay.textContent = 'Score: ' + score; } else { - star.style.top = starRect.top + starSpeed + 'px'; + star.style.top = starRect.top - 30 + 'px'; } }); - if (Math.random() < 0.1) createStar(); } function checkCollision(basket, star) { @@ -57,11 +70,13 @@ function checkCollision(basket, star) { } function startGame() { - gameInterval = setInterval(fallStars, 20); - starFallInterval = setInterval(() => { starSpeed += 0.1; }, 1000); + gameInterval = setInterval(fallStars, 10); + creation = setInterval(createStar, 1000 - (score * 10)); //More stars as score goes up + starFallInterval = setInterval(() => { starSpeed ; }, 10); } function endGame() { + clearInterval(creation); clearInterval(gameInterval); clearInterval(starFallInterval); gameOverDisplay.style.display = 'block'; diff --git a/Games/FruitCatcher/style.css b/Games/FruitCatcher/style.css index 6d1b698c2d..3ca938c0a4 100644 --- a/Games/FruitCatcher/style.css +++ b/Games/FruitCatcher/style.css @@ -22,7 +22,7 @@ body { position: absolute; bottom: 20px; left: 50%; - width: 100px; + width: 300px; height: 30px; background-color: #ffcc00; border-radius: 10px; diff --git a/assets/images/FruitCatcher.png b/assets/images/FruitCatcher.png new file mode 100644 index 0000000000000000000000000000000000000000..356dbdc69527a8d64414d68ced7c286f04929868 GIT binary patch literal 19463 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 a{9P}{r6h>DH>?FGt{cIwR{V7T>3;*WE@mhI literal 0 HcmV?d00001 diff --git a/assets/images/Screenshot 2024-06-03 195029.png b/assets/images/Screenshot 2024-06-03 195029.png deleted file mode 100644 index 4a698fef4b15d9d4ef76a239d2d82aefb593cccd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17744 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 H+QfCJUK