summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/effects.cc
diff options
context:
space:
mode:
authorharanp <haranp@c06c8d41-db1a-0410-9941-cceddc491573>2008-12-25 17:04:20 +0000
committerharanp <haranp@c06c8d41-db1a-0410-9941-cceddc491573>2008-12-25 17:04:20 +0000
commitb1c2d6e096eebdbae0c2f5a8dd48a5f67a1eb678 (patch)
tree9d9ef2508041df23a59c5bc447cc4ee8633944c5 /crawl-ref/source/effects.cc
parent287e5f0820620b81b518ab1f554107afd8a62ebe (diff)
downloadcrawl-ref-b1c2d6e096eebdbae0c2f5a8dd48a5f67a1eb678.tar.gz
crawl-ref-b1c2d6e096eebdbae0c2f5a8dd48a5f67a1eb678.zip
Complete rewrite of the beam code, making it considerably saner.
However, there might be quite a few bugs lurking in this rewrite. Sorry. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7975 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/effects.cc')
-rw-r--r--crawl-ref/source/effects.cc12
1 files changed, 6 insertions, 6 deletions
diff --git a/crawl-ref/source/effects.cc b/crawl-ref/source/effects.cc
index 0680d93bfb..9b34adb9de 100644
--- a/crawl-ref/source/effects.cc
+++ b/crawl-ref/source/effects.cc
@@ -268,6 +268,10 @@ void immolation(int caster, bool known)
{
const char *aux = "immolation";
+ bolt beam;
+ // The scroll of immolation doesn't affect items.
+ beam.affects_items = (caster != IMMOLATION_SCROLL);
+
if (caster < 0)
{
switch (caster)
@@ -284,7 +288,6 @@ void immolation(int caster, bool known)
caster = IMMOLATION_GENERIC;
}
- bolt beam;
beam.flavour = BEAM_FIRE;
beam.type = dchar_glyph(DCHAR_FIRED_BURST);
beam.damage = dice_def(3, 10);
@@ -298,9 +301,7 @@ void immolation(int caster, bool known)
beam.is_explosion = true;
beam.effect_known = known;
- // The scroll of immolation doesn't affect items.
- explosion(beam, false, false, true, true, true,
- caster != IMMOLATION_SCROLL);
+ beam.explode();
}
static std::string _who_banished(const std::string &who)
@@ -3176,8 +3177,7 @@ void handle_time(long time_delta)
boom.ench_power = (you.magic_contamination * 5);
boom.ex_size = std::min(9, you.magic_contamination / 15);
-
- explosion(boom);
+ boom.explode();
}
// we want to warp the player, not do good stuff!