CleverRaven/Cataclysm-DDA — pull request #9905 by Wuzzy2 (2014-11-08 13:57:12+00:00)
Title: Fix some faulty message types

This PR corrects some incorrect message types (`game_message_type`), and *only* this, nothing more. I consider this to be a bugfix. After all, it was me who introduced the message types into C:DDA. :)

* Taking puffs from a cigarette should be `m_neutral`, not `m_info`, because this is an event and not really positive or negative or important.
* Messages like “Your [body part] will be frotnipped in [some time units]” should obviously be `m_warning`, not `m_bad`. `m_bad` would be the case when the body part has been *actually* been frotnipped.
* Skimming a book gives a lot of informational messages, so most of them is `m_info` now.
* Weather Reader CBM provides info messages as well, so changed to `m_info`.

---

Unrelated to this PR, something for future developers: Here are some notes about the message type as they have been intended to be used (so mistakes like these don’t happen again):

`m_neutral`, `m_good` `m_bad` and `m_mixed` should only be used for actual in-game events. I.e. taking a puff from a cigarette (`m_neutral`), mutating (`m_good`, `m_bad` or `m_mixed`, depending on the mutation type), being hit by an enemy (`m_bad`), getting healed (`m_good`). Use `m_neutral` for non-important events or when **something** happened, but it has little or no actual effect (examples: hitting an enemy but dealing no damage, taking a puff from a).

`m_warning` should be used when you want to warn the player about a possible `m_bad` event in the future which *may* happen. `m_warning` itself is *not* an event. I.e. “You see a mi-go approaching.”, but *not*, “The monster has bitten you.”.

`m_info` should only be used for non-events, when you explain something to the player or provide data to the player. I.e. the player examines a tile, reads radiation data from some device, the game informs the player about some task that is impossible, etc. `m_info` is *never* an event.
In the case you have a message which applies to multiple categories, it is probably better to seperate the messages and applying message types independently. But if it combines `m_good` and `m_bad`, use `m_mixed` (Example: “You repair your backpack but waste lots of thread.” [repairing a backpack is good, but wasting a lot of thread is bad.). `m_mixed` is used to do both `m_good` and `m_bad` in a single message. It is the same as if you would have posted 2 messages, the one being `m_good` and the other one being `m_bad`, but shorter. I have added this for convenience.

You may also refer to `game_message_type`, as commented in output.h (https://github.com/CleverRaven/Cataclysm-DDA/blob/master/src/output.h).