Skip to content

🗣️🔥🔥"99% of gamblers quit right before they hit it big", "When you gamble you can only lose up to 100% of what you have but you could win many times over the amount you invest", "People don't understand, i am an investor, i invest at the casino, and i hit it big", "Unsuccessful people work, Successful people on the other hand? They gamble" 🤑🎰

Notifications You must be signed in to change notification settings

ModernityRejecter/Proiect-POO

Repository files navigation

ETERNAL DOOM (ENG)

A frenetic top-down shooter where you take on the slayer's unending fight against the forces of hell. Survive as long as possible by fending off endless waves of demons from the depths of hell. You'll be provided some of the most lethal and iconic weapons from the franchise to aid in your crusade against the unique hellborn monstrosities you will face, each and every single one of them with different abilities and archetypes.

RESOURCES USED IN THE PROJECT


1. Textures

Note: Although most of the resources are not originally mine (almost all), I made small modifications (recoloring, resizing, etc.) to better integrate them. The image chaingun_proj2.png is 100% my own creation.


2. Backgrounds


3. Sounds

Note: In some cases, I renamed the audio files to make them easier to use in the project.


4. Font


5. Music


6. Documentation Used

Note: I've listed only these two sources, but in reality, I've used many others such as Stack Overflow posts to solve bugs, errors, and other issues. If I had mentioned absolutely everything, this README would have become ridiculously long and it's already big enough.


7. Technologies Used

  • SFML (Zlib)
    • OpenAL (LGPL): due to its license, it must be distributed as a shared library





HOW THE GAME WORKS


  • Player:

    • Starts with full health, full armor, and maximum ammo for each weapon.
    • Cannot leave the game window.
    • Must survive as long as possible and eliminate as many enemies as possible.
  • Enemies:

    • Have unique abilities depending on their type.
    • Upon death, there is a chance they drop pickups.
    • When killed, the player earns points based on the enemy type.
    • They will always attempt to kill the player.
  • Pickups:

    • Spawn when an enemy dies.
    • An enemy can drop between 0 and 3 pickups.
    • There are 3 types, each restoring either health, armor, or ammo.
  • End of the game:

    • When the player's health reaches 0, the game over screen appears with the final score and an option to exit the game.





CONTROLS


🕹️ Menus 🕹️

  • Main menu

    • ENTER to start the game
  • Pause menu

    • P to pause or unpause the game
  • Game over screen

    • ENTER to restart the game
    • ESC to exit the game

🎮 Movement 🎮

  • W to move up
  • D to move right
  • S to move down
  • A to move left

🔫 Weapons 🔫

  • 1 to equip Plasma Rifle
  • 2 to equip Rocket Launcher
  • 3 to equip Chaingun
  • 4 to equip BFG9000

🖱️ Shooting 🖱️

  • LEFT MOUSE BUTTON to shoot

Note: The weapon fires towards the cursor’s position


🎵 Music Control 🎵

  • M to toggle music on/off
  • - (minus) to lower the music volume
  • = (equal) to raise the music volume





ETERNAL DOOM (RO)

Un shooter frenetic din perspectivă top-down, în care preiei lupta nesfârșită a Slayerului împotriva forțelor iadului. Supraviețuiește cât mai mult posibil, respingând valuri nesfârșite de demoni veniți din adâncurile iadului. Vei fi echipat cu unele dintre cele mai letale și iconice arme din franciză, care te vor ajuta în cruciada ta împotriva monstruozităților infernale unice pe care le vei înfrunta, fiecare dintre ele având abilități și arhetipuri diferite.

RESURSE UTILIZATE ÎN PROIECT


1. Texturi

Notă: Deși majoritatea resurselor nu îmi aparțin (aproape toate), am adus mici modificări (recolorări, redimensionări etc.) pentru adaptare. Imaginea chaingun_proj2.png este 100% creația mea.


2. Backgrounduri


3. Sunete

Notă: Am redenumit fișierele audio în unele cazuri pentru o integrare mai ușoară în proiect.


4. Font


5. Muzică


6. Documentație folosită

Notă: Am menționat doar aceste două resurse, însă în realitate am folosit și altele, precum postări de pe Stack Overflow pentru a rezolva probleme, erori și diverse situații. Dacă ar fi fost să menționez absolut tot, mi-ar fi ieșit un README incredibil de lung și deja e destul de mare.


7. Tehnologii folosite

  • SFML (Zlib)
    • OpenAL (LGPL): din cauza licenței, trebuie distribuită ca shared library





CUM FUNCȚIONEAZĂ JOCUL


  • Jucătorul:

    • Se naște cu viața și armura la maximum și cu muniția maximă pentru fiecare armă.
    • Nu poate ieși din fereastră.
    • Trebuie să supraviețuiască cât mai mult timp și să elimine cât mai mulți inamici.
  • Inamicii:

    • Au abilități unice, specifice fiecărui tip de inamic.
    • La moarte, există o șansă să genereze pickupuri.
    • La moarte, în funcție de tipul de inamic, jucătorul primește un anumit punctaj.
    • Vor încerca întotdeauna să omoare jucătorul.
  • Pickupuri:

    • Se generează la moartea unui inamic.
    • Un inamic poate genera între 0 și 3 pickupuri.
    • Există 3 tipuri, fiecare regenerând fie viață, fie armură, fie muniție.
  • Sfârșitul jocului:

    • Când viața jucătorului scade la 0, se afișează meniul de sfârșit, cu punctajul obținut și opțiunea de a închide jocul.





COMENZI


🕹️ Meniuri 🕹️

  • Meniu principal

    • ENTER pentru a începe jocul
  • Meniu pauză

    • P pentru a pune în pauză jocul sau pentru a ieși din pauză
  • Meniu de sfârșit

    • ENTER pentru a reîncepe jocul
    • ESC pentru a opri jocul

🎮 Deplasare 🎮

  • W pentru a te mișca în sus
  • D pentru a te mișca spre dreapta
  • S pentru a te mișca în jos
  • A pentru a te mișca spre stânga

🔫 Arsenal 🔫

  • 1 pentru a echipa Plasma Rifle
  • 2 pentru a echipa Rocket Launcher
  • 3 pentru a echipa Chaingun
  • 4 pentru a echipa BFG9000

🖱️ Tragere 🖱️

  • MOUSE STÂNG pentru a trage

Notă: arma trage în punctul în care este situat cursorul


🎵 Controlul muzicii 🎵

  • M pentru a activa/dezactiva muzica
  • - (minus) pentru a reduce volumul muzicii
  • = (egal) pentru a crește volumul muzicii

About

🗣️🔥🔥"99% of gamblers quit right before they hit it big", "When you gamble you can only lose up to 100% of what you have but you could win many times over the amount you invest", "People don't understand, i am an investor, i invest at the casino, and i hit it big", "Unsuccessful people work, Successful people on the other hand? They gamble" 🤑🎰

Resources

Stars

Watchers

Forks

Packages

No packages published