A better menu system
In this section we will look at the changes that need to be made to move from basic text support to a slightly more advanced user interface system that we will need for the game, as well as the basic setup so we can focus on networking later on. If you want to jump to the networking part of this chapter, feel free to skip this section. Here we'll look at one kind of implementation that you could use.
Right now we just have a way to display text using some
TextBlock
objects that we can add to the renderer; however, even just switching between the score display and the game over message requires a bit of coding work to remove and add the text blocks one-by-one, as well as store their state individually. To get around this we're going to create a menu object that can store the state of the menu and allow us to easily construct and change menus. For the purposes of the sample we only need text functionality; however, this can also let you display textures for the different...