diff options
Diffstat (limited to 'crawl-ref/source/spl-cast.cc')
-rw-r--r-- | crawl-ref/source/spl-cast.cc | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/crawl-ref/source/spl-cast.cc b/crawl-ref/source/spl-cast.cc index 25526ceb58..f05b6712b1 100644 --- a/crawl-ref/source/spl-cast.cc +++ b/crawl-ref/source/spl-cast.cc @@ -229,7 +229,7 @@ int list_spells() } } -static int apply_vehumet_wizardry_boost(spell_type spell, int chance) +static int apply_spellcasting_success_boosts(spell_type spell, int chance) { int wizardry = player_mag_abil(false); int fail_reduce = 100; @@ -254,6 +254,10 @@ static int apply_vehumet_wizardry_boost(spell_type spell, int chance) wiz_factor += (100 - wiz_factor) / 3; } + // Draconians get a boost to dragon-form. + if (spell == SPELL_DRAGON_FORM && player_genus(GENPC_DRACONIAN)) + fail_reduce = fail_reduce * 70 / 100; + // Hard cap on fail rate reduction. if (fail_reduce < 50) fail_reduce = 50; @@ -444,7 +448,7 @@ int spell_fail(spell_type spell) } // Apply the effects of Vehumet prayer and items of wizardry. - chance2 = apply_vehumet_wizardry_boost(spell, chance2); + chance2 = apply_spellcasting_success_boosts(spell, chance2); if (chance2 > 100) chance2 = 100; |