OSDN Git Service

Merge remote-tracking branch 'remotes/hengbandosx/english-mspell-edits' into feature...
[hengband/hengband.git] / src / mspell / mspell-summon.c
index 8402428..8d1a05a 100644 (file)
@@ -1,5 +1,8 @@
 #include "mspell/mspell-summon.h"
+#include "core/disturbance.h"
 #include "effect/effect-characteristics.h"
+#include "effect/effect-processor.h"
+#include "floor/cave.h"
 #include "game-option/birth-options.h"
 #include "monster-floor/monster-summon.h"
 #include "monster-floor/place-monster-types.h"
 #include "monster/monster-description-types.h"
 #include "monster/monster-info.h"
 #include "monster/monster-status.h"
-#include "mspell/monster-spell.h"
 #include "mspell/mspell-util.h"
-#include "player/player-move.h"
+#include "mspell/specified-summon.h"
 #include "spell-kind/spells-launcher.h"
-#include "spell/process-effect.h"
-#include "spell/spells-summon.h"
 #include "spell/spell-types.h"
+#include "spell/spells-summon.h"
+#include "spell/summon-types.h"
+#include "system/floor-type-definition.h"
 #include "view/display-messages.h"
 
+/* summoning number */
+#define S_NUM_6 (easy_band ? 2 : 6)
+#define S_NUM_4 (easy_band ? 1 : 4)
+
 /*!
  * @brief 特定条件のモンスター召喚のみPM_ALLOW_UNIQUEを許可する /
  * @param floor_ptr 現在フロアへの参照ポインタ
@@ -36,7 +43,7 @@ static BIT_FLAGS monster_u_mode(floor_type *floor_ptr, MONSTER_IDX m_idx)
 }
 
 /*!
- * @brief 鷹召喚の処理。 /
+ * @brief 救援召喚の通常処理。同シンボルのモンスターを召喚する。 /
  * @param target_ptr プレーヤーへの参照ポインタ
  * @param y 対象の地点のy座標
  * @param x 対象の地点のx座標
@@ -44,130 +51,48 @@ static BIT_FLAGS monster_u_mode(floor_type *floor_ptr, MONSTER_IDX m_idx)
  * @param m_idx 呪文を唱えるモンスターID
  * @return 召喚したモンスターの数を返す。
  */
-MONSTER_NUMBER summon_EAGLE(player_type *target_ptr, POSITION y, POSITION x, int rlev, MONSTER_IDX m_idx)
+MONSTER_NUMBER summon_Kin(player_type *target_ptr, POSITION y, POSITION x, int rlev, MONSTER_IDX m_idx)
 {
     int count = 0;
-    int num = 4 + randint1(3);
-    for (int k = 0; k < num; k++) {
-        count += summon_specific(target_ptr, m_idx, y, x, rlev, SUMMON_EAGLES, (PM_ALLOW_GROUP | PM_ALLOW_UNIQUE));
+    for (int k = 0; k < 4; k++) {
+        count += summon_specific(target_ptr, m_idx, y, x, rlev, SUMMON_KIN, PM_ALLOW_GROUP);
     }
 
     return count;
 }
 
-/*!
- * @brief インターネット・エクスプローダー召喚の処理。 /
- * @param target_ptr プレーヤーへの参照ポインタ
- * @param y 対象の地点のy座標
- * @param x 対象の地点のx座標
- * @param rlev 呪文を唱えるモンスターのレベル
- * @param m_idx 呪文を唱えるモンスターID
- * @return 召喚したモンスターの数を返す。
- */
-MONSTER_NUMBER summon_IE(player_type *target_ptr, POSITION y, POSITION x, int rlev, MONSTER_IDX m_idx)
+static void decide_summon_kin_caster(
+    player_type *target_ptr, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int target_type, concptr m_name, concptr m_poss, const bool known)
 {
-    BIT_FLAGS mode = 0L;
-    int count = 0;
-    int num = 2 + randint1(1 + rlev / 20);
-    for (int k = 0; k < num; k++) {
-        count += summon_named_creature(target_ptr, m_idx, y, x, MON_IE, mode);
+    floor_type *floor_ptr = target_ptr->current_floor_ptr;
+    monster_type *m_ptr = &floor_ptr->m_list[m_idx];
+    bool see_either = see_monster(target_ptr, m_idx) || see_monster(target_ptr, t_idx);
+    bool mon_to_mon = target_type == MONSTER_TO_MONSTER;
+    bool mon_to_player = target_type == MONSTER_TO_PLAYER;
+    if (m_ptr->r_idx == MON_SERPENT || m_ptr->r_idx == MON_ZOMBI_SERPENT) {
+        monspell_message(target_ptr, m_idx, t_idx, _("%^sが何かをつぶやいた。", "%^s mumbles."),
+            _("%^sがダンジョンの主を召喚した。", "%^s magically summons guardians of dungeons."),
+            _("%^sがダンジョンの主を召喚した。", "%^s magically summons guardians of dungeons."), target_type);
+        return;
     }
 
-    return count;
-}
-
-/*!
- * @brief ダンジョンの主召喚の処理。 /
- * @param target_ptr プレーヤーへの参照ポインタ
- * @param y 対象の地点のy座標
- * @param x 対象の地点のx座標
- * @param rlev 呪文を唱えるモンスターのレベル
- * @param m_idx 呪文を唱えるモンスターID
- * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
- * @return 召喚したモンスターの数を返す。
- */
-MONSTER_NUMBER summon_guardian(player_type *target_ptr, POSITION y, POSITION x, int rlev, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
-{
-    int num = 2 + randint1(3);
-    bool mon_to_mon = (TARGET_TYPE == MONSTER_TO_MONSTER);
-    bool mon_to_player = (TARGET_TYPE == MONSTER_TO_PLAYER);
-
-    if (r_info[MON_JORMUNGAND].cur_num < r_info[MON_JORMUNGAND].max_num && one_in_(6)) {
-        simple_monspell_message(target_ptr, m_idx, t_idx, _("地面から水が吹き出した!", "Water blew off from the ground!"),
-            _("地面から水が吹き出した!", "Water blew off from the ground!"), TARGET_TYPE);
+    if (mon_to_player || (mon_to_mon && known && see_either))
+        disturb(target_ptr, TRUE, TRUE);
 
+    if (target_ptr->blind) {
         if (mon_to_player)
-            fire_ball_hide(target_ptr, GF_WATER_FLOW, 0, 3, 8);
-        else if (mon_to_mon)
-            project(target_ptr, t_idx, 8, y, x, 3, GF_WATER_FLOW, PROJECT_GRID | PROJECT_HIDE, -1);
-    }
-
-    int count = 0;
-    for (int k = 0; k < num; k++) {
-        count += summon_specific(target_ptr, m_idx, y, x, rlev, SUMMON_GUARDIANS, (PM_ALLOW_GROUP | PM_ALLOW_UNIQUE));
-    }
-
-    return count;
-}
-
-/*!
- * @brief ロックのクローン召喚の処理。 /
- * @param target_ptr プレーヤーへの参照ポインタ
- * @param y 対象の地点のy座標
- * @param x 対象の地点のx座標
- * @param m_idx 呪文を唱えるモンスターID
- * @return 召喚したモンスターの数を返す。
- */
-MONSTER_NUMBER summon_LOCKE_CLONE(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx)
-{
-    BIT_FLAGS mode = 0L;
-    int count = 0;
-    int num = randint1(3);
-    for (int k = 0; k < num; k++) {
-        count += summon_named_creature(target_ptr, m_idx, y, x, MON_LOCKE_CLONE, mode);
-    }
-
-    return count;
-}
-
-/*!
- * @brief シラミ召喚の処理。 /
- * @param target_ptr プレーヤーへの参照ポインタ
- * @param y 対象の地点のy座標
- * @param x 対象の地点のx座標
- * @param rlev 呪文を唱えるモンスターのレベル
- * @param m_idx 呪文を唱えるモンスターID
- * @return 召喚したモンスターの数を返す。
- */
-MONSTER_NUMBER summon_LOUSE(player_type *target_ptr, POSITION y, POSITION x, int rlev, MONSTER_IDX m_idx)
-{
-    int count = 0;
-    int num = 2 + randint1(3);
-    for (int k = 0; k < num; k++) {
-        count += summon_specific(target_ptr, m_idx, y, x, rlev, SUMMON_LOUSE, PM_ALLOW_GROUP);
+            msg_format(_("%^sが何かをつぶやいた。", "%^s mumbles."), m_name);
+    } else if (mon_to_player || (mon_to_mon && known && see_either)) {
+        monster_race *r_ptr = &r_info[m_ptr->r_idx];
+#ifdef JP
+        (void)m_poss;
+#endif
+        _(msg_format("%sが魔法で%sを召喚した。", m_name, ((r_ptr->flags1 & RF1_UNIQUE) ? "手下" : "仲間")),
+            msg_format("%^s magically summons %s %s.", m_name, m_poss, ((r_ptr->flags1 & RF1_UNIQUE) ? "minions" : "kin")));
     }
 
-    return count;
-}
-
-/*!
- * @brief 救援召喚の通常処理。同シンボルのモンスターを召喚する。 /
- * @param target_ptr プレーヤーへの参照ポインタ
- * @param y 対象の地点のy座標
- * @param x 対象の地点のx座標
- * @param rlev 呪文を唱えるモンスターのレベル
- * @param m_idx 呪文を唱えるモンスターID
- * @return 召喚したモンスターの数を返す。
- */
-MONSTER_NUMBER summon_Kin(player_type *target_ptr, POSITION y, POSITION x, int rlev, MONSTER_IDX m_idx)
-{
-    int count = 0;
-    for (int k = 0; k < 4; k++) {
-        count += summon_specific(target_ptr, m_idx, y, x, rlev, SUMMON_KIN, PM_ALLOW_GROUP);
-    }
-
-    return count;
+    if (mon_to_mon && known && !see_either)
+        floor_ptr->monster_noise = TRUE;
 }
 
 /*!
@@ -177,16 +102,14 @@ MONSTER_NUMBER summon_Kin(player_type *target_ptr, POSITION y, POSITION x, int r
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
-void spell_RF6_S_KIN(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
+void spell_RF6_S_KIN(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int target_type)
 {
     floor_type *floor_ptr = target_ptr->current_floor_ptr;
     monster_type *m_ptr = &floor_ptr->m_list[m_idx];
-    monster_race *r_ptr = &r_info[m_ptr->r_idx];
     DEPTH rlev = monster_level_idx(floor_ptr, m_idx);
-    int count = 0;
     GAME_TEXT m_name[MAX_NLEN], t_name[MAX_NLEN], m_poss[80];
     monster_name(target_ptr, m_idx, m_name);
     monster_name(target_ptr, t_idx, t_name);
@@ -194,64 +117,57 @@ void spell_RF6_S_KIN(player_type *target_ptr, POSITION y, POSITION x, MONSTER_ID
 
     disturb(target_ptr, TRUE, TRUE);
     bool known = monster_near_player(floor_ptr, m_idx, t_idx);
-    bool see_either = see_monster(target_ptr, m_idx) || see_monster(target_ptr, t_idx);
-    bool mon_to_mon = (TARGET_TYPE == MONSTER_TO_MONSTER);
-    bool mon_to_player = (TARGET_TYPE == MONSTER_TO_PLAYER);
-    if (m_ptr->r_idx == MON_SERPENT || m_ptr->r_idx == MON_ZOMBI_SERPENT) {
-        monspell_message(target_ptr, m_idx, t_idx, _("%^sが何かをつぶやいた。", "%^s mumbles."),
-            _("%^sがダンジョンの主を召喚した。", "%^s magically summons guardians of dungeons."),
-            _("%^sがダンジョンの主を召喚した。", "%^s magically summons guardians of dungeons."), TARGET_TYPE);
-    } else {
-        if (mon_to_player || (mon_to_mon && known && see_either))
-            disturb(target_ptr, TRUE, TRUE);
-
-        if (target_ptr->blind) {
-            if (mon_to_player)
-                msg_format(_("%^sが何かをつぶやいた。", "%^s mumbles."), m_name);
-        } else {
-            if (mon_to_player || (mon_to_mon && known && see_either)) {
-                _(msg_format("%sが魔法で%sを召喚した。", m_name, ((r_ptr->flags1 & RF1_UNIQUE) ? "手下" : "仲間")),
-                    msg_format("%^s magically summons %s %s.", m_name, m_poss, ((r_ptr->flags1 & RF1_UNIQUE) ? "minions" : "kin")));
-            }
-        }
-
-        if (mon_to_mon && known && !see_either)
-            floor_ptr->monster_noise = TRUE;
-    }
-
+    decide_summon_kin_caster(target_ptr, m_idx, t_idx, target_type, m_name, m_poss, known);
+    int count = 0;
     switch (m_ptr->r_idx) {
     case MON_MENELDOR:
     case MON_GWAIHIR:
     case MON_THORONDOR:
         count += summon_EAGLE(target_ptr, y, x, rlev, m_idx);
         break;
-
     case MON_BULLGATES:
-        count += summon_IE(target_ptr, y, x, rlev, m_idx);
+        count += summon_EDGE(target_ptr, y, x, rlev, m_idx);
         break;
-
     case MON_SERPENT:
     case MON_ZOMBI_SERPENT:
-        count += summon_guardian(target_ptr, y, x, rlev, m_idx, t_idx, TARGET_TYPE);
+        count += summon_guardian(target_ptr, y, x, rlev, m_idx, t_idx, target_type);
         break;
-
     case MON_CALDARM:
         count += summon_LOCKE_CLONE(target_ptr, y, x, m_idx);
         break;
-
     case MON_LOUSY:
         count += summon_LOUSE(target_ptr, y, x, rlev, m_idx);
         break;
-
+    case MON_VAIF:
+        count += summon_MOAI(target_ptr, y, x, rlev, m_idx);
+        break;
+    case MON_DEMON_SLAYER_SENIOR:
+        count += summon_DEMON_SLAYER(target_ptr, y, x, m_idx);
+        break;
+    case MON_ALDUIN:
+        count += summon_HIGHEST_DRAGON(target_ptr, y, x, m_idx);
+        break;
+    case MON_MIRAAK:
+        count += summon_APOCRYPHA(target_ptr, y, x, m_idx);
+        break;
+    case MON_IMHOTEP:
+        count += summon_PYRAMID(target_ptr, y, x, rlev, m_idx);
+        break;
+    case MON_JOBZ:
+        count += summon_EYE_PHORN(target_ptr, y, x, rlev, m_idx);
+        break;
+    case MON_QUEEN_VESPOID:
+        count += summon_VESPOID(target_ptr, y, x, rlev, m_idx);
+        break;
     default:
         count += summon_Kin(target_ptr, y, x, rlev, m_idx);
         break;
     }
 
-    if (target_ptr->blind && count && mon_to_player)
+    if (target_ptr->blind && count && (target_type == MONSTER_TO_PLAYER))
         msg_print(_("多くのものが間近に現れた音がする。", "You hear many things appear nearby."));
 
-    if (known && !see_monster(target_ptr, t_idx) && count && mon_to_mon)
+    if (known && !see_monster(target_ptr, t_idx) && count && (target_type == MONSTER_TO_MONSTER))
         floor_ptr->monster_noise = TRUE;
 }
 
@@ -262,7 +178,7 @@ void spell_RF6_S_KIN(player_type *target_ptr, POSITION y, POSITION x, MONSTER_ID
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_CYBER(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
@@ -298,7 +214,7 @@ void spell_RF6_S_CYBER(player_type *target_ptr, POSITION y, POSITION x, MONSTER_
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_MONSTER(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
@@ -333,7 +249,7 @@ void spell_RF6_S_MONSTER(player_type *target_ptr, POSITION y, POSITION x, MONSTE
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_MONSTERS(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
@@ -369,7 +285,7 @@ void spell_RF6_S_MONSTERS(player_type *target_ptr, POSITION y, POSITION x, MONST
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_ANT(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
@@ -400,7 +316,7 @@ void spell_RF6_S_ANT(player_type *target_ptr, POSITION y, POSITION x, MONSTER_ID
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_SPIDER(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
@@ -431,7 +347,7 @@ void spell_RF6_S_SPIDER(player_type *target_ptr, POSITION y, POSITION x, MONSTER
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_HOUND(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
@@ -463,7 +379,7 @@ void spell_RF6_S_HOUND(player_type *target_ptr, POSITION y, POSITION x, MONSTER_
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_HYDRA(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
@@ -494,7 +410,7 @@ void spell_RF6_S_HYDRA(player_type *target_ptr, POSITION y, POSITION x, MONSTER_
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_ANGEL(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
@@ -536,7 +452,7 @@ void spell_RF6_S_ANGEL(player_type *target_ptr, POSITION y, POSITION x, MONSTER_
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_DEMON(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
@@ -567,7 +483,7 @@ void spell_RF6_S_DEMON(player_type *target_ptr, POSITION y, POSITION x, MONSTER_
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_UNDEAD(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
@@ -598,7 +514,7 @@ void spell_RF6_S_UNDEAD(player_type *target_ptr, POSITION y, POSITION x, MONSTER
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_DRAGON(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
@@ -623,72 +539,13 @@ void spell_RF6_S_DRAGON(player_type *target_ptr, POSITION y, POSITION x, MONSTER
 }
 
 /*!
- * @brief ナズグル戦隊召喚の処理。 /
- * @param target_ptr プレーヤーへの参照ポインタ
- * @param y 対象の地点のy座標
- * @param x 対象の地点のx座標
- * @param m_idx 呪文を唱えるモンスターID
- * @return 召喚したモンスターの数を返す。
- */
-MONSTER_NUMBER summon_NAZGUL(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx)
-{
-    BIT_FLAGS mode = 0L;
-    POSITION cy = y;
-    POSITION cx = x;
-    GAME_TEXT m_name[MAX_NLEN];
-    monster_name(target_ptr, m_idx, m_name);
-
-    if (target_ptr->blind)
-        msg_format(_("%^sが何かをつぶやいた。", "%^s mumbles."), m_name);
-    else
-        msg_format(_("%^sが魔法で幽鬼戦隊を召喚した!", "%^s magically summons rangers of Nazgul!"), m_name);
-
-    msg_print(NULL);
-
-    int count = 0;
-    for (int k = 0; k < 30; k++) {
-        if (!summon_possible(target_ptr, cy, cx) || !is_cave_empty_bold(target_ptr, cy, cx)) {
-            int j;
-            for (j = 100; j > 0; j--) {
-                scatter(target_ptr, &cy, &cx, y, x, 2, 0);
-                if (is_cave_empty_bold(target_ptr, cy, cx))
-                    break;
-            }
-
-            if (!j)
-                break;
-        }
-
-        if (!is_cave_empty_bold(target_ptr, cy, cx))
-            continue;
-
-        if (!summon_named_creature(target_ptr, m_idx, cy, cx, MON_NAZGUL, mode))
-            continue;
-
-        y = cy;
-        x = cx;
-        count++;
-        if (count == 1)
-            msg_format(_("「幽鬼戦隊%d号、ナズグル・ブラック!」", "A Nazgul says 'Nazgul-Rangers Number %d, Nazgul-Black!'"), count);
-        else
-            msg_format(_("「同じく%d号、ナズグル・ブラック!」", "Another one says 'Number %d, Nazgul-Black!'"), count);
-
-        msg_print(NULL);
-    }
-
-    msg_format(_("「%d人そろって、リングレンジャー!」", "They say 'The %d meets! We are the Ring-Ranger!'."), count);
-    msg_print(NULL);
-    return count;
-}
-
-/*!
  * @brief RF6_S_HI_UNDEADの処理。強力なアンデッド召喚。 /
  * @param target_ptr プレーヤーへの参照ポインタ
  * @param y 対象の地点のy座標
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_HI_UNDEAD(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
@@ -736,7 +593,7 @@ void spell_RF6_S_HI_UNDEAD(player_type *target_ptr, POSITION y, POSITION x, MONS
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_HI_DRAGON(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
@@ -773,7 +630,7 @@ void spell_RF6_S_HI_DRAGON(player_type *target_ptr, POSITION y, POSITION x, MONS
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_AMBERITES(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)
@@ -806,7 +663,7 @@ void spell_RF6_S_AMBERITES(player_type *target_ptr, POSITION y, POSITION x, MONS
  * @param x 対象の地点のx座標
  * @param m_idx 呪文を唱えるモンスターID
  * @param t_idx 呪文を受けるモンスターID。プレイヤーの場合はdummyで0とする。
- * @param TARGET_TYPE プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
+ * @param target_type プレイヤーを対象とする場合MONSTER_TO_PLAYER、モンスターを対象とする場合MONSTER_TO_MONSTER
  * @return 召喚したモンスターの数を返す。
  */
 void spell_RF6_S_UNIQUE(player_type *target_ptr, POSITION y, POSITION x, MONSTER_IDX m_idx, MONSTER_IDX t_idx, int TARGET_TYPE)