Summary
In this chapter, we learned some new C++ concepts. First, Inheritance allows us to extend a class and gain all of its functionality. We also learned that we can declare variables as protected, and that will give the child class access to them, but they will still be encapsulated (hidden) from all other code. We also used pure virtual functions, which make a class abstract, meaning that the class cannot be instantiated and must therefore be inherited/extended from. We were also introduced to the concept of polymorphism, but will need to wait until the following chapter to use it in our game.
Next up, we will add some major functionality to the game. By the end of the following chapter, Thomas and Bob will be walking, jumping, and falling. They will even be able to jump on each other's heads, as well as explore some level designs that are loaded from a text file.