From 04c60898820dcdbf47ab1adca6bdb7a2fd3cd2b0 Mon Sep 17 00:00:00 2001 From: dolorous Date: Sun, 22 Feb 2009 21:47:21 +0000 Subject: Go back to checking for wearing the amulet of the gourmand when necessary, as it differentiates from the gourmand mutation properly. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@9166 c06c8d41-db1a-0410-9941-cceddc491573 --- crawl-ref/source/food.cc | 8 +++++--- crawl-ref/source/player.cc | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/crawl-ref/source/food.cc b/crawl-ref/source/food.cc index 508bb6a6d7..64f46dc71e 100644 --- a/crawl-ref/source/food.cc +++ b/crawl-ref/source/food.cc @@ -1567,7 +1567,7 @@ int prompt_eat_chunks() const bool easy_eat = Options.easy_eat_chunks && !you.is_undead; const bool easy_contam = easy_eat - && (Options.easy_eat_gourmand && you.duration[DUR_GOURMAND] > 0 + && (Options.easy_eat_gourmand && wearing_amulet(AMU_THE_GOURMAND) || Options.easy_eat_contaminated); if (found_valid) @@ -1712,7 +1712,8 @@ static int _chunk_nutrition(bool likes_chunks) : apply_herbivore_nutrition_effects(nutrition)); } - const int gourmand = you.duration[DUR_GOURMAND]; + const int gourmand = + wearing_amulet(AMU_THE_GOURMAND) ? you.duration[DUR_GOURMAND] : 0; const int effective_nutrition = _apply_gourmand_nutrition_effects(nutrition, gourmand); @@ -2754,7 +2755,8 @@ static corpse_effect_type _determine_chunk_effect(corpse_effect_type chunktype, // contaminated meat as though it were "clean" meat - level 3 // saprovores get rotting meat effect from clean chunks, since they // love rotting meat. - if (x_chance_in_y(you.duration[DUR_GOURMAND], GOURMAND_MAX)) + if (wearing_amulet(AMU_THE_GOURMAND) + && x_chance_in_y(you.duration[DUR_GOURMAND], GOURMAND_MAX)) { if (player_mutation_level(MUT_SAPROVOROUS) == 3) { diff --git a/crawl-ref/source/player.cc b/crawl-ref/source/player.cc index dcb87ca3d0..d9d84c9d10 100644 --- a/crawl-ref/source/player.cc +++ b/crawl-ref/source/player.cc @@ -1296,7 +1296,7 @@ bool player_likes_chunks(bool permanently) { return (player_mutation_level(MUT_GOURMAND) > 0 || player_mutation_level(MUT_CARNIVOROUS) > 0 - || (!permanently && you.duration[DUR_GOURMAND] > 0)); + || (!permanently && wearing_amulet(AMU_THE_GOURMAND))); } // If temp is set to false, temporary sources or resistance won't be counted. -- cgit v1.2.3-54-g00ecf