Skip to content

AltafShk/Beyond-The-Airspace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project Name: Beyond the Airspace

Group Members:

  1. Nimrah Jawed – Team Lead
  2. Altaf Shaikh
  3. Syed Muhammad Fasih Hussain
  4. Syed Muhammad Ammar Alam
  5. Jazib Bhatti

Project Description: This is a game for flight enthusiasts all over the world. The purpose of the game is to dodge enemy planes coming through the way. They could be destroyed by the bullets of the plane. This will add to the total score of the player. There will also be obstacles in path of the flying object i.e. the enemy planes. Also there are coins, which if you collect, will give a 100 increase in the scores. There are power ups available throughout, which upon collecting will increase the health of the fighter plane. If the players crashed into an enemy plane, it dies. There will be a record of high scores that will be managed after each time a player plays the game. This is a battle to GO BEYOND THE ENEMY AIRSPACE!

Game Controls: • Press ‘S’ to move down, ‘W’ to move up , ‘A’ to move left and ‘D’ to move right • Press the ‘Space Bar’ to fire bullets • Kill all the enemies on your journey. Each of the enemy plane dies with 4 bullets • If you crash into an enemy plane, you lose 100 of your health • Press ‘P’ to pause game • Collect coins to increase your score • Collect powers up’s on your way to regenerate your health • Press and hold ‘B’ to go back to the main menu

Compilation Instructions: These libraries must be installed for the game to compile. • SDL ttf (true type font) library • SDL image Once its compiled, Press ctrl+Shift+B Acknowledgement: -Majority of the sprites used were taken from mobilegamegraphics.com -The initial code including the ECS management system was inspired by “Let’s Make Games” YouTube Channel

  • Discord helped us collaborate effectively
  • VS Code Live Share also helped us to increase efficiency

UML Link: https://www.lucidchart.com/invitations/accept/499327f3-4aaf-47bb-a645-ca83d4f599cd

YouTube Link: https://www.youtube.com/channel/UC6CEAZ5x0k-FgAvWE3JWb1g

Requirements:

  1. Polymorphism is implemented in GameObject.cpp and ECS. It is also used in Projectiles.cpp, which has functions used by its inherited members.
  2. Design Patterns we have used:

• Singleton : Ensures only one object from each class is made • Factory Pattern : Helps create objects from many different classes • Builder Pattern: The Entity Component System helps set up the entities and group the objects from a single class • State Pattern: changes an objects behavior when a state changes

  1. Menu is implemented which starts the game and renders instructions screen
  2. Operator Overloading is used in Vector2d.cpp to implement position and velocity vectors
  3. File I/O works separately but incorporated the code was not working properly
  4. All the graphics and controls work smoothly
  5. Code and UML match

Contribution: Each member of the team has contributed equally. The classes were not exactly divided into each person, instead each class was mostly made together using Discord and Live Share. Design Patterns we have used: • Singleton : Ensures only one object from each class is made • Factory Pattern : Helps create objects from many different classes • Builder Pattern: The Entity Component System helps set up the entities and group the objects from a single class • State Pattern: changes an objects behavior when a state changes

Time it took to complete the Project: 105 hours

Note: A team member of our group was successfully able to create a File I/O system for high scores independently. However the code could not be effectively integrated into our main project and it was giving us issues.

Contribution: Each member of the team has contributed equally. The classes were not exactly divided into each person, instead each class was mostly made together using Discord and Live Share. Design Patterns we have used: • Singleton : Ensures only one object from each class is made • Factory Pattern : Helps create objects from many different classes • Builder Pattern: The Entity Component System helps set up the entities and group the objects from a single class • State Pattern: changes an objects behavior when a state changes

Time it took to complete the Project: 105 hours

Note: A team member of our group was successfully able to create a File I/O system for high scores independently. However the code could not be effectively integrated into our main project and it was giving us issues.

About

An Air Fighting Game

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors