summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/abl-show.cc
diff options
context:
space:
mode:
Diffstat (limited to 'crawl-ref/source/abl-show.cc')
-rw-r--r--crawl-ref/source/abl-show.cc21
1 files changed, 19 insertions, 2 deletions
diff --git a/crawl-ref/source/abl-show.cc b/crawl-ref/source/abl-show.cc
index 50bebc1b71..c867cc4a36 100644
--- a/crawl-ref/source/abl-show.cc
+++ b/crawl-ref/source/abl-show.cc
@@ -1952,33 +1952,50 @@ static bool _do_ability(const ability_def& abil)
case ABIL_FEDHAS_SUNLIGHT:
if (!sunlight())
+ {
+ canned_msg(MSG_NOTHING_HAPPENS);
return (false);
+ }
exercise(SK_INVOCATIONS, 2 + random2(3));
break;
case ABIL_FEDHAS_PLANT_RING:
if (!plant_ring_from_fruit())
+ {
+ canned_msg(MSG_NOTHING_HAPPENS);
return (false);
+ }
exercise(SK_INVOCATIONS, 2 + random2(3));
break;
case ABIL_FEDHAS_RAIN:
- rain(you.pos());
+ if (!rain(you.pos()))
+ {
+ canned_msg(MSG_NOTHING_HAPPENS);
+ return (false);
+ }
exercise(SK_INVOCATIONS, 2 + random2(3));
break;
case ABIL_FEDHAS_SPAWN_SPORES:
- corpse_spores();
+ if (!corpse_spores())
+ {
+ canned_msg(MSG_NOTHING_HAPPENS);
+ return (false);
+ }
exercise(SK_INVOCATIONS, 2 + random2(3));
break;
case ABIL_FEDHAS_EVOLUTION:
if (!evolve_flora())
+ {
+ canned_msg(MSG_NOTHING_HAPPENS);
return (false);
+ }
exercise(SK_INVOCATIONS, 2 + random2(3));
break;