diff options
author | zelgadis <zelgadis@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-07-01 11:11:33 +0000 |
---|---|---|
committer | zelgadis <zelgadis@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-07-01 11:11:33 +0000 |
commit | f79f1dcbc304c5bc0736ad2bee5dcbb67bad05f2 (patch) | |
tree | df1f7d1808e34919b8d121deeea83d8788a90a38 /crawl-ref/source/beam.h | |
parent | 1531585b32d3e58d21307860624881d3d998e38d (diff) | |
download | crawl-ref-f79f1dcbc304c5bc0736ad2bee5dcbb67bad05f2.tar.gz crawl-ref-f79f1dcbc304c5bc0736ad2bee5dcbb67bad05f2.zip |
Make tracer beams call stop_attack_prompt() for foes as well as for
friends, to check for attacking foes while in sanctuary. The way it's
done means that if you or an enemy is in sanctuary and the beam also passes
through an ally then it will prompt you twice, once for the first friend and
once for the first foe, but that shouldn't be too much of a problem.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6287 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/beam.h')
-rw-r--r-- | crawl-ref/source/beam.h | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/crawl-ref/source/beam.h b/crawl-ref/source/beam.h index 04aee533df..d6f3e6e164 100644 --- a/crawl-ref/source/beam.h +++ b/crawl-ref/source/beam.h @@ -148,6 +148,11 @@ struct bolt mon_attitude_type attitude; // attitude of whoever fired tracer int foe_ratio; // 100* foe ratio (see mons_should_fire()) bool chose_ray; // do we want a specific ray? + bool beam_stopped; // stop_attack_prompt() returned true + bool dont_stop_foe; // stop_attack_prompt() returned false for foe + bool dont_stop_fr; // stop_attack_prompt() returned false for + // friend + ray_def ray; // shoot on this specific ray public: @@ -183,11 +188,11 @@ void fire_beam(bolt &pbolt, item_def *item = NULL, bool drop_item = false); * called from: ability - it_use3 - item_use - mstuff2 - religion - * spells - spells4 * *********************************************************************** */ -void explosion( bolt &pbolt, bool hole_in_the_middle = false, - bool explode_in_wall = false, - bool stop_at_statues = true, - bool stop_at_walls = true, - bool show_more = true); +int explosion( bolt &pbolt, bool hole_in_the_middle = false, + bool explode_in_wall = false, + bool stop_at_statues = true, + bool stop_at_walls = true, + bool show_more = true); // last updated 22jan2001 {gdl} /* *********************************************************************** |