summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/spl-cast.cc
diff options
context:
space:
mode:
authordolorous <dolorous@c06c8d41-db1a-0410-9941-cceddc491573>2008-06-07 04:54:57 +0000
committerdolorous <dolorous@c06c8d41-db1a-0410-9941-cceddc491573>2008-06-07 04:54:57 +0000
commit4406258079282fb38da52df875ccd76ee70941bd (patch)
tree37d7c5a953e8013e4f7d81b9fd4a4585e34122ec /crawl-ref/source/spl-cast.cc
parent2eca4d6c7a1f9490725d206f0ae53506f08ec20b (diff)
downloadcrawl-ref-4406258079282fb38da52df875ccd76ee70941bd.tar.gz
crawl-ref-4406258079282fb38da52df875ccd76ee70941bd.zip
Consolidate "Summon Dragon" into summon_general_creature() as well.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@5523 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/spl-cast.cc')
-rw-r--r--crawl-ref/source/spl-cast.cc19
1 files changed, 12 insertions, 7 deletions
diff --git a/crawl-ref/source/spl-cast.cc b/crawl-ref/source/spl-cast.cc
index aabb253d6e..265bc141a5 100644
--- a/crawl-ref/source/spl-cast.cc
+++ b/crawl-ref/source/spl-cast.cc
@@ -1497,15 +1497,20 @@ spret_type your_spells( spell_type spell, int powc, bool allow_fail )
case SPELL_SUMMON_GUARDIAN:
case SPELL_SUMMON_DAEVA:
{
+ bool quiet = (spell == SPELL_SUMMON_BUTTERFLIES);
+
monster_type mon = MONS_PROGRAM_BUG;
int unfriendly =
(spell == SPELL_SUMMON_DEMON || spell == SPELL_DEMONIC_HORDE
- || spell == SPELL_SUMMON_UGLY_THING) ? 3
+ || spell == SPELL_SUMMON_UGLY_THING) ? 3 :
+ (spell == SPELL_SUMMON_DRAGON) ? 5
: -1;
+
int numsc =
(spell == SPELL_SUMMON_BUTTERFLIES) ? 3
- : std::min(2 + (random2(powc) / 4), 6);
+ : -1;
+
int how_many =
(spell == SPELL_SUMMON_BUTTERFLIES) ? std::max(15, 4 + random2(3) + random2(powc) / 10) :
(spell == SPELL_DEMONIC_HORDE) ? 7 + random2(5)
@@ -1546,6 +1551,10 @@ spret_type your_spells( spell_type spell, int powc, bool allow_fail )
break;
}
+ case SPELL_SUMMON_DRAGON:
+ mon = MONS_DRAGON;
+ break;
+
case SPELL_SUMMON_GUARDIAN:
mon = MONS_ANGEL;
break;
@@ -1558,7 +1567,7 @@ spret_type your_spells( spell_type spell, int powc, bool allow_fail )
break;
}
- summon_general_creature(powc, mon, BEH_FRIENDLY, unfriendly,
+ summon_general_creature(powc, quiet, mon, BEH_FRIENDLY, unfriendly,
numsc, false);
}
break;
@@ -1909,10 +1918,6 @@ spret_type your_spells( spell_type spell, int powc, bool allow_fail )
cast_summon_large_mammal(powc);
break;
- case SPELL_SUMMON_DRAGON:
- cast_summon_dragon(powc);
- break;
-
case SPELL_TAME_BEASTS:
cast_tame_beasts(powc);
break;