Skip to content

iioan/World_of_Tanks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

World of Tanks

Ioan Teodorescu - 333CB

This is a simple yet captivating game where you control a tank on a horizontal plane filled with enemy tanks and buildings. The objective of the game is to destroy as many enemy tanks as possible within a limited time interval (2 minutes). You earn points for each enemy tank destroyed. As the tank's HP decreases, it becomes increasingly deformed and darker in appearance due to the damage inflicted upon it. The game is implemented in C++, using OpenGL interface for rendering 2D and 3D objects.

When the game starts, a random number of enemies are generated. For convenience, at the top, the remaining time and the number of enemies still alive are displayed. gameplay

Gameplay Mechanics

  • Controls: Use arrow keys or WASD to move the tank and rotate its turret.
  • Objective: Destroy as many enemy tanks as possible before time runs out.
  • Scoring: Earn points for each enemy tank destroyed.
  • Projectile: Fire projectiles from the tank's cannon to destroy enemy tanks and buildings.
  • Tank Health: Enemy tanks can withstand a minimum of 4 hits before being destroyed.
  • Damage Visuals: Enemy tanks become increasingly damaged, visually represented by deformations and darkening, as they sustain hits.
  • End of Game: The game ends when either the time limit is reached or the player's tank is destroyed.

Advanced Features

  • Turret Rotation: Rotate the turret to aim at enemies (advanced requirement). arunca-tureta
  • Enemy Tank Movement: Enemy tanks move randomly (advanced requirement). atac
  • Enemy Tank Attack: Enemy tanks rotate their turrets towards the player to shoot projectiles. inamicu-urmareste
  • Phong Light Reflection System: Implemented advanced lighting effects using the Phong reflection model to simulate realistic light interaction on tank surfaces.

End of Game

  • Time Limit Reached: If the time limit is reached, the game ends, displaying the final score. won
  • Player Tank Destroyed: If the player's tank is destroyed, a corresponding message is displayed. lost

To run the project, open the gtx-framework-master folder and follow the rules!