CleverRaven/Cataclysm-DDA — pull request #7325 by Heruedhel (2014-04-21 06:12:22+00:00)
Title: Removes all data and functionality pertaining to displaying messages out...

Removes all data and functionality pertaining to displaying messages out of the "game" class and into a new dedicated class.
Removes "turn" variable from game class and into "calendar::turn"
Removes a few signed/unsigned mismatch warnings

Files Changed:
Too many to list

Files added:
messages.cpp
messages.h

Possible bugs:
The changes touched a lot of files and I couldn't possibly test every single case in which a message was entered or displayed, or every line of

code that used game->turn.

Notes:
These changes do nothing in isolation (except introduce potential bugs). However, they are part of a bigger project to factor out a lot of data

and functionality from the game class as it currently serves too many unrelated roles forcing lots of classes to depend on it thus creating

artificial circular dependencies. By splitting it into smaller parts, managing dependencies will become much more approachable, easing any

refactoring efforts.

Here's a list of some modules I would like to eventually extract out of "game" class:
1- GUI elements (like the messages system)
2- World state elements (like "turn")
3- creature (i.e. player, npc, monster) actions like firing and doing damage
4- other stuff