summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/spells4.cc
diff options
context:
space:
mode:
authorCharles Otto <ottochar@gmail.com>2009-11-15 01:27:39 -0500
committerCharles Otto <ottochar@gmail.com>2009-11-15 23:46:30 -0500
commitb2e9640e0788a9d0ef6b6a9488b0eb39d8bae475 (patch)
treebfb97578ebe206e2f63a8938a8773faa9b4e4486 /crawl-ref/source/spells4.cc
parent56ccc8544bc2e63da87dd5c2f65fea86bde5655b (diff)
downloadcrawl-ref-b2e9640e0788a9d0ef6b6a9488b0eb39d8bae475.tar.gz
crawl-ref-b2e9640e0788a9d0ef6b6a9488b0eb39d8bae475.zip
Update phaee shift, condensation shield, stoneskin and see invis
Make their durations count total delay not turns.
Diffstat (limited to 'crawl-ref/source/spells4.cc')
-rw-r--r--crawl-ref/source/spells4.cc29
1 files changed, 17 insertions, 12 deletions
diff --git a/crawl-ref/source/spells4.cc b/crawl-ref/source/spells4.cc
index 3c934eb81e..6ca84a2a82 100644
--- a/crawl-ref/source/spells4.cc
+++ b/crawl-ref/source/spells4.cc
@@ -340,10 +340,10 @@ void cast_phase_shift(int pow)
else
mpr("Your feel the material plane grow further away.");
- you.duration[DUR_PHASE_SHIFT] += 5 + random2(pow);
+ you.duration[DUR_PHASE_SHIFT] += (5 + random2(pow)) * BASELINE_DELAY;
- if (you.duration[DUR_PHASE_SHIFT] > 30)
- you.duration[DUR_PHASE_SHIFT] = 30;
+ if (you.duration[DUR_PHASE_SHIFT] > 30 * BASELINE_DELAY)
+ you.duration[DUR_PHASE_SHIFT] = 30 * BASELINE_DELAY;
you.redraw_evasion = true;
}
@@ -363,11 +363,13 @@ void cast_see_invisible(int pow)
autotoggle_autopickup(false);
}
+ int duration = 10 + random2(2 + (pow / 2));
+
// No message if you already are under the spell.
- you.duration[DUR_SEE_INVISIBLE] += 10 + random2(2 + (pow / 2));
+ you.duration[DUR_SEE_INVISIBLE] += duration * BASELINE_DELAY;
- if (you.duration[DUR_SEE_INVISIBLE] > 100)
- you.duration[DUR_SEE_INVISIBLE] = 100;
+ if (you.duration[DUR_SEE_INVISIBLE] > 100 * BASELINE_DELAY)
+ you.duration[DUR_SEE_INVISIBLE] = 100 * BASELINE_DELAY;
}
// The description idea was okay, but this spell just isn't that exciting.
@@ -1912,17 +1914,19 @@ void cast_condensation_shield(int pow)
if (you.duration[DUR_CONDENSATION_SHIELD] > 0)
{
mpr("The disc of vapour around you crackles some more.");
- you.duration[DUR_CONDENSATION_SHIELD] += 5 + roll_dice(2, 3);
+ int addition = (5 + roll_dice(2, 3)) * BASELINE_DELAY;
+ you.duration[DUR_CONDENSATION_SHIELD] += addition;
}
else
{
mpr("A crackling disc of dense vapour forms in the air!");
+ int delay = (10 + roll_dice(2, pow / 5)) * BASELINE_DELAY;
you.duration[DUR_CONDENSATION_SHIELD] = 10 + roll_dice(2, pow / 5);
you.redraw_armour_class = true;
}
- if (you.duration[DUR_CONDENSATION_SHIELD] > 30)
- you.duration[DUR_CONDENSATION_SHIELD] = 30;
+ if (you.duration[DUR_CONDENSATION_SHIELD] > 30 * BASELINE_DELAY)
+ you.duration[DUR_CONDENSATION_SHIELD] = 30 * BASELINE_DELAY;
}
}
@@ -2075,10 +2079,11 @@ void cast_stoneskin(int pow)
you.redraw_armour_class = true;
}
- you.duration[DUR_STONESKIN] += 10 + random2(pow) + random2(pow);
+ int addition = (10 + random2(pow) + random2(pow)) * BASELINE_DELAY;
+ you.duration[DUR_STONESKIN] += addition;
- if (you.duration[DUR_STONESKIN] > 50)
- you.duration[DUR_STONESKIN] = 50;
+ if (you.duration[DUR_STONESKIN] > 50 * BASELINE_DELAY)
+ you.duration[DUR_STONESKIN] = 50 * BASELINE_DELAY;
}
bool do_slow_monster(monsters* mon, kill_category whose_kill)