diff options
author | Sage <SageBasilMint@gmail.com> | 2014-04-23 03:45:58 +0000 |
---|---|---|
committer | Sage <SageBasilMint@gmail.com> | 2014-04-23 04:08:58 +0000 |
commit | 2c29f1d7c6e17e2024f43e7ad02b686359303d29 (patch) | |
tree | 255df97d2dff63f28f189e428a4d407c0eddcb7c /crawl-ref/source/spl-damage.cc | |
parent | 577fbdc5c3c99cbe3612274f177b6987429688f8 (diff) | |
download | crawl-ref-2c29f1d7c6e17e2024f43e7ad02b686359303d29.tar.gz crawl-ref-2c29f1d7c6e17e2024f43e7ad02b686359303d29.zip |
Change Ozocubu's Refrigeration.
Instead of shattering potions, player-cast refrigeration prevents
potion use for 7-15 turns, with duration of repeated casts capped to
15 turns. Monster refrigeration is unaffected.
Diffstat (limited to 'crawl-ref/source/spl-damage.cc')
-rw-r--r-- | crawl-ref/source/spl-damage.cc | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/crawl-ref/source/spl-damage.cc b/crawl-ref/source/spl-damage.cc index 3359b1c4b9..fb0740b3ac 100644 --- a/crawl-ref/source/spl-damage.cc +++ b/crawl-ref/source/spl-damage.cc @@ -466,16 +466,21 @@ static int _refrigerate_player(actor* agent, int pow, int avg, { mpr("You feel very cold."); if (agent && !agent->is_player()) + { ouch(hurted, agent->as_monster()->mindex(), KILLED_BY_BEAM, "by Ozocubu's Refrigeration", true, agent->as_monster()->name(DESC_A).c_str()); + expose_player_to_element(BEAM_COLD, 5, added_effects); + + // Note: this used to be 12!... and it was also applied even if + // the player didn't take damage from the cold, so we're being + // a lot nicer now. -- bwr + } else + { ouch(hurted, NON_MONSTER, KILLED_BY_FREEZING); - - // Note: this used to be 12!... and it was also applied even if - // the player didn't take damage from the cold, so we're being - // a lot nicer now. -- bwr - expose_player_to_element(BEAM_COLD, 5, added_effects); + you.increase_duration(DUR_NO_POTIONS, 7 + random2(9), 15); + } } return hurted; |