diff options
-rw-r--r-- | crawl-ref/source/effects.cc | 6 | ||||
-rw-r--r-- | crawl-ref/source/monstuff.cc | 4 | ||||
-rw-r--r-- | crawl-ref/source/spl-mis.cc | 4 |
3 files changed, 8 insertions, 6 deletions
diff --git a/crawl-ref/source/effects.cc b/crawl-ref/source/effects.cc index 247e35190c..b31ccacc2f 100644 --- a/crawl-ref/source/effects.cc +++ b/crawl-ref/source/effects.cc @@ -569,10 +569,12 @@ bool forget_spell(void) if (slot == -1) // should never happen though return (false); - del_spell_from_memory_by_slot( slot ); + mprf("Your knowledge of %s becomes hazy all of a sudden, and you forget " + "the spell!", spell_title(you.spells[slot])); + del_spell_from_memory_by_slot( slot ); return (true); -} // end forget_spell() +} // use player::decrease_stats() instead iff: // (a) player_sust_abil() should not factor in; and diff --git a/crawl-ref/source/monstuff.cc b/crawl-ref/source/monstuff.cc index 4eebb23670..40909f4101 100644 --- a/crawl-ref/source/monstuff.cc +++ b/crawl-ref/source/monstuff.cc @@ -1200,9 +1200,10 @@ int monster_die(monsters *monster, killer_type killer, } if (!wizard && !mons_reset && !submerged) + { place_cloud(CLOUD_COLD, monster->pos(), 2 + random2(4), monster->kill_alignment()); - + } if (killer == KILL_RESET) killer = KILL_DISMISSED; } @@ -1595,7 +1596,6 @@ int monster_die(monsters *monster, killer_type killer, // Monster doesn't die, just goes back to wherever it came from // This must only be called by monsters running out of time (or // abjuration), because it uses the beam variables! Or does it??? - if (!wizard) // KILL_RESET monsters no longer lose their whole inventory, only // items they were generated with. diff --git a/crawl-ref/source/spl-mis.cc b/crawl-ref/source/spl-mis.cc index d4bada8746..76d2dd8850 100644 --- a/crawl-ref/source/spl-mis.cc +++ b/crawl-ref/source/spl-mis.cc @@ -1462,8 +1462,8 @@ void MiscastEffect::_divination_you(int severity) switch (random2(3)) { case 0: - mpr(forget_spell() ? "You have forgotten a spell!" - : "You get a splitting headache."); + if (!forget_spell()) + mpr("You get a splitting headache."); break; case 1: mpr("You feel completely lost."); |