1 #include "blue-magic/blue-magic-spirit-curse.h"
2 #include "blue-magic/blue-magic-util.h"
3 #include "mspell/mspell-damage-calculator.h"
4 #include "mspell/mspell-type.h"
5 #include "spell-kind/spells-launcher.h"
6 #include "spell/spell-types.h"
7 #include "target/target-getter.h"
8 #include "view/display-messages.h"
10 bool cast_blue_drain_mana(player_type *caster_ptr, bmc_type *bmc_ptr)
12 if (!get_aim_dir(caster_ptr, &bmc_ptr->dir))
15 bmc_ptr->damage = monspell_bluemage_damage(caster_ptr, MS_DRAIN_MANA, bmc_ptr->plev, DAM_ROLL);
16 fire_ball_hide(caster_ptr, GF_DRAIN_MANA, bmc_ptr->dir, bmc_ptr->damage, 0);
20 bool cast_blue_mind_blast(player_type *caster_ptr, bmc_type *bmc_ptr)
22 if (!get_aim_dir(caster_ptr, &bmc_ptr->dir))
25 bmc_ptr->damage = monspell_bluemage_damage(caster_ptr, MS_MIND_BLAST, bmc_ptr->plev, DAM_ROLL);
26 fire_ball_hide(caster_ptr, GF_MIND_BLAST, bmc_ptr->dir, bmc_ptr->damage, 0);
30 bool cast_blue_brain_smash(player_type *caster_ptr, bmc_type *bmc_ptr)
32 if (!get_aim_dir(caster_ptr, &bmc_ptr->dir))
35 bmc_ptr->damage = monspell_bluemage_damage(caster_ptr, MS_BRAIN_SMASH, bmc_ptr->plev, DAM_ROLL);
36 fire_ball_hide(caster_ptr, GF_BRAIN_SMASH, bmc_ptr->dir, bmc_ptr->damage, 0);
40 bool cast_blue_curse_1(player_type *caster_ptr, bmc_type *bmc_ptr)
42 if (!get_aim_dir(caster_ptr, &bmc_ptr->dir))
45 bmc_ptr->damage = monspell_bluemage_damage(caster_ptr, MS_CAUSE_1, bmc_ptr->plev, DAM_ROLL);
46 fire_ball_hide(caster_ptr, GF_CAUSE_1, bmc_ptr->dir, bmc_ptr->damage, 0);
50 bool cast_blue_curse_2(player_type *caster_ptr, bmc_type *bmc_ptr)
52 if (!get_aim_dir(caster_ptr, &bmc_ptr->dir))
55 bmc_ptr->damage = monspell_bluemage_damage(caster_ptr, MS_CAUSE_2, bmc_ptr->plev, DAM_ROLL);
56 fire_ball_hide(caster_ptr, GF_CAUSE_2, bmc_ptr->dir, bmc_ptr->damage, 0);
60 bool cast_blue_curse_3(player_type *caster_ptr, bmc_type *bmc_ptr)
62 if (!get_aim_dir(caster_ptr, &bmc_ptr->dir))
65 bmc_ptr->damage = monspell_bluemage_damage(caster_ptr, MS_CAUSE_3, bmc_ptr->plev, DAM_ROLL);
66 fire_ball_hide(caster_ptr, GF_CAUSE_3, bmc_ptr->dir, bmc_ptr->damage, 0);
70 bool cast_blue_curse_4(player_type *caster_ptr, bmc_type *bmc_ptr)
72 if (!get_aim_dir(caster_ptr, &bmc_ptr->dir))
75 bmc_ptr->damage = monspell_bluemage_damage(caster_ptr, MS_CAUSE_4, bmc_ptr->plev, DAM_ROLL);
76 fire_ball_hide(caster_ptr, GF_CAUSE_4, bmc_ptr->dir, bmc_ptr->damage, 0);