Assessed Exercise for my Advanced Programming module.
The task was to make a cellular automaton with the usage of threads. The program should print the 2D grid representing the habitat of the two creatures Creature1 and Creature2 onto the command line. Both creatures have different fitness values and maximum lifespans. At the end of its lifespan, a creature can possibly reproduces in nine fields which are its surrounding fields and its own. If inhabited by a creature of another species, the program calculates which one survives based on the creature's fitness values. The progam allows the user to choose the option to let the possible fields of reproduction wrap around the edges of the world.