summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2007-10-26 13:45:39 +0000
committerdshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2007-10-26 13:45:39 +0000
commite72a2008d34eb9e404a512a769bc703a7fc23a14 (patch)
tree7738da2a6f279f0a4ecceb9b9b9df9d939678049
parent38e7711b2b0221d6dec972b4c66594f36d75c317 (diff)
downloadcrawl-ref-e72a2008d34eb9e404a512a769bc703a7fc23a14.tar.gz
crawl-ref-e72a2008d34eb9e404a512a769bc703a7fc23a14.zip
Trunk->0.3 merge (2544): Pain and Torment cards, boosted cost of stack deck.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/branches/stone_soup-0.3@2595 c06c8d41-db1a-0410-9941-cceddc491573
-rw-r--r--crawl-ref/source/abl-show.cc2
-rw-r--r--crawl-ref/source/decks.cc16
-rw-r--r--crawl-ref/source/enum.h2
3 files changed, 15 insertions, 5 deletions
diff --git a/crawl-ref/source/abl-show.cc b/crawl-ref/source/abl-show.cc
index 65bdb47e6b..b9aa1d4075 100644
--- a/crawl-ref/source/abl-show.cc
+++ b/crawl-ref/source/abl-show.cc
@@ -303,7 +303,7 @@ static const ability_def Ability_List[] =
{ ABIL_NEMELEX_PEEK_DECK, "Deck Peek", 3, 0, 0, 1, ABFLAG_INSTANT },
{ ABIL_NEMELEX_DRAW_CARD, "Draw Card", 2, 0, 0, 0, ABFLAG_NONE },
{ ABIL_NEMELEX_TRIPLE_DRAW, "Triple Draw", 2, 0, 100, 2, ABFLAG_NONE },
- { ABIL_NEMELEX_STACK_DECK, "Stack Deck", 5, 0, 150, 6, ABFLAG_NONE },
+ { ABIL_NEMELEX_STACK_DECK, "Stack Deck", 5, 0, 250, 10, ABFLAG_NONE },
// Beogh
{ ABIL_BEOGH_SMITING, "Smiting",
diff --git a/crawl-ref/source/decks.cc b/crawl-ref/source/decks.cc
index 9d315804e0..9510b3c9ac 100644
--- a/crawl-ref/source/decks.cc
+++ b/crawl-ref/source/decks.cc
@@ -60,7 +60,8 @@ static card_type a_deck_of_emergency[] = {
DEFVEC(deck_of_emergency);
static card_type a_deck_of_destruction[] = {
- CARD_VITRIOL, CARD_FLAME, CARD_FROST, CARD_VENOM, CARD_HAMMER
+ CARD_VITRIOL, CARD_FLAME, CARD_FROST, CARD_VENOM, CARD_HAMMER,
+ CARD_PAIN, CARD_TORMENT
};
DEFVEC(deck_of_destruction);
@@ -158,6 +159,8 @@ const char* card_name(card_type card)
case CARD_FROST: return "Frost";
case CARD_VENOM: return "Venom";
case CARD_HAMMER: return "the Hammer";
+ case CARD_PAIN: return "Pain";
+ case CARD_TORMENT: return "Torment";
case CARD_SPADE: return "the Spade";
case CARD_BARGAIN: return "the Bargain";
case CARD_WRATH: return "Wrath";
@@ -770,6 +773,10 @@ static void damaging_card(card_type card, int power, deck_rarity_type rarity)
ztype = venomzaps[power_level];
break;
+ case CARD_PAIN:
+ ztype = ZAP_AGONY;
+ break;
+
default:
break;
}
@@ -1322,7 +1329,9 @@ void card_effect(card_type which_card, deck_rarity_type rarity)
case CARD_SUMMON_WEAPON: summon_dancing_weapon(power, rarity); break;
case CARD_TROWEL: trowel_card(power, rarity); break;
case CARD_SPADE: your_spells(SPELL_DIG, random2(power/4), false); break;
-
+ case CARD_BANSHEE: mass_enchantment(ENCH_FEAR, power, MHITYOU); break;
+ case CARD_TORMENT: torment(TORMENT_CARDS, you.x_pos, you.y_pos); break;
+
case CARD_VENOM:
if ( coinflip() )
your_spells(SPELL_OLGREBS_TOXIC_RADIANCE,random2(power/4), false);
@@ -1331,6 +1340,7 @@ void card_effect(card_type which_card, deck_rarity_type rarity)
break;
case CARD_VITRIOL: case CARD_FLAME: case CARD_FROST: case CARD_HAMMER:
+ case CARD_PAIN:
damaging_card(which_card, power, rarity);
break;
@@ -1343,8 +1353,6 @@ void card_effect(card_type which_card, deck_rarity_type rarity)
mpr("The map is blank.");
break;
- case CARD_BANSHEE: mass_enchantment(ENCH_FEAR, power, MHITYOU); break;
-
case CARD_WILD_MAGIC:
// yes, high power is bad here
miscast_effect( SPTYP_RANDOM, random2(power/15) + 5,
diff --git a/crawl-ref/source/enum.h b/crawl-ref/source/enum.h
index 2a72d1ba2b..bad80a03c9 100644
--- a/crawl-ref/source/enum.h
+++ b/crawl-ref/source/enum.h
@@ -371,6 +371,8 @@ enum card_type
CARD_FROST, // cold damage
CARD_VENOM, // poison damage
CARD_HAMMER, // pure damage
+ CARD_PAIN, // single target, like spell of agony
+ CARD_TORMENT, // Symbol of Torment
CARD_ELIXIR, // healing
CARD_BATTLELUST, // melee boosts