summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/main.cc
diff options
context:
space:
mode:
authorCharles Otto <ottochar@gmail.com>2009-11-15 15:13:08 -0500
committerCharles Otto <ottochar@gmail.com>2009-11-15 23:46:46 -0500
commitf3181091e894c233e5490366233acab45ab6144b (patch)
tree4d7d07ee2623c1143b95f6d9b44bf9a91607b843 /crawl-ref/source/main.cc
parent0da3322c570c3e94859b94fe3bc747c01d1e1364 (diff)
downloadcrawl-ref-f3181091e894c233e5490366233acab45ab6144b.tar.gz
crawl-ref-f3181091e894c233e5490366233acab45ab6144b.zip
Convert several more durations
Change over durations for magic shield (this is from the helm card), TSO's divine shield, paralysis, and petrification.
Diffstat (limited to 'crawl-ref/source/main.cc')
-rw-r--r--crawl-ref/source/main.cc15
1 files changed, 8 insertions, 7 deletions
diff --git a/crawl-ref/source/main.cc b/crawl-ref/source/main.cc
index 138b3e32ae..f501307bbc 100644
--- a/crawl-ref/source/main.cc
+++ b/crawl-ref/source/main.cc
@@ -2234,8 +2234,12 @@ static void _decrement_durations()
{
if (you.duration[DUR_DIVINE_SHIELD] > 1)
{
- if (--you.duration[DUR_DIVINE_SHIELD] == 1)
+ you.duration[DUR_DIVINE_SHIELD] -= delay;
+ if(you.duration[DUR_DIVINE_SHIELD] <= 1)
+ {
+ you.duration[DUR_DIVINE_SHIELD] = 1;
mpr("Your divine shield starts to fade.", MSGCH_DURATION);
+ }
}
if (you.duration[DUR_DIVINE_SHIELD] == 1 && !one_chance_in(3))
@@ -2488,7 +2492,7 @@ static void _decrement_durations()
else if (one_chance_in(chance))
{
mpr("You pass out from exhaustion.", MSGCH_WARN);
- you.duration[DUR_PARALYSIS] += roll_dice(1, 4);
+ you.increase_duration(DUR_PARALYSIS, roll_dice(1,4));
}
}
@@ -2640,7 +2644,7 @@ static void _decrement_durations()
if (you.hp > allowed_deaths_door_hp())
{
mpr("Your life is in your own hands once again.", MSGCH_DURATION);
- you.duration[DUR_PARALYSIS] += 5 + random2(5);
+ you.increase_duration(DUR_PARALYSIS, 5 + random2(5));
confuse_player(10 + random2(10));
you.hp_max--;
deflate_hp(you.hp_max, false);
@@ -2869,10 +2873,7 @@ void world_reacts()
mpr("You lose consciousness!", MSGCH_FOOD);
stop_running();
- you.duration[DUR_PARALYSIS] += 5 + random2(8);
-
- if (you.duration[DUR_PARALYSIS] > 13)
- you.duration[DUR_PARALYSIS] = 13;
+ you.increase_duration(DUR_PARALYSIS, 5 + random2(8), 13);
}
if (you.hunger <= 100)