Skip to content

Commit

Permalink
Merge pull request #1024 from Pujan-sarkar/main
Browse files Browse the repository at this point in the history
Earth_Guardian game added
  • Loading branch information
Durgesh4993 authored Jun 15, 2024
2 parents 09980cc + d31d9d8 commit 576db28
Show file tree
Hide file tree
Showing 65 changed files with 4,928 additions and 7 deletions.
16 changes: 9 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -236,34 +236,36 @@ ________________________________________________________________________________
| 178 | [Platform Game Engine](./SinglePlayer%20-%20Games/Platform_Game_Engine) |
| 179 | [Castle Escape Game](.SinglePlayer%20-%20Games/Castle_Escape_Game) |
| 180 | [Shadow Poke Guessing Game](.SinglePlayer%20-%20Games/Shadow_Poke_Guessing_Game) |
| 181 | [Marvel Role Playing Game](.SinglePlayer%20-%20Games/Marvel_Role_Playing_Game) |
| 181 | [Marvel Role Playing Game](.SinglePlayer%20-%20Games/Marvel_Role_Playing_Game) |
| 182 | [Animal Name Guessing Game](.SinglePlayer%20-%20Games/Animal_Name_Guessing_Game) |
| 183 | [Basketball Game](.SinglePlayer%20-%20Games/Basketball_Game) |
| 184 | [Ball Jumper Game](.SinglePlayer%20-%20Games/Ball_Jumper_Game) |
| 185 | [Math Sprint Game](.SinglePlayer%20-%20Games/Math_Sprint_Game) |
main
| 186 | [Quick Type](.SinglePlayer%20-%20Games/QuickType) |
| 187 | [SIMON_GAME](.SinglePlayer%20-%20Games/SIMON_GAME) |

| 186 | [Quick Type](.SinglePlayer%20-%20Games/QuickType) |
| 187 | [SIMON_GAME](.SinglePlayer%20-%20Games/SIMON_GAME) |
main
| 188 | [Cubula_Game](.SinglePlayer%20-%20Games/Cubula_Game) |
| 189 | [Ball_Shooting_Game](.SinglePlayer%20-%20Games/Ball_Shooting_Game) |
| 190 | [Baseball_Game](.SinglePlayer%20-%20Games/Baseball_Game) |
| 189 | [Hand_Cricket_Champ](./SinglePlayer%20-%20Games/Hand_Cricket_Champ) |
| 190 | [Pop My Balloon](<MultiPlayer - Games/Pop_My_Balloon>) |
main
| 191 | [Doraemon Run](.SinglePlayer%20-%20Games/DoraemonRun) |
| 192 | [Earth_Guardian](./SinglePlayer%20-%20Games/Earth_Guardian) |
| 191 | [Doraemon Run](.SinglePlayer%20-%20Games/DoraemonRun) |
| 192 | [Hand_Cricket_Champ](./SinglePlayer%20-%20Games/Hand_Cricket_Champ) |
| 193 | [SnakeBites Game](./SinglePlayer%20-%20Games/SnakeBites) |


| 194 | [Ball_Shooting_Game](.SinglePlayer%20-%20Games/Ball_Shooting_Game) |
| 195 | [Baseball_Game](.SinglePlayer%20-%20Games/Baseball_Game) |
| 196 | [Flames_Game](../MultiPlayer%20-%20Games/Flames_Game) |








</div>
________________________________________________________________________________________________________________________________________________________________
# How to make a PR in a Project 🟢
Expand Down
44 changes: 44 additions & 0 deletions SinglePlayer - Games/Earth_Guardian/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# Earth Guardian

# [Game Interface] <img src="./assets/images/Earth_Guardian.png">


-------------------

<br>

## **Description 📃**
-Earth Guardian is a remake of the classic Space shooter type of games, with 8-bit (pixel art) assets. This project used free assets (music and graphics) provided by [Jonathan So](https://jonathan-so.itch.io/),[KennyNL](https://kenney.nl/) and other sources, like Google images and [OpenGameArt](https://opengameart.org). This was a learning project. There will be some updates in the near future. Hope you like it, have fun!


## **functionalities 🎮**
1. This a classic space shooter game .
2. It has a timer going on , before the timer end you have to kill more more alien ships , it will be your final score
3. You can store your timer and health by collecting the time and health.

<br>

## **How to play? 🕹️**

- Use arrow keys to move the ship !
- Press spacebar to shoot !
- Hold shift key to use booster!

<br>

###### Bugs:
* Minor bug with multiple keys pressed movement (LEFT UP AND SHOOT);

<br>

## **Screenshots 📸**

<br>
# [Game image] <img src="./assets/images/Earth Guardian.png">


<br>

----------
#### Releases:
##### v1.0.0 - May 14 2024
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Binary file not shown.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Binary file not shown.
Binary file not shown.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
222 changes: 222 additions & 0 deletions SinglePlayer - Games/Earth_Guardian/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,222 @@
<!DOCTYPE html>
<html lang="en">
<head>
<!-- Earth Guardian Game by Pujan-sarkar -->
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Earth Guardian</title>
<link rel="stylesheet" href="./static/styles/main.css">
<link rel="stylesheet" href="./static/styles/fonts.css">
<link rel="stylesheet" href="./static/styles/animations.css">
</head>
<body>
<!-- MAIN MENU CONTAINER -->
<div class="main-menu">
<!-- Title -->
<div class="title">
<h1 id="title">EARTH GUARDIAN</h1>

<!-- Start game button -->
<button id="startGame" class="mainButtons main-menu_buttons">Start game</button>
<button id="highscoreList" class="mainButtons main-menu_buttons">High scores</button>
<button id="about" class="mainButtons main-menu_buttons">About</button>

<!-- Github link -->
<a href="https://github.com/Pujan-sarkar" target="_blank"><img src="./assets/images/github.png" alt="Github" width="32x" height="32px"></a>

<!-- SOUND CONTROL -->
<img class="soundControl" src="./assets/images/soundOn.png" alt="" width="16px" height="16px">

<p id="copyright">&copy; 2024</p>

<!-- About menu -->
<div class="aboutMenu">
<h3>ABOUT</h3>
<p>Remake of the classic Space Shooter type of games, with minor additions. All the assets used to create this game were free, provided by: <a href="https://jonathan-so.itch.io/" target="_blank">Jonathan So</a>, <a href="https://kenney.nl/" target="_blank">Kenny</a>, and Google(still free !). This was a learning project, hope you like it. Have fun !</p>
<button id="closeAbout" class="main-menu_buttons mainButtons">Close</button>
</div>

<!-- Highscores menu -->
<div class="highscoresList-menu">
<h3>HIGHSCORES</h3>
<p id="noHighscores">No highscores... go set one!</p>
<button id="clearList" class="main-menu_buttons mainButtons">Clear</button>
<ol id="theList"></ol>
<button id="closeHighscores" class="main-menu_buttons mainButtons">Close</button>
</div>

</div>
</div>

<!-- LOADING PART -->
<div class="loading">
<p class="loading-text">0%</p>
<div class="loading-bar">
<div class="loading-bar_fill"></div>
</div>
<!-- COMMANDS INFO -->
<div class="info">
<h2>COMMANDS:</h2>
<p>Use arrow keys to move the ship !</p>
<p>Press spacebar to shoot !</p>
<p>Hold shift key to use booster!</p>
</div>
</div>

<!-- CANVAS -->
<div class="container">
<!-- INFO MENU - SCORE, TIMER, HP... -->
<div class="menu">
<p id="pauseGame" class="main-menu_buttons">MENU</p>
<div class="time"><p id="timerDisplay">0:30</p></div>
<div class="level-container">
<p id="levelText">Level: <span id="currentLevel">1</span></p>
<div class="level-bar">
<p><span id="currentExp">0</span>/<span id="requiredExp">80 XP</span></p>
<div class="level-bar_fill"></div>
</div>
</div>
<div class="textContainer">
<p class="killCount">KILLS: <span id="killCount">0</span></p>
</div>
</div>

<!-- HEALTH CONTAINER -->
<div class="health-container">
<img src="assets/images/firstAid.png" alt="" width="32px" height="32px">
<div class="containerText">
<p id="healthText">100%</p>
</div>
</div>

<!-- SHIP SHIELD CONTAINER -->
<div class="shield-container">
<img src="assets/images/shieldImage.png" alt="" width="32px" height="32px">
<div class="containerText">
<p id="shieldText">100%</p>
</div>
</div>

<!-- COUNTDOWN TEXT -->
<div class="countdown"></div>

<!-- WARNING / NEW HIGHSCORE TEXT -->
<div class="emptyWarning-text"></div>

<!-- OVERHEATING BAR -->
<div class="overheat-container">
<p>OVERHEAT: </p>
<div class="overheat-bar">
<div class="overheat-bar_block"></div>
<div class="overheat-bar_block"></div>
<div class="overheat-bar_block"></div>
<div class="overheat-bar_block"></div>
<div class="overheat-bar_block"></div>
<div class="overheat-bar_block"></div>
<div class="overheat-bar_block"></div>
<div class="overheat-bar_block"></div>
<div class="overheat-bar_block"></div>
</div>
</div>



<!-- GAME FINISHED / GAME OVER MENU -->
<div class="game--over">
<img id="displayImage" src="./assets/images/tombstone.png" alt="Tombstone" width="70px" height="70px">
<p id="message">Thank you for your service.</p>

<!-- NEW HIGHSCORE PLAYER NAME ENTER -->
<div class="newHighscore-input">
<h2 id="scoreText"></h2>
<input type="text" id="playerName-input" placeholder="Enter your name..." required>
<button id="savePlayer" class="main-menu_buttons gameOverBtn">SAVE</button>
</div>


<div class="scores">
<p>Total kills: <span id="totalKills"></span></p>
<p>Time played multiplier: <span id="multiplier"></span></p>
<p>Final score: <span id="finalScore"></span></p>
<p>Current Highscore: <span id="highscore"></span></p>
</div>
<button class="main-menu_buttons gameOverBtn" id="restartGame">RESTART</button>
<button class="exitGame gameOverBtn main-menu_buttons">EXIT</button>
</div>

<!-- PAUSE MENU -->
<div class="pause--menu">
<h3>GAME PAUSED</h3>
<p id="continueGame" class="main-menu_buttons">CONTINUE</p>
<p id="settings" class="main-menu_buttons">SETTINGS</p>
<p class="exitGame main-menu_buttons">QUIT</p>
</div>

<!-- SETTINGS MENU(WINDOW) -->
<div class="settings-menu">
<h2>SETTINGS</h2>
<div class="settings-volumeControls">
<h3>VOLUME CONTROLS:</h3>
<!-- CONTROL BACKGROUND MUSIC VOLUME -->
<div class="settings-music">
<label for="musicVolume">Music volume: <span class="displayChange" id="bgMusic">20%</span></label>
<input type="range" id="musicVolume" min="0" max="100" value="20" step="1" name="bgMusic">
</div>
<!-- CONTROL SFX VOLUME -->
<div class="settings-sfx">
<label for="sfxVolume">SFX volume: <span class="displayChange" id="sfx">30%</span></label>
<input type="range" id="sfxVolume" min="0" max="100" value="30" step="1" name="sfx">
</div>
</div>
<!-- SHIP COMMANDS -->
<div class="ship-commands">
<h3>SHIP COMMANDS:</h3>
<div class="directionControl">
<!-- LEFT -->
<label for="shipLeft">Left: <span class="displayCommand" id="left">ArrowLeft</span></label>
<input type="text" id="shipLeft" name="left" maxlength="1" value="ArrowLeft" spellcheck="false">
</div>
<div class="directionControl">
<!-- RIGHT -->
<label for="shipRight">Right: <span class="displayCommand" id="right">ArrowRight</span></label>
<input type="text" id="shipRight" name="right" maxlength="1" value="ArrowRight" spellcheck="false">
</div>
<div class="directionControl">
<!-- UP -->
<label for="shipUp">Up: <span class="displayCommand" id="up">ArrowUp</span></label>
<input type="text" id="shipUp" name="up" maxlength="1" value="ArrowUp" spellcheck="false">
</div>
<div class="directionControl">
<!-- DOWN -->
<label for="shipDown">Down: <span class="displayCommand" id="down">ArrowDown</span></label>
<input type="text" id="shipDown" name="down" maxlength="1" value="ArrowDown" spellcheck="false">
</div>
<div class="directionControl">
<!-- SHOOTING -->
<label for="playerShooting">Shoot: <span class="displayCommand" id="shooting">Space</span></label>
<input type="text" id="playerShooting" name="shooting" maxlength="1" value="Space" spellcheck="false">
</div>
<div class="directionControl">
<!-- BOOSTER -->
<label for="booster">Boost: <span class="displayCommand" id="useBooster">Shift</span></label>
<input type="text" id="booster" name="useBooster" maxlength="1" value="Shift" spellcheck="false">
</div>
</div>
<span class="muteContainer">MUTE: <img class="soundControl" src="./assets/images/soundOn.png" title="Mute / Unmute all sounds." alt="" width="16px" height="16px"></span>
<button id="goBack">BACK</button>
</div>

<!-- GAME WINDOW -->
<canvas id="canvas" width="1280px" height="500px"></canvas>

<!-- NOTIFICATIONS -->
<div class="notificationsContainer">
<div class="notification"></div>
</div>
</div>

<!-- Script link -->
<script type="module" src="./static/js/main.js"></script>
</body>
</html>
Loading

0 comments on commit 576db28

Please sign in to comment.