From a8bc607994f1cfeb8f9fe554c2e89f0b551290af Mon Sep 17 00:00:00 2001 From: haranp Date: Wed, 4 Jul 2007 12:03:29 +0000 Subject: Dancing Weapon card implemented. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1748 c06c8d41-db1a-0410-9941-cceddc491573 --- crawl-ref/source/decks.cc | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/crawl-ref/source/decks.cc b/crawl-ref/source/decks.cc index c035744aa8..048f1711be 100644 --- a/crawl-ref/source/decks.cc +++ b/crawl-ref/source/decks.cc @@ -1025,6 +1025,17 @@ static void summon_any_monster(int power, deck_rarity_type rarity) chosen_x, chosen_y, you.pet_target, 250 ); } +static void summon_dancing_weapon(int power, deck_rarity_type rarity) +{ + const int power_level = get_power_level(power, rarity); + const bool friendly = (power_level > 0 || !one_chance_in(4)); + create_monster( MONS_DANCING_WEAPON, power_level + 3, + friendly ? BEH_FRIENDLY : BEH_HOSTILE, + you.x_pos, you.y_pos, + friendly ? you.pet_target : MHITYOU, + 250 ); +} + static int card_power(deck_rarity_type rarity) { int result = 0; @@ -1094,9 +1105,9 @@ void card_effect(card_type which_card, deck_rarity_type rarity) case CARD_SUMMON_ANIMAL: summon_animals(random2(power/3)); break; case CARD_SUMMON_ANY: summon_any_monster(power, rarity); break; case CARD_XOM: xom_acts(5 + random2(power/10)); break; + case CARD_SUMMON_WEAPON: summon_dancing_weapon(power, rarity); break; case CARD_SPADE: - case CARD_SUMMON_WEAPON: // XXX not yet implemented mpr("Sorry, this card is not yet available."); break; -- cgit v1.2.3-54-g00ecf