diff options
author | Charles Otto <ottochar@gmail.com> | 2009-11-15 15:13:08 -0500 |
---|---|---|
committer | Charles Otto <ottochar@gmail.com> | 2009-11-15 23:46:46 -0500 |
commit | f3181091e894c233e5490366233acab45ab6144b (patch) | |
tree | 4d7d07ee2623c1143b95f6d9b44bf9a91607b843 /crawl-ref/source/main.cc | |
parent | 0da3322c570c3e94859b94fe3bc747c01d1e1364 (diff) | |
download | crawl-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.cc | 15 |
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) |