diff options
author | haranp <haranp@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-07-12 08:33:01 +0000 |
---|---|---|
committer | haranp <haranp@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-07-12 08:33:01 +0000 |
commit | 19c5f0f487097c52311565adcc12546c703e0a79 (patch) | |
tree | 2157ccbba51a54baa8f23df69d436d7c9d6f4c3d /crawl-ref | |
parent | e8e947d6fc4d951e1f39954ddd3cbe1ea83e7cff (diff) | |
download | crawl-ref-19c5f0f487097c52311565adcc12546c703e0a79.tar.gz crawl-ref-19c5f0f487097c52311565adcc12546c703e0a79.zip |
[1751312] Warpwright does nothing in the Abyss; Minefield creates
water and lava instead of traps.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1843 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref')
-rw-r--r-- | crawl-ref/source/decks.cc | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/crawl-ref/source/decks.cc b/crawl-ref/source/decks.cc index 8f56dfdee8..e35dfa1eef 100644 --- a/crawl-ref/source/decks.cc +++ b/crawl-ref/source/decks.cc @@ -586,6 +586,12 @@ static void damnation_card(int power, deck_rarity_type rarity) static void warpwright_card(int power, deck_rarity_type rarity) { + if ( you.level_type == LEVEL_ABYSS ) + { + mpr("The power of the Abyss blocks your magic."); + return; + } + int count = 0; int fx = -1, fy = -1; for ( int dx = -1; dx <= 1; ++dx ) @@ -624,7 +630,7 @@ static void warpwright_card(int power, deck_rarity_type rarity) static void minefield_card(int power, deck_rarity_type rarity) { - const int power_level = get_power_level(power, rarity); + const int power_level = get_power_level(power, rarity); const int radius = power_level * 2 + 2; for ( int dx = -radius; dx <= radius; ++dx ) { @@ -642,7 +648,10 @@ static void minefield_card(int power, deck_rarity_type rarity) if ( grd[rx][ry] == DNGN_FLOOR && trap_at_xy(rx,ry) == -1 && one_chance_in(4 - power_level) ) { - place_specific_trap(rx, ry, TRAP_RANDOM); + if ( you.level_type == LEVEL_ABYSS ) + grd[rx][ry] = coinflip() ? DNGN_DEEP_WATER : DNGN_LAVA; + else + place_specific_trap(rx, ry, TRAP_RANDOM); } } } |