Mario Bros. in SDL2
For my Games Engine Creation Module, we were tasked to make the 1983 Mario Bros. to the best of our ability with the tools at hand, this project will be ongoing even after the end of the term, this is because I would like to develop it even further and create more interesting levels to develop my skills with C++. This project has helped me put into practice concepts such as polymorphism, inheritance, abstraction and encapsulation. All of the previously mentioned were vital to not only having a functioning, efficient game, but also clean, readable and adaptable code that can be used in the future to further develop the project without unnecessary errors.

Pow Block Mechanic:
The PowBlock uses a basic timer and some screenshake to give it the visual effect, and just some take damage functions the the enemies on the screen, the powblock is read in from a map as a different integer compared to the normal tiles. Where the tiles have normal collision that allows the player to stand on them and bump their head on them, the pow block allows for the players to get underneath it and activate it when they jump. Having this map that has the functionality of just having to change the integers on it to alter the level is very useful and will be utilised to create new levels with different layout.
Having the powblock available in the world gives the player an option to traverse the level in a different way, having that extra variable that the player can think about and decide what to do with adds a layer of depth to the gameplay and also provides for a good foundation to build other power-ups and abilities in the future.
Koopas:
Koopas are quite simple on the surface but can be developed a lot more, at this point in time there is only the green koopas that walk in a direction, fall of the ledge and turn around when they have to. Utilising some protective programming to stop the koopas from falling of the map, or turning infinitely, I created a timer that starts when the koopa turns once, and only when that timer ends can the koopa turn again. In the future red koopas will be added that move slightly faster and do not fall of the edge of their assigned platform, they will get to their assigned platform with the most efficient route and then patrol it causing a bit more of a danger towards the player. Other variations of enemies will be added in the future such as hammer throwers, flies, traps and other obstacles that the players will have to overcome.