diff options
Diffstat (limited to 'crawl-ref/source/spl-util.h')
-rw-r--r-- | crawl-ref/source/spl-util.h | 30 |
1 files changed, 17 insertions, 13 deletions
diff --git a/crawl-ref/source/spl-util.h b/crawl-ref/source/spl-util.h index 2a916a4b32..0342fcc076 100644 --- a/crawl-ref/source/spl-util.h +++ b/crawl-ref/source/spl-util.h @@ -79,25 +79,34 @@ const char *spell_title(spell_type which_spell); const char* spelltype_short_name( int which_spelltype ); const char* spelltype_long_name( int which_spelltype ); -typedef int cell_func(coord_def where, int pow, int aux); +typedef int cell_func(coord_def where, int pow, int aux, actor *agent); typedef int cloud_func(coord_def where, int pow, int spreadrate, cloud_type type, kill_category whose, killer_type killer); int apply_area_visible(cell_func cf, int power, - bool pass_through_trans = false); + bool pass_through_trans = false, actor *agent = NULL); -int apply_area_square(cell_func cf, const coord_def& where, int power); +int apply_area_square(cell_func cf, const coord_def& where, int power, + actor *agent = NULL); -int apply_area_around_square(cell_func cf, const coord_def& where, int power ); +int apply_area_around_square(cell_func cf, const coord_def& where, int power, + actor *agent = NULL); -int apply_random_around_square( cell_func cf, const coord_def& where, - bool hole_in_middle, int power, int max_targs ); +int apply_random_around_square(cell_func cf, const coord_def& where, + bool hole_in_middle, int power, int max_targs, + actor *agent = NULL); -int apply_one_neighbouring_square(cell_func cf, int power); +int apply_one_neighbouring_square(cell_func cf, int power, actor *agent = NULL); int apply_area_within_radius(cell_func cf, const coord_def& where, - int pow, int radius, int ctype); + int pow, int radius, int ctype, + actor *agent = NULL); + +void apply_area_cloud(cloud_func func, const coord_def& where, + int pow, int number, cloud_type ctype, + kill_category kc, killer_type killer, + int spread_rate = -1); bool spell_direction( dist &spelld, bolt &pbolt, targeting_type restrict = DIR_NONE, @@ -107,11 +116,6 @@ bool spell_direction( dist &spelld, bolt &pbolt, bool may_target_self = false, const char *prompt = NULL, bool cancel_at_self = false ); -void apply_area_cloud(cloud_func func, const coord_def& where, - int pow, int number, cloud_type ctype, - kill_category kc, killer_type killer, - int spread_rate = -1); - const char *spelltype_name(unsigned int which_spelltype); int spell_type2skill (unsigned int which_spelltype); |