/*!
* @brief 生命領域魔法の各処理を行う
+* @param caster_ptr プレーヤーへの参照ポインタ
* @param spell 魔法ID
* @param mode 処理内容 (SPELL_NAME / SPELL_DESC / SPELL_INFO / SPELL_CAST)
* @return SPELL_NAME / SPELL_DESC / SPELL_INFO 時には文字列ポインタを返す。SPELL_CAST時はNULL文字列を返す。
if (cast)
{
if (!get_aim_dir(&dir)) return NULL;
- fire_ball_hide(GF_WOUNDS, dir, damroll(dice, sides), 0);
+ fire_ball_hide(caster_ptr, GF_WOUNDS, dir, damroll(dice, sides), 0);
}
}
break;
if (cast)
{
- lite_area(damroll(dice, sides), rad);
+ lite_area(caster_ptr, damroll(dice, sides), rad);
}
}
break;
if (cast)
{
- detect_traps(rad, TRUE);
- detect_doors(rad);
- detect_stairs(rad);
+ detect_traps(caster_ptr, rad, TRUE);
+ detect_doors(caster_ptr, rad);
+ detect_stairs(caster_ptr, rad);
}
}
break;
if (name) return _("解呪", "Remove Curse");
if (desc) return _("アイテムにかかった弱い呪いを解除する。", "Removes normal curses from equipped items.");
{
- if (cast) (void)remove_curse();
+ if (cast) (void)remove_curse(caster_ptr);
}
break;
if (cast)
{
if (!get_aim_dir(&dir)) return NULL;
- fire_ball_hide(GF_WOUNDS, dir, damroll(dice, sides), 0);
+ fire_ball_hide(caster_ptr, GF_WOUNDS, dir, damroll(dice, sides), 0);
}
}
break;
if (cast)
{
- map_area(rad);
+ map_area(caster_ptr, rad);
}
}
break;
{
if (cast)
{
- turn_undead();
+ turn_undead(caster_ptr);
}
}
break;
if (name) return _("*解呪*", "Dispel Curse");
if (desc) return _("アイテムにかかった強力な呪いを解除する。", "Removes normal and heavy curse from equipped items.");
{
- if (cast) (void)remove_all_curse();
+ if (cast) (void)remove_all_curse(caster_ptr);
}
break;
{
if (cast)
{
- if (!ident_spell(FALSE)) return NULL;
+ if (!ident_spell(caster_ptr, FALSE)) return NULL;
}
}
break;
if (cast)
{
- dispel_undead(damroll(dice, sides));
+ dispel_undead(caster_ptr, damroll(dice, sides));
}
}
break;
if (cast)
{
- charm_monsters(power);
+ charm_monsters(caster_ptr, power);
}
}
break;
if (cast)
{
if (!get_aim_dir(&dir)) return NULL;
- fire_ball_hide(GF_WOUNDS, dir, damroll(dice, sides), 0);
+ fire_ball_hide(caster_ptr, GF_WOUNDS, dir, damroll(dice, sides), 0);
}
}
break;
if (cast)
{
- alter_reality();
+ reserve_alter_reality(caster_ptr);
}
}
break;
if (cast)
{
warding_glyph(caster_ptr);
- glyph_creation();
+ glyph_creation(caster_ptr, caster_ptr->y, caster_ptr->x);
}
}
break;
{
if (cast)
{
- p_ptr->current_floor_ptr->num_repro += MAX_REPRO;
+ caster_ptr->current_floor_ptr->num_repro += MAX_REPRO;
}
}
break;
if (cast)
{
- detect_all(rad);
+ detect_all(caster_ptr, rad);
}
}
break;
if (cast)
{
- mass_genocide_undead(power, TRUE);
+ mass_genocide_undead(caster_ptr, power, TRUE);
}
}
break;
{
if (cast)
{
- wiz_lite(p_ptr, FALSE);
+ wiz_lite(caster_ptr, FALSE);
}
}
break;