diff options
Diffstat (limited to 'crawl-ref/source/monstuff.cc')
-rw-r--r-- | crawl-ref/source/monstuff.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/crawl-ref/source/monstuff.cc b/crawl-ref/source/monstuff.cc index 98ccfbf0f0..f46c35fed0 100644 --- a/crawl-ref/source/monstuff.cc +++ b/crawl-ref/source/monstuff.cc @@ -1166,6 +1166,13 @@ bool monster_polymorph( monsters *monster, monster_type targetc, bool player_messaged = simple_monster_message(monster, str_polymon.c_str() ); + // Even if the monster transforms from one type that can behold the + // player into a different type which can also behold the player, + // the polymoprh disrupts the beholding process. Do this before + // changing monster->type, since unbeholding can only happen while + // monster is still a mermaid. + update_beholders(monster, true); + // the actual polymorphing: const int old_hp = monster->hit_points; const int old_hp_max = monster->max_hit_points; |