diff options
author | Stefan O'Rear <stefanor@cox.net> | 2009-11-13 14:40:02 -0800 |
---|---|---|
committer | Stefan O'Rear <stefanor@cox.net> | 2009-11-13 14:40:02 -0800 |
commit | d5e801f43d1a82f62e70d74bb0b6cd98b214f72d (patch) | |
tree | 292dd3b134feecb7a58b8d7b289d8eaf07649e34 /crawl-ref/source/ouch.cc | |
parent | 9792c928e85a9bdee9627fe4d6fb0dd64366ce36 (diff) | |
download | crawl-ref-d5e801f43d1a82f62e70d74bb0b6cd98b214f72d.tar.gz crawl-ref-d5e801f43d1a82f62e70d74bb0b6cd98b214f72d.zip |
Fix passive freeze proccing on torment
Diffstat (limited to 'crawl-ref/source/ouch.cc')
-rw-r--r-- | crawl-ref/source/ouch.cc | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/crawl-ref/source/ouch.cc b/crawl-ref/source/ouch.cc index 34f4637bf8..a0d001fd3c 100644 --- a/crawl-ref/source/ouch.cc +++ b/crawl-ref/source/ouch.cc @@ -866,9 +866,12 @@ static void _yred_mirrors_injury(int dam, int death_source) } } -static void _passive_freeze(kill_method_type death_type, int death_source) +static void _passive_freeze(kill_method_type death_type, const char *aux, + int death_source) { - if (you.mutation[MUT_PASSIVE_FREEZE] && death_type == KILLED_BY_MONSTER) + const char *ptr = strstr(aux, "torment"); + if (you.mutation[MUT_PASSIVE_FREEZE] && death_type == KILLED_BY_MONSTER + && ptr == NULL) { if (invalid_monster_index(death_source)) return; @@ -1084,7 +1087,7 @@ void ouch(int dam, int death_source, kill_method_type death_type, Note(NOTE_HP_CHANGE, you.hp, you.hp_max, damage_desc.c_str()) ); _yred_mirrors_injury(dam, death_source); - _passive_freeze(death_type, death_source); + _passive_freeze(death_type, aux, death_source); _maybe_spawn_jellies(dam, aux, death_type, death_source); return; |