Code based on all things I have learned from this course: https://www.udemy.com/course/learn-python-by-making-games/
Game features:
- 4 different weapons (pistol, rifle, shotgun and sword)
- usable ammo
- pick-ups like ammo, health, exp
- experience and skills/weapon upgrades system
- unlimited waves of enemies that will scale with time
- player can shoot in 4 direction (up, down, left and right) based on mouse position
- move with W,S,A,D and shoot with LMB. To unpause the game when the level up pops up press SPACE or ESC
- easy access to expand the arsenal, skills and stats of the player
- enemies can carry different weapon
- easy game balance
- will probably work on any map created in Tiled