From 98b9bec859b988232dd71f111efa4594aa5ff027 Mon Sep 17 00:00:00 2001 From: dolorous Date: Thu, 15 May 2008 17:29:47 +0000 Subject: Improve the non-stacking of Zin's divine stamina and the stat-enhancing mutations. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@5061 c06c8d41-db1a-0410-9941-cceddc491573 --- crawl-ref/source/spells1.cc | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) (limited to 'crawl-ref/source/spells1.cc') diff --git a/crawl-ref/source/spells1.cc b/crawl-ref/source/spells1.cc index a46c3da0f1..a81881d47f 100644 --- a/crawl-ref/source/spells1.cc +++ b/crawl-ref/source/spells1.cc @@ -974,15 +974,18 @@ int cast_vitalisation(int pow) case 1: case 2: // Restore stats. - if (you.strength < you.max_strength || you.intel < you.max_intel + if (you.strength < you.max_strength + || you.intel < you.max_intel || you.dex < you.max_dex) { success = true; restore_stat(STAT_STRENGTH, step + 1, true); restore_stat(STAT_INTELLIGENCE, step + 1, true); restore_stat(STAT_DEXTERITY, step + 1, true); - need_chain = (you.strength < you.max_strength - || you.intel < you.max_intel || you.dex < you.max_dex); + need_chain = + (you.strength < you.max_strength + || you.intel < you.max_intel + || you.dex < you.max_dex); break; } @@ -998,9 +1001,9 @@ int cast_vitalisation(int pow) case 5: if ((step == 3 || you.duration[DUR_VITALISATION_CHAIN] > 0) && you.attribute[ATTR_DIVINE_STAMINA] == (step - 3) - && player_mutation_level(MUT_STRONG) < (17 - step) - && player_mutation_level(MUT_CLEVER) < (17 - step) - && player_mutation_level(MUT_AGILE) < (17 - step)) + && (player_mutation_level(MUT_STRONG) / 5 + 1) < (6 - step) + && (player_mutation_level(MUT_CLEVER) / 5 + 1) < (6 - step) + && (player_mutation_level(MUT_AGILE) / 5 + 1) < (6 - step)) { success = true; mprf(MSGCH_DURATION, "Zin %s divine stamina.", @@ -1016,9 +1019,10 @@ int cast_vitalisation(int pow) modify_stat(STAT_STRENGTH, 1, true, ""); modify_stat(STAT_INTELLIGENCE, 1, true, ""); modify_stat(STAT_DEXTERITY, 1, true, ""); - need_chain = (player_mutation_level(MUT_STRONG) < (16 - step) - && player_mutation_level(MUT_CLEVER) < (16 - step) - && player_mutation_level(MUT_AGILE) < (16 - step)); + need_chain = + ((player_mutation_level(MUT_STRONG) / 5 + 1) < (5 - step) + && (player_mutation_level(MUT_CLEVER) / 5 + 1) < (5 - step) + && (player_mutation_level(MUT_AGILE) / 5 + 1) < (5 - step)); break; } -- cgit v1.2.3-54-g00ecf