diff --git a/README.md b/README.md index 8cd9f49b..c8331344 100644 --- a/README.md +++ b/README.md @@ -264,6 +264,7 @@ ________________________________________________________________________________ | 206 | [Bomber_Game](.SinglePlayer%20-%20Games/Bomber_Game) | | 207 | [Shape_Clicker_Game](.SinglePlayer%20-%20Games/Shape_Clicker_Game) | | 208 | [Brick_Breaker_Game](.SinglePlayer%20-%20Games/Brick_Breaker_Game) | +| 209 | [Bash_Mole_Game](.SinglePlayer%20-%20Games/Bash_Mole_Game) | diff --git a/SinglePlayer - Games/Banner - image/Bash_Mole_Game.png b/SinglePlayer - Games/Banner - image/Bash_Mole_Game.png new file mode 100644 index 00000000..3ad8214d Binary files /dev/null and b/SinglePlayer - Games/Banner - image/Bash_Mole_Game.png differ diff --git a/SinglePlayer - Games/Bash_Mole_Game/README.md b/SinglePlayer - Games/Bash_Mole_Game/README.md new file mode 100644 index 00000000..155d9eb4 --- /dev/null +++ b/SinglePlayer - Games/Bash_Mole_Game/README.md @@ -0,0 +1,31 @@ +# Bash Mole Game + +This is a simple **Bash Mole Game** built using HTML, CSS, and JavaScript. The objective of the game is to click (bash) on the moles that pop up from the holes to earn points. + +## How to Play + +- The game lasts for 10 seconds. +- Moles will randomly pop up from the holes. +- Click on the moles to increase your score. +- Your score is displayed at the top of the page. + +## Files + +- `index.html`: The main HTML file that sets up the game structure. +- `style.css`: The CSS file for styling the game interface. +- `script.js`: The JavaScript file containing the game logic. + +## How to Run + +1. Clone or download this repository. +2. Open `index.html` in your web browser. + +## Future Enhancements + +- Add different levels with increasing difficulty. +- Implement a high-score tracking system. +- Add sound effects and animations for better gameplay experience. + +## License + +This project is open-source and available under the MIT License. diff --git a/SinglePlayer - Games/Bash_Mole_Game/index.html b/SinglePlayer - Games/Bash_Mole_Game/index.html new file mode 100644 index 00000000..71129dfc --- /dev/null +++ b/SinglePlayer - Games/Bash_Mole_Game/index.html @@ -0,0 +1,25 @@ + + + + + + Bash Mole Game + + + +

Bash Mole Game

+

Score: 0

+
+
+
+
+
+
+
+
+
+
+
+ + + diff --git a/SinglePlayer - Games/Bash_Mole_Game/script.js b/SinglePlayer - Games/Bash_Mole_Game/script.js new file mode 100644 index 00000000..b77fd8aa --- /dev/null +++ b/SinglePlayer - Games/Bash_Mole_Game/script.js @@ -0,0 +1,49 @@ +const holes = document.querySelectorAll('.hole'); +const scoreDisplay = document.getElementById('score'); +let score = 0; +let lastHole; +let timeUp = false; + +function randomTime(min, max) { + return Math.round(Math.random() * (max - min) + min); +} + +function randomHole(holes) { + const index = Math.floor(Math.random() * holes.length); + const hole = holes[index]; + if (hole === lastHole) { + return randomHole(holes); + } + lastHole = hole; + return hole; +} + +function peep() { + const time = randomTime(200, 1000); + const hole = randomHole(holes); + hole.classList.add('mole'); + setTimeout(() => { + hole.classList.remove('mole'); + if (!timeUp) peep(); + }, time); +} + +function startGame() { + scoreDisplay.textContent = 'Score: 0'; + score = 0; + timeUp = false; + peep(); + setTimeout(() => timeUp = true, 10000); // 10 seconds game +} + +function whack(e) { + if (!e.isTrusted) return; // Prevent cheating + if (e.target.classList.contains('mole')) { + score++; + e.target.classList.remove('mole'); + scoreDisplay.textContent = 'Score: ' + score; + } +} + +holes.forEach(hole => hole.addEventListener('click', whack)); +startGame(); diff --git a/SinglePlayer - Games/Bash_Mole_Game/style.css b/SinglePlayer - Games/Bash_Mole_Game/style.css new file mode 100644 index 00000000..cef5139f --- /dev/null +++ b/SinglePlayer - Games/Bash_Mole_Game/style.css @@ -0,0 +1,38 @@ +body { + text-align: center; + font-family: Arial, sans-serif; + background-color: #f4f4f4; + margin: 0; + padding: 0; +} + +h1 { + margin-top: 20px; + font-size: 2.5rem; + color: #333; +} + +#score { + font-size: 1.5rem; + margin: 10px 0; +} + +.grid { + display: grid; + grid-template-columns: repeat(3, 150px); + grid-gap: 10px; + justify-content: center; + margin-top: 20px; +} + +.hole { + width: 150px; + height: 150px; + background-color: #8c8c8c; + border-radius: 10px; + position: relative; +} + +.hole.mole { + background-color: #ff6347; +} diff --git a/additionalpage/game.html b/additionalpage/game.html index e4c92d76..a5677dca 100644 --- a/additionalpage/game.html +++ b/additionalpage/game.html @@ -7838,6 +7838,62 @@

Brick_Breaker_Game

+ +
+
+ + +
+ 45 + +
+
+
+ + +
+
+

Bash_Mole_Game

+

Bash_Mole_Game

+
+
+ + + + + +
+
+
+
+
+

Release Date:  

+

20.06.2023

+
+
+

Updated:  

+

Action | Desktop

+
+
+
+ Play Now +
+
+
+
+ + + + +