Requirements
When we develop applications, we usually have a set of requirements that we need to develop towards. With that in mind, let's define the requirements for the animal types that we will be creating in this chapter:
We will have three categories of animal: sea, land, and air.
Animals may be members of multiple categories. For example, an alligator can be a member of both the land and sea categories.
Animals may be able to attack and/or move when they are on a tile that matches the categories they are in.
Animals will start off with a certain amount of hit points, and if those hit points reach 0 or less, then they will be considered dead.
For our example here, we will define two animals (
Lion
andAlligator
), but we know that the number of animal types will grow as we develop the game.
We will start off by looking at how we would design our animal types with an Object-Oriented approach.