#include "angband.h"
#include "cmd-spell.h"
#include "spells-summon.h"
+#include "projection.h"
* @param mode 処理内容 (SPELL_NAME / SPELL_DESC / SPELL_INFO / SPELL_CAST)
* @return SPELL_NAME / SPELL_DESC / SPELL_INFO 時には文字列ポインタを返す。SPELL_CAST時はNULL文字列を返す。
*/
-cptr do_crusade_spell(SPELL_IDX spell, BIT_FLAGS mode)
+concptr do_crusade_spell(SPELL_IDX spell, BIT_FLAGS mode)
{
bool name = (mode == SPELL_NAME) ? TRUE : FALSE;
bool desc = (mode == SPELL_DESC) ? TRUE : FALSE;
if (name) return _("懲罰", "Punishment");
if (desc) return _("電撃のボルトもしくはビームを放つ。", "Fires a bolt or beam of lightning.");
{
- int dice = 3 + (plev - 1) / 5;
- int sides = 4;
+ DICE_NUMBER dice = 3 + (plev - 1) / 5;
+ DICE_SID sides = 4;
if (info) return info_damage(dice, sides, 0);
if (cast)
{
if (desc) return _("ターゲット付近に閃光のボルトを連射する。", "Fires many bolts of light near the target.");
{
- int dice = 3 + (plev - 1) / 9;
- int sides = 2;
+ DICE_NUMBER dice = 3 + (plev - 1) / 9;
+ DICE_SID sides = 2;
if (info) return info_multi_damage_dice(dice, sides);
if (cast)
{
if (desc) return _("視界内の全てのアンデッド及び悪魔にダメージを与え、邪悪なモンスターを恐怖させる。",
"Damages all undead and demons in sight, and scares all evil monsters in sight.");
{
- int sides = plev;
+ DICE_SID sides = plev;
int power = plev;
if (info) return info_damage(1, sides, 0);
if (cast)
{
int base = 25;
- int sides = 3 * plev;
+ DICE_SID sides = 3 * plev;
if (info) return info_duration(base, sides);
if (desc) return _("視界内の全てのアンデッド及び悪魔にダメージを与える。", "Damages all undead and demons in sight.");
{
- int sides = plev * 4;
+ DICE_SID sides = plev * 4;
if (info) return info_damage(1, sides, 0);
if (desc) return _("視界内の全ての邪悪なモンスターにダメージを与える。", "Damages all evil monsters in sight.");
{
- int sides = plev * 4;
+ DICE_SID sides = plev * 4;
if (info) return info_damage(1, sides, 0);
else flg |= PM_NO_PET;
if (!(pet && (plev < 50))) flg |= PM_ALLOW_GROUP;
- if (summon_specific((pet ? -1 : 0), p_ptr->y, p_ptr->x, (plev * 3) / 2, SUMMON_ANGEL, flg))
+ if (summon_specific((pet ? -1 : 0), p_ptr->y, p_ptr->x, (plev * 3) / 2, SUMMON_ANGEL, flg, '\0'))
{
if (pet)
{
{
int base = 12;
- int sides = 4;
+ DICE_SID sides = 4;
if (cast)
{
if (cave_empty_bold2(my, mx)) break;
}
if (attempt < 0) continue;
- summon_specific(-1, my, mx, plev, SUMMON_KNIGHTS, (PM_ALLOW_GROUP | PM_FORCE_PET | PM_HASTE));
+ summon_specific(-1, my, mx, plev, SUMMON_KNIGHTS, (PM_ALLOW_GROUP | PM_FORCE_PET | PM_HASTE), '\0');
}
set_hero(randint1(base) + base, FALSE);
set_blessed(randint1(base) + base, FALSE);