This uses the numpy and colorama library. Dependencies are only numpy and colorama
. Its a basic version of the Super Mario game and might have some minor glitches. There is a great looking Boss Enemy and though not a great looking game you might get addicted.
The application demonstrates inheritance, encapsulation, polymorphism as well as overloading.
- Each "not alive element" is a derived class of the
Element
class. - Mario and Enemy is a derived class of the
Person
class and Boss Enemy is derived fromEnemy
class. - The
board
has its own class and and captures all objects placed on it. - The
scoreboard
has its own class and and captures the score and lives.
- First, install all the requirements:
pip3 install -r requirements.txt
- Running the program:
python3 main.py
- Controls follow traditional classic titles
(W,A,D)
- To shoot bullet
s
(bullets can be shot only if Boss Enemy is on screen) - To quit, press
q
Sound
when mario is killed or kills enemiesColored
elements, mario and enemiesBoss Enemy
: Needs to be shot 10 times (can't kill mario though)Coins
give 5 points- Killing enemy gives 10 points
- Killing boss enemy gives 100 points
Time based points
- Mario has 3 lives
- Score displayed on the screen during duration of the game
- Message diplayed at end of game
Game size adjusts
according to terminal size (it won't adjust once the game is run)Platforms
,Lakes
andClouds
arerandomly generated
.- Follows
OOP concepts
- All files follow
PEP8