diff options
-rw-r--r-- | crawl-ref/source/beam.cc | 4 | ||||
-rw-r--r-- | crawl-ref/source/religion.cc | 9 | ||||
-rw-r--r-- | crawl-ref/source/religion.h | 2 |
3 files changed, 9 insertions, 6 deletions
diff --git a/crawl-ref/source/beam.cc b/crawl-ref/source/beam.cc index a8fb1dab6e..831e4cdf88 100644 --- a/crawl-ref/source/beam.cc +++ b/crawl-ref/source/beam.cc @@ -4831,14 +4831,14 @@ mon_resist_type bolt::apply_enchantment_to_monster(monsters* mon) // The monster can be no more than lightly wounded/damaged, // using the formula from monstuff.cc:mons_get_damage_level(). - if (mon->hit_points <= (mon->max_hit_points * 3) / 4) + if (mon->hit_points <= mon->max_hit_points * 3 / 4) { simple_monster_message(mon, "'s soul is too badly injured."); return (MON_OTHER); } obvious_effect = true; - const int duration = (you.skills[SK_INVOCATIONS] * 3) / 4 + 1; + const int duration = you.skills[SK_INVOCATIONS] * 3 / 4 + 1; mon->add_ench(mon_enchant(ENCH_SOUL_RIPE, 0, KC_YOU, duration * 10)); simple_monster_message(mon, "'s soul is now ripe for the taking."); return (MON_AFFECTED); diff --git a/crawl-ref/source/religion.cc b/crawl-ref/source/religion.cc index 40b9856312..96a7c54f8e 100644 --- a/crawl-ref/source/religion.cc +++ b/crawl-ref/source/religion.cc @@ -5774,9 +5774,9 @@ static bool _tso_holy_revenge() } void yred_make_enslaved_soul(monsters *mon, bool force_hostile, - bool quiet, bool unlimited) + bool quiet, bool unrestricted) { - if (!unlimited) + if (!unrestricted) _yred_souls_disappear(); const int type = mon->type; @@ -5784,7 +5784,10 @@ void yred_make_enslaved_soul(monsters *mon, bool force_hostile, const std::string whose = you.can_see(mon) ? apostrophise(mon->name(DESC_CAP_THE)) : mon->pronoun(PRONOUN_CAP_POSSESSIVE); - const bool twisted = coinflip(); + const bool twisted = + !unrestricted ? x_chance_in_y(you.skills[SK_INVOCATIONS] * 20 / 9 + 20, + 100) + : false; int corps = -1; // If the monster's held in a net, get it out. diff --git a/crawl-ref/source/religion.h b/crawl-ref/source/religion.h index b9d8c297ca..80b26db688 100644 --- a/crawl-ref/source/religion.h +++ b/crawl-ref/source/religion.h @@ -106,7 +106,7 @@ bool beogh_water_walk(); void good_god_holy_attitude_change(monsters *holy); void good_god_holy_fail_attitude_change(monsters *holy); void yred_make_enslaved_soul(monsters *mon, bool force_hostile = false, - bool quiet = false, bool unlimited = false); + bool quiet = false, bool unrestricted = false); void beogh_convert_orc(monsters *orc, bool emergency, bool converted_by_follower = false); bool is_holy_item(const item_def& item); |