summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--crawl-ref/source/fight.cc20
-rw-r--r--crawl-ref/source/ouch.cc8
2 files changed, 20 insertions, 8 deletions
diff --git a/crawl-ref/source/fight.cc b/crawl-ref/source/fight.cc
index 9bcc3a5256..1b7e53e9fd 100644
--- a/crawl-ref/source/fight.cc
+++ b/crawl-ref/source/fight.cc
@@ -5185,17 +5185,29 @@ void melee_attack::mons_apply_attack_flavour(const mon_attack_def &attk)
break;
case AF_STEAL_FOOD:
+ {
// Monsters don't carry food.
if (defender->atype() != ACT_PLAYER)
break;
- if (expose_player_to_element(BEAM_STEAL_FOOD, 10) && needs_message)
+ const bool stolen = expose_player_to_element(BEAM_STEAL_FOOD, 10);
+ const bool ground = expose_items_to_element(BEAM_STEAL_FOOD, you.pos(),
+ 10);
+ if (needs_message)
{
- mprf("%s steals some of your food!",
- atk_name(DESC_CAP_THE).c_str());
+ if (stolen)
+ {
+ mprf("%s steals some of your food!",
+ atk_name(DESC_CAP_THE).c_str());
+ }
+ else if (ground)
+ {
+ mprf("%s steals some of the food from beneath you!",
+ atk_name(DESC_CAP_THE).c_str());
+ }
}
break;
-
+ }
case AF_CRUSH:
mprf("%s %s being crushed%s",
def_name(DESC_CAP_THE).c_str(),
diff --git a/crawl-ref/source/ouch.cc b/crawl-ref/source/ouch.cc
index 2813101bbe..fb3d9d181c 100644
--- a/crawl-ref/source/ouch.cc
+++ b/crawl-ref/source/ouch.cc
@@ -472,15 +472,15 @@ static bool _expose_invent_to_element(beam_type flavour, int strength)
// These stack with conservation; they're supposed to be good.
if (target_class == OBJ_SCROLLS
- && you.mutation[MUT_CONSERVE_SCROLLS]
- && !one_chance_in(10))
+ && you.mutation[MUT_CONSERVE_SCROLLS]
+ && !one_chance_in(10))
{
continue;
}
if (target_class == OBJ_POTIONS
- && you.mutation[MUT_CONSERVE_POTIONS]
- && !one_chance_in(10))
+ && you.mutation[MUT_CONSERVE_POTIONS]
+ && !one_chance_in(10))
{
continue;
}