summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/food.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/food.cc')
-rw-r--r--crawl-ref/source/food.cc18
1 files changed, 13 insertions, 5 deletions
diff --git a/crawl-ref/source/food.cc b/crawl-ref/source/food.cc
index da11ab593a..294eb27e45 100644
--- a/crawl-ref/source/food.cc
+++ b/crawl-ref/source/food.cc
@@ -590,6 +590,14 @@ bool eat_food(bool run_hook, int slot)
* *
**************************************************
*/
+static std::string how_hungry()
+{
+ if (you.hunger_state > HS_SATIATED)
+ return ("full");
+ else if (you.species == SP_VAMPIRE)
+ return ("thirsty");
+ return ("hungry");
+}
static bool food_change(bool suppress_message)
{
@@ -638,11 +646,11 @@ static bool food_change(bool suppress_message)
learned_something_new(TUT_YOU_HUNGRY);
break;
case HS_VERY_HUNGRY:
- mpr("You are feeling very hungry.", MSGCH_FOOD);
+ mprf(MSGCH_FOOD, "You are feeling very %s.", how_hungry().c_str());
learned_something_new(TUT_YOU_HUNGRY);
break;
case HS_HUNGRY:
- mpr("You are feeling hungry.", MSGCH_FOOD);
+ mprf(MSGCH_FOOD, "You are feeling %s.", how_hungry().c_str());
learned_something_new(TUT_YOU_HUNGRY);
break;
default:
@@ -677,7 +685,8 @@ static void describe_food_change(int food_increment)
else
msg += "less ";
- msg += ((you.hunger_state > HS_SATIATED) ? "full." : "hungry.");
+ msg += how_hungry().c_str();
+ msg += ".";
mpr(msg.c_str());
} // end describe_food_change()
@@ -959,8 +968,7 @@ static void eat_chunk( int chunk_effect, bool cannibal, int mon_intel )
(chunk_effect == CE_ROTTEN) ? "rotting " : "");
if (you.species == SP_GHOUL)
- heal_from_food(hp_amt, 0, !one_chance_in(4),
- one_chance_in(5));
+ heal_from_food(hp_amt, 0, !one_chance_in(4), one_chance_in(5));
do_eat = true;
}