summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2008-01-27 08:39:37 +0000
committerdshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2008-01-27 08:39:37 +0000
commit962e0244aac6795b08d6106fdf4751fd5cb8f780 (patch)
tree4a89d110ac4b1b3fcf5a2712d89d7b677b263c68
parent4784d40f57682c0d960f382d5b975e13cf0326a4 (diff)
downloadcrawl-ref-962e0244aac6795b08d6106fdf4751fd5cb8f780.tar.gz
crawl-ref-962e0244aac6795b08d6106fdf4751fd5cb8f780.zip
[1873415] Weaken chain paralysis.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3344 c06c8d41-db1a-0410-9941-cceddc491573
-rw-r--r--crawl-ref/source/monstuff.cc5
-rw-r--r--crawl-ref/source/player.cc12
-rw-r--r--crawl-ref/source/spells1.cc8
3 files changed, 10 insertions, 15 deletions
diff --git a/crawl-ref/source/monstuff.cc b/crawl-ref/source/monstuff.cc
index 09c20b2016..862e75da5d 100644
--- a/crawl-ref/source/monstuff.cc
+++ b/crawl-ref/source/monstuff.cc
@@ -2481,8 +2481,9 @@ static void handle_nearby_ability(monsters *monster)
{
simple_monster_message(monster, " stares at you.");
- if (you.duration[DUR_PARALYSIS] < 10)
- you.duration[DUR_PARALYSIS] += 2 + random2(3);
+ int &paralysis(you.duration[DUR_PARALYSIS]);
+ if (!paralysis || (paralysis < 10 && one_chance_in(1 + paralysis)))
+ paralysis += 2 + random2(3);
}
break;
diff --git a/crawl-ref/source/player.cc b/crawl-ref/source/player.cc
index 0b69753383..d8ecc86e4d 100644
--- a/crawl-ref/source/player.cc
+++ b/crawl-ref/source/player.cc
@@ -6157,14 +6157,16 @@ void player::confuse(int str)
void player::paralyse(int str)
{
+ int &paralysis(duration[DUR_PARALYSIS]);
+
mprf( "You %s the ability to move!",
- (duration[DUR_PARALYSIS]) ? "still haven't" : "suddenly lose" );
+ paralysis ? "still haven't" : "suddenly lose" );
- if (str > duration[DUR_PARALYSIS])
- duration[DUR_PARALYSIS] = str;
+ if (str > paralysis && (paralysis < 3 || one_chance_in(paralysis)))
+ paralysis = str;
- if (duration[DUR_PARALYSIS] > 13)
- duration[DUR_PARALYSIS] = 13;
+ if (paralysis > 13)
+ paralysis = 13;
}
void player::slow_down(int str)
diff --git a/crawl-ref/source/spells1.cc b/crawl-ref/source/spells1.cc
index 9cd5c94622..0ca5d6284b 100644
--- a/crawl-ref/source/spells1.cc
+++ b/crawl-ref/source/spells1.cc
@@ -821,14 +821,6 @@ void extension(int pow)
if (you.duration[DUR_SLOW])
potion_effect(POT_SLOWING, pow);
-#if 0
- if (you.duration[DUR_PARALYSIS])
- potion_effect(POT_PARALYSIS, pow); // how did you cast extension?
-
- if (you.duration[DUR_CONF])
- potion_effect(POT_CONFUSION, pow); // how did you cast extension?
-#endif
-
if (you.duration[DUR_MIGHT])
{
potion_effect(POT_MIGHT, pow);