diff options
author | haranp <haranp@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-06-27 08:44:34 +0000 |
---|---|---|
committer | haranp <haranp@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-06-27 08:44:34 +0000 |
commit | 40fa9db0730383e3fa018999dc8e64208b2d12f5 (patch) | |
tree | 715b0aacb4208159f8731f66e4f6aaa10ea54c15 | |
parent | 9ba7349f93aeca1bb45a083235f3576f5096a995 (diff) | |
download | crawl-ref-40fa9db0730383e3fa018999dc8e64208b2d12f5.tar.gz crawl-ref-40fa9db0730383e3fa018999dc8e64208b2d12f5.zip |
Applied patch 1742546: Xom shouldn't polymorph demons.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1664 c06c8d41-db1a-0410-9941-cceddc491573
-rw-r--r-- | crawl-ref/source/xom.cc | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/crawl-ref/source/xom.cc b/crawl-ref/source/xom.cc index 3b02050603..4144f63aed 100644 --- a/crawl-ref/source/xom.cc +++ b/crawl-ref/source/xom.cc @@ -520,8 +520,8 @@ static bool xom_is_good(int sever) (temp_rand == 2) ? "Xom's power touches on a nearby monster." : "You hear Xom's avuncular chuckle."); - bool isFriendly = mons_friendly(mon); - if (isFriendly) + + if (mons_friendly(mon)) monster_polymorph(mon, RANDOM_MONSTER, PPT_MORE); else monster_polymorph(mon, RANDOM_MONSTER, PPT_LESS); @@ -715,21 +715,24 @@ static bool xom_is_bad(int sever) } else if ((random2(sever) <= 7) && there_are_monsters_nearby()) { - struct monsters* mon = get_random_nearby_monster(); + monsters* mon = get_random_nearby_monster(); ASSERT (mon != NULL); - temp_rand = random2(4); + if ( mon->holiness() == MH_NATURAL ) + { + temp_rand = random2(4); - god_speaks(GOD_XOM, - (temp_rand == 0) ? "\"This might be better!\"" : - (temp_rand == 1) ? "\"Hum-dee-hum-dee-hum...\"" : - (temp_rand == 2) ? "Xom's power touches on a nearby monster." - : "You hear Xom's avuncular chuckle."); - bool isFriendly = mons_friendly(mon); - if (isFriendly) - monster_polymorph(mon, RANDOM_MONSTER, PPT_LESS); - else - monster_polymorph(mon, RANDOM_MONSTER, PPT_MORE); - done = true; + god_speaks(GOD_XOM, + (temp_rand == 0) ? "\"This might be better!\"" : + (temp_rand == 1) ? "\"Hum-dee-hum-dee-hum...\"" : + (temp_rand == 2) ? "Xom's power touches on a nearby monster." + : "You hear Xom's avuncular chuckle."); + + if (mons_friendly(mon)) + monster_polymorph(mon, RANDOM_MONSTER, PPT_LESS); + else + monster_polymorph(mon, RANDOM_MONSTER, PPT_MORE); + done = true; + } } else if (!you.is_undead && random2(sever) <= 8) { |