Welcome to "The Last of Us: Legacy," a console-based game developed as part of the Programming II course at the German University in Cairo. This game incorporates advanced object-oriented programming concepts and game engine logic to provide an engaging gameplay experience.
The below videos shows the gameplay of both winning and losing scenarios
"The Last of Us: Legacy" is a console game that challenges players to survive in a post-apocalyptic world filled with zombies. Players control heroes with unique abilities, navigate through a dynamically changing map, and use resources wisely to combat enemies and complete objectives.
- Object-Oriented Design: The game is structured using OOP principles, making it modular and easy to extend.
- Dynamic Game Engine: A fully functional game engine handles game logic, including player actions, AI behavior, and game state management.
- Multiple Hero Classes: Players can choose from different hero types, each with unique abilities and attributes.
- Collectibles and Resources: Heroes can collect and use various items like vaccines and supplies to aid their survival.
- Exception Handling: Robust handling of game rules and invalid actions through custom exceptions.
- The game begins by setting up the map and placing heroes, zombies, and collectibles.
- Each hero starts with a set number of action points and can perform various actions such as moving, attacking, and using special abilities.
- Move: Heroes can move in four directions (UP, DOWN, LEFT, RIGHT).
- Attack: Heroes can attack adjacent zombies, costing one action point.
- Use Special Ability: Each hero type has a unique special ability that can be used under specific conditions.
- Collect Items: Heroes can pick up and use collectibles such as vaccines and supplies.
- Win Condition: The game is won when all zombies are cured by vaccines.
- Game Over: When All heroes have been overwhelmed and defeated by zombies.