3 void spell_RF4_SHRIEK(int m_idx, cptr m_name)
6 msg_format(_("%^s¤¬¤«¤ó¹â¤¤¶âÀÚ¤êÀ¼¤ò¤¢¤²¤¿¡£", "%^s makes a high pitched shriek."), m_name);
7 aggravate_monsters(m_idx);
10 void spell_RF4_DISPEL(bool blind, cptr m_name)
15 msg_format(_("%^s¤¬²¿¤«¤òÎ϶¯¤¯¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles powerfully."), m_name);
17 msg_format(_("%^s¤¬ËâÎϾõî¤Î¼öʸ¤òÇ°¤¸¤¿¡£", "%^s invokes a dispel magic."), m_name);
20 if (p_ptr->riding) dispel_monster_status(p_ptr->riding);
23 if ((p_ptr->pseikaku == SEIKAKU_COMBAT) || (inventory[INVEN_BOW].name1 == ART_CRIMSON))
24 msg_print("¤ä¤ê¤ä¤¬¤Ã¤¿¤Ê¡ª");
26 learn_spell(MS_DISPEL);
29 int spell_RF4_ROCKET(bool blind, cptr m_name, monster_type* m_ptr, int y, int x, int m_idx, bool learnable)
35 msg_format(_("%^s¤¬²¿¤«¤ò¼Í¤Ã¤¿¡£", "%^s shoots something."), m_name);
37 msg_format(_("%^s¤¬¥í¥±¥Ã¥È¤òȯ¼Í¤·¤¿¡£", "%^s fires a rocket."), m_name);
39 dam = ((m_ptr->hp / 4) > 800 ? 800 : (m_ptr->hp / 4));
40 breath(y, x, m_idx, GF_ROCKET,
41 dam, 2, FALSE, MS_ROCKET, learnable);
42 update_smart_learn(m_idx, DRS_SHARD);
46 int spell_RF4_SHOOT(bool blind, cptr m_name, monster_race* r_ptr, int m_idx, bool learnable)
51 msg_format(_("%^s¤¬´ñ̯¤Ê²»¤òȯ¤·¤¿¡£", "%^s makes a strange noise."), m_name);
53 msg_format(_("%^s¤¬Ìð¤òÊü¤Ã¤¿¡£", "%^s fires an arrow."), m_name);
55 dam = damroll(r_ptr->blow[0].d_dice, r_ptr->blow[0].d_side);
56 bolt(m_idx, GF_ARROW, dam, MS_SHOOT, learnable);
57 update_smart_learn(m_idx, DRS_REFLECT);
61 int spell_RF4_BREATH(int GF_TYPE, bool blind, cptr m_name, monster_type* m_ptr, int y, int x, int m_idx, bool learnable)
63 int dam, ms_type, drs_type;
65 bool smart_learn = TRUE;
70 dam = ((m_ptr->hp / 3) > 1600 ? 1600 : (m_ptr->hp / 3));
71 type_s = _("»À", "acid");
76 dam = ((m_ptr->hp / 3) > 1600 ? 1600 : (m_ptr->hp / 3));
77 type_s = _("°ðºÊ", "lightning");
82 dam = ((m_ptr->hp / 3) > 1600 ? 1600 : (m_ptr->hp / 3));
83 type_s = _("²Ð±ê", "fire");
88 dam = ((m_ptr->hp / 3) > 1600 ? 1600 : (m_ptr->hp / 3));
89 type_s = _("Î䵤", "frost");
94 dam = ((m_ptr->hp / 3) > 800 ? 800 : (m_ptr->hp / 3));
95 type_s = _("¥¬¥¹", "gas");
100 dam = ((m_ptr->hp / 6) > 550 ? 550 : (m_ptr->hp / 6));
101 type_s = _("ÃϹö", "nether");
102 ms_type = MS_BR_NETHER;
106 dam = ((m_ptr->hp / 6) > 400 ? 400 : (m_ptr->hp / 6));
107 type_s = _("Á®¸÷", "light");
108 ms_type = MS_BR_LITE;
112 dam = ((m_ptr->hp / 6) > 400 ? 400 : (m_ptr->hp / 6));
113 type_s = _("°Å¹õ", "darkness");
114 ms_type = MS_BR_DARK;
118 dam = ((m_ptr->hp / 6) > 450 ? 450 : (m_ptr->hp / 6));
119 type_s = _("º®Íð", "confusion");
120 ms_type = MS_BR_CONF;
124 dam = ((m_ptr->hp / 6) > 450 ? 450 : (m_ptr->hp / 6));
125 type_s = _("¹ì²»", "sound");
126 ms_type = MS_BR_SOUND;
127 drs_type = DRS_SOUND;
130 dam = ((m_ptr->hp / 6) > 600 ? 600 : (m_ptr->hp / 6));
131 type_s = _("¥«¥ª¥¹", "chaos");
132 ms_type = MS_BR_CHAOS;
133 drs_type = DRS_CHAOS;
136 dam = ((m_ptr->hp / 6) > 500 ? 500 : (m_ptr->hp / 6));
137 type_s = _("Îô²½", "disenchantment");
138 ms_type = MS_BR_DISEN;
139 drs_type = DRS_DISEN;
142 dam = ((m_ptr->hp / 3) > 250 ? 250 : (m_ptr->hp / 3));
143 type_s = _("°ø²Ìº®Íð", "nexus");
144 ms_type = MS_BR_NEXUS;
145 drs_type = DRS_NEXUS;
148 dam = ((m_ptr->hp / 3) > 150 ? 150 : (m_ptr->hp / 3));
149 type_s = _("»þ´ÖµÕž", "time");
150 ms_type = MS_BR_TIME;
154 dam = ((m_ptr->hp / 6) > 200 ? 200 : (m_ptr->hp / 6));
155 type_s = _("ÃÙÆß", "inertia");
156 ms_type = MS_BR_INERTIA;
160 dam = ((m_ptr->hp / 3) > 200 ? 200 : (m_ptr->hp / 3));
161 type_s = _("½ÅÎÏ", "gravity");
162 ms_type = MS_BR_GRAVITY;
166 dam = ((m_ptr->hp / 6) > 500 ? 500 : (m_ptr->hp / 6));
167 type_s = _("ÇËÊÒ", "shards");
168 ms_type = MS_BR_SHARDS;
169 drs_type = DRS_SHARD;
172 dam = ((m_ptr->hp / 6) > 150 ? 150 : (m_ptr->hp / 6));
173 type_s = _("¥×¥é¥º¥Þ", "plasma");
174 ms_type = MS_BR_PLASMA;
178 dam = ((m_ptr->hp / 6) > 200 ? 200 : (m_ptr->hp / 6));
179 type_s = _("¥Õ¥©¡¼¥¹", "force");
180 ms_type = MS_BR_FORCE;
184 dam = ((m_ptr->hp / 3) > 250 ? 250 : (m_ptr->hp / 3));
185 type_s = _("ËâÎÏ", "mana");
186 ms_type = MS_BR_MANA;
190 dam = ((m_ptr->hp / 3) > 800 ? 800 : (m_ptr->hp / 3));
191 type_s = _("Êü¼ÍÀÇÑ´þʪ", "toxic waste");
192 ms_type = MS_BR_NUKE;
195 case GF_DISINTEGRATE:
196 dam = ((m_ptr->hp / 6) > 150 ? 150 : (m_ptr->hp / 6));
197 type_s = _("ʬ²ò", "disintegration");
198 ms_type = MS_BR_DISI;
206 if (m_ptr->r_idx == MON_JAIAN && GF_TYPE == GF_SOUND)
208 msg_format(_("¡Ö¥Ü¥©¥¨¡Á¡Á¡Á¡Á¡Á¡Á¡×", "'Booooeeeeee'"));
210 else if (m_ptr->r_idx == MON_BOTEI && GF_TYPE == GF_SHARDS)
212 msg_format(_("¡Ö¥ÜÄë¥Ó¥ë¥«¥Ã¥¿¡¼¡ª¡ª¡ª¡×", "'Boty-Build cutter!!!'"));
216 msg_format(_("%^s¤¬²¿¤«¤Î¥Ö¥ì¥¹¤òÅǤ¤¤¿¡£", "%^s breathes."), m_name);
220 msg_format(_("%^s¤¬%^s¤Î¥Ö¥ì¥¹¤òÅǤ¤¤¿¡£", "%^s breathes %^s."), m_name, type_s);
223 breath(y, x, m_idx, GF_TYPE, dam, 0, TRUE, ms_type, learnable);
224 if (smart_learn) update_smart_learn(m_idx, drs_type);
228 int spell_RF4_BA_CHAO(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
234 msg_format(_("%^s¤¬¶²¤í¤·¤²¤Ë¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles frighteningly."), m_name);
236 msg_format(_("%^s¤¬½ã¥í¥°¥ë¥¹¤òÊü¤Ã¤¿¡£", "%^s invokes a raw Logrus."), m_name);
238 dam = ((r_ptr->flags2 & RF2_POWERFUL) ? (rlev * 3) : (rlev * 2)) + damroll(10, 10);
240 breath(y, x, m_idx, GF_CHAOS, dam, 4, FALSE, MS_BALL_CHAOS, learnable);
241 update_smart_learn(m_idx, DRS_CHAOS);
245 int spell_RF4_BA_NUKE(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
251 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
253 msg_format(_("%^s¤¬Êü¼Íǽµå¤òÊü¤Ã¤¿¡£", "%^s casts a ball of radiation."), m_name);
255 dam = (rlev + damroll(10, 6)) * ((r_ptr->flags2 & RF2_POWERFUL) ? 2 : 1);
257 breath(y, x, m_idx, GF_NUKE, dam, 2, FALSE, MS_BALL_NUKE, learnable);
258 update_smart_learn(m_idx, DRS_POIS);
262 int spell_RF5_BA_ACID(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
268 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
270 msg_format(_("%^s¤¬¥¢¥·¥Ã¥É¡¦¥Ü¡¼¥ë¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts an acid ball."), m_name);
272 if (r_ptr->flags2 & RF2_POWERFUL)
275 dam = (rlev * 4) + 50 + damroll(10, 10);
280 dam = (randint1(rlev * 3) + 15);
282 breath(y, x, m_idx, GF_ACID, dam, rad, FALSE, MS_BALL_ACID, learnable);
283 update_smart_learn(m_idx, DRS_ACID);
287 int spell_RF5_BA_ELEC(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
293 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
295 msg_format(_("%^s¤¬¥µ¥ó¥À¡¼¡¦¡¦¥Ü¡¼¥ë¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a lightning ball."), m_name);
297 if (r_ptr->flags2 & RF2_POWERFUL)
300 dam = (rlev * 4) + 50 + damroll(10, 10);
305 dam = (randint1(rlev * 3 / 2) + 8);
307 breath(y, x, m_idx, GF_ELEC, dam, rad, FALSE, MS_BALL_ELEC, learnable);
308 update_smart_learn(m_idx, DRS_ELEC);
312 int spell_RF5_BA_FIRE(monster_type* m_ptr, bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
317 if (m_ptr->r_idx == MON_ROLENTO)
320 msg_format(_("%s¤¬²¿¤«¤òÅꤲ¤¿¡£", "%^s throws something."), m_name);
322 msg_format(_("%s¤Ï¼êÜØÃƤòÅꤲ¤¿¡£", "%^s throws a hand grenade."), m_name);
327 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
329 msg_format(_("%^s¤¬¥Õ¥¡¥¤¥¢¡¦¥Ü¡¼¥ë¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a fire ball."), m_name);
332 if (r_ptr->flags2 & RF2_POWERFUL)
335 dam = (rlev * 4) + 50 + damroll(10, 10);
340 dam = (randint1(rlev * 7 / 2) + 10);
342 breath(y, x, m_idx, GF_FIRE, dam, rad, FALSE, MS_BALL_FIRE, learnable);
343 update_smart_learn(m_idx, DRS_FIRE);
347 int spell_RF5_BA_COLD(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
353 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
355 msg_format(_("%^s¤¬¥¢¥¤¥¹¡¦¥Ü¡¼¥ë¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a frost ball."), m_name);
357 if (r_ptr->flags2 & RF2_POWERFUL)
360 dam = (rlev * 4) + 50 + damroll(10, 10);
365 dam = (randint1(rlev * 3 / 2) + 10);
367 breath(y, x, m_idx, GF_COLD, dam, rad, FALSE, MS_BALL_COLD, learnable);
368 update_smart_learn(m_idx, DRS_COLD);
372 int spell_RF5_BA_POIS(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
378 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
380 msg_format(_("%^s¤¬°½±À¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a stinking cloud."), m_name);
382 dam = damroll(12, 2) * ((r_ptr->flags2 & RF2_POWERFUL) ? 2 : 1);
383 breath(y, x, m_idx, GF_POIS, dam, 2, FALSE, MS_BALL_POIS, learnable);
384 update_smart_learn(m_idx, DRS_POIS);
388 int spell_RF5_BA_NETH(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
393 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
395 msg_format(_("%^s¤¬ÃϹöµå¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a nether ball."), m_name);
397 dam = 50 + damroll(10, 10) + (rlev * ((r_ptr->flags2 & RF2_POWERFUL) ? 2 : 1));
398 breath(y, x, m_idx, GF_NETHER, dam, 2, FALSE, MS_BALL_NETHER, learnable);
399 update_smart_learn(m_idx, DRS_NETH);
403 int spell_RF5_BA_WATE(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
409 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
411 msg_format(_("%^s¤¬Î®¤ì¤ë¤è¤¦¤Ê¿È¿¶¤ê¤ò¤·¤¿¡£", "%^s gestures fluidly."), m_name);
413 msg_print(_("¤¢¤Ê¤¿¤Ï±²´¬¤¤Ë°û¤ß¹þ¤Þ¤ì¤¿¡£", "You are engulfed in a whirlpool."));
415 dam = ((r_ptr->flags2 & RF2_POWERFUL) ? randint1(rlev * 3) : randint1(rlev * 2)) + 50;
416 breath(y, x, m_idx, GF_WATER, dam, 4, FALSE, MS_BALL_WATER, learnable);
420 int spell_RF5_BA_MANA(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
425 msg_format(_("%^s¤¬²¿¤«¤òÎ϶¯¤¯¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles powerfully."), m_name);
427 msg_format(_("%^s¤¬ËâÎϤÎÍò¤Î¼öʸ¤òÇ°¤¸¤¿¡£", "%^s invokes a mana storm."), m_name);
429 dam = (rlev * 4) + 50 + damroll(10, 10);
430 breath(y, x, m_idx, GF_MANA, dam, 4, FALSE, MS_BALL_MANA, learnable);
434 int spell_RF5_BA_DARK(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
440 msg_format(_("%^s¤¬²¿¤«¤òÎ϶¯¤¯¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles powerfully."), m_name);
442 msg_format(_("%^s¤¬°Å¹õ¤ÎÍò¤Î¼öʸ¤òÇ°¤¸¤¿¡£", "%^s invokes a darkness storm."), m_name);
444 dam = (rlev * 4) + 50 + damroll(10, 10);
445 breath(y, x, m_idx, GF_DARK, dam, 4, FALSE, MS_BALL_DARK, learnable);
446 update_smart_learn(m_idx, DRS_DARK);
450 int spell_RF5_DRAIN_MANA(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
455 dam = (randint1(rlev) / 2) + 1;
456 breath(y, x, m_idx, GF_DRAIN_MANA, dam, 0, FALSE, MS_DRAIN_MANA, learnable);
457 update_smart_learn(m_idx, DRS_MANA);
461 int spell_RF5_MIND_BLAST(bool seen, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
466 msg_print(_("²¿¤«¤¬¤¢¤Ê¤¿¤ÎÀº¿À¤ËÇ°¤òÊü¤Ã¤Æ¤¤¤ë¤è¤¦¤À¡£", "You feel something focusing on your mind."));
468 msg_format(_("%^s¤¬¤¢¤Ê¤¿¤ÎÆ·¤ò¤¸¤Ã¤È¤Ë¤é¤ó¤Ç¤¤¤ë¡£", "%^s gazes deep into your eyes."), m_name);
471 breath(y, x, m_idx, GF_MIND_BLAST, dam, 0, FALSE, MS_MIND_BLAST, learnable);
475 int spell_RF5_BRAIN_SMASH(bool seen, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
480 msg_print(_("²¿¤«¤¬¤¢¤Ê¤¿¤ÎÀº¿À¤ËÇ°¤òÊü¤Ã¤Æ¤¤¤ë¤è¤¦¤À¡£", "You feel something focusing on your mind."));
482 msg_format(_("%^s¤¬¤¢¤Ê¤¿¤ÎÆ·¤ò¤¸¤Ã¤È¸«¤Æ¤¤¤ë¡£", "%^s looks deep into your eyes."), m_name);
484 dam = damroll(12, 12);
485 breath(y, x, m_idx, GF_BRAIN_SMASH, dam, 0, FALSE, MS_BRAIN_SMASH, learnable);
489 int spell_RF5_CAUSE_1(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
495 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
497 msg_format(_("%^s¤¬¤¢¤Ê¤¿¤ò»Ø¤µ¤·¤Æ¼ö¤Ã¤¿¡£", "%^s points at you and curses."), m_name);
500 breath(y, x, m_idx, GF_CAUSE_1, dam, 0, FALSE, MS_CAUSE_1, learnable);
504 int spell_RF5_CAUSE_2(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
510 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
512 msg_format(_("%^s¤¬¤¢¤Ê¤¿¤ò»Ø¤µ¤·¤Æ¶²¤í¤·¤²¤Ë¼ö¤Ã¤¿¡£", "%^s points at you and curses horribly."), m_name);
515 breath(y, x, m_idx, GF_CAUSE_2, dam, 0, FALSE, MS_CAUSE_2, learnable);
519 int spell_RF5_CAUSE_3(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
525 msg_format(_("%^s¤¬²¿¤«¤òÂçÀ¼¤Ç¶«¤ó¤À¡£", "%^s mumbles loudly."), m_name);
527 msg_format(_("%^s¤¬¤¢¤Ê¤¿¤ò»Ø¤µ¤·¤Æ¶²¤í¤·¤²¤Ë¼öʸ¤ò¾§¤¨¤¿¡ª", "%^s points at you, incanting terribly!"), m_name);
529 dam = damroll(10, 15);
530 breath(y, x, m_idx, GF_CAUSE_3, dam, 0, FALSE, MS_CAUSE_3, learnable);
534 int spell_RF5_CAUSE_4(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
540 msg_format(_("%^s¤¬¡Ö¤ªÁ°¤Ï´û¤Ë»à¤ó¤Ç¤¤¤ë¡×¤È¶«¤ó¤À¡£", "%^s screams the word 'DIE!'"), m_name);
542 msg_format(_("%^s¤¬¤¢¤Ê¤¿¤ÎÈ빦¤òÆͤ¤¤Æ¡Ö¤ªÁ°¤Ï´û¤Ë»à¤ó¤Ç¤¤¤ë¡×¤È¶«¤ó¤À¡£",
543 "%^s points at you, screaming the word DIE!"), m_name);
545 dam = damroll(15, 15);
546 breath(y, x, m_idx, GF_CAUSE_4, dam, 0, FALSE, MS_CAUSE_4, learnable);
550 int spell_RF5_BO_ACID(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
556 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
558 msg_format(_("%^s¤¬¥¢¥·¥Ã¥É¡¦¥Ü¥ë¥È¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a acid bolt."), m_name);
560 dam = (damroll(7, 8) + (rlev / 3)) * ((r_ptr->flags2 & RF2_POWERFUL) ? 2 : 1);
561 bolt(m_idx, GF_ACID, dam, MS_BOLT_ACID, learnable);
562 update_smart_learn(m_idx, DRS_ACID);
563 update_smart_learn(m_idx, DRS_REFLECT);
567 int spell_RF5_BO_ELEC(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
573 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
575 msg_format(_("%^s¤¬¥µ¥ó¥À¡¼¡¦¥Ü¥ë¥È¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a lightning bolt."), m_name);
577 dam = (damroll(4, 8) + (rlev / 3)) * ((r_ptr->flags2 & RF2_POWERFUL) ? 2 : 1);
578 bolt(m_idx, GF_ELEC, dam, MS_BOLT_ELEC, learnable);
579 update_smart_learn(m_idx, DRS_ELEC);
580 update_smart_learn(m_idx, DRS_REFLECT);
584 int spell_RF5_BO_FIRE(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
590 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
592 msg_format(_("%^s¤¬¥Õ¥¡¥¤¥¢¡¦¥Ü¥ë¥È¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a fire bolt."), m_name);
594 dam = (damroll(9, 8) + (rlev / 3)) * ((r_ptr->flags2 & RF2_POWERFUL) ? 2 : 1);
595 bolt(m_idx, GF_FIRE, dam, MS_BOLT_FIRE, learnable);
596 update_smart_learn(m_idx, DRS_FIRE);
597 update_smart_learn(m_idx, DRS_REFLECT);
601 int spell_RF5_BO_COLD(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
607 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
609 msg_format(_("%^s¤¬¥¢¥¤¥¹¡¦¥Ü¥ë¥È¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a frost bolt."), m_name);
611 dam = (damroll(6, 8) + (rlev / 3)) * ((r_ptr->flags2 & RF2_POWERFUL) ? 2 : 1);
612 bolt(m_idx, GF_COLD, dam, MS_BOLT_COLD, learnable);
613 update_smart_learn(m_idx, DRS_COLD);
614 update_smart_learn(m_idx, DRS_REFLECT);
619 int spell_RF5_BA_LITE(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
625 msg_format(_("%^s¤¬²¿¤«¤òÎ϶¯¤¯¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles powerfully."), m_name);
627 msg_format(_("%^s¤¬¥¹¥¿¡¼¥Ð¡¼¥¹¥È¤Î¼öʸ¤òÇ°¤¸¤¿¡£", "%^s invokes a starburst."), m_name);
629 dam = (rlev * 4) + 50 + damroll(10, 10);
630 breath(y, x, m_idx, GF_LITE, dam, 4, FALSE, MS_STARBURST, learnable);
631 update_smart_learn(m_idx, DRS_LITE);
636 int spell_RF5_BO_NETH(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
642 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
644 msg_format(_("%^s¤¬ÃϹö¤ÎÌð¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a nether bolt."), m_name);
646 dam = 30 + damroll(5, 5) + (rlev * 4) / ((r_ptr->flags2 & RF2_POWERFUL) ? 2 : 3);
647 bolt(m_idx, GF_NETHER, dam, MS_BOLT_NETHER, learnable);
648 update_smart_learn(m_idx, DRS_NETH);
649 update_smart_learn(m_idx, DRS_REFLECT);
653 int spell_RF5_BO_WATE(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
659 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
661 msg_format(_("%^s¤¬¥¦¥©¡¼¥¿¡¼¡¦¥Ü¥ë¥È¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a water bolt."), m_name);
663 dam = damroll(10, 10) + (rlev * 3 / ((r_ptr->flags2 & RF2_POWERFUL) ? 2 : 3));
664 bolt(m_idx, GF_WATER, dam, MS_BOLT_WATER, learnable);
665 update_smart_learn(m_idx, DRS_REFLECT);
669 int spell_RF5_BO_MANA(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
674 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
676 msg_format(_("%^s¤¬ËâÎϤÎÌð¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a mana bolt."), m_name);
678 dam = randint1(rlev * 7 / 2) + 50;
679 bolt(m_idx, GF_MANA, dam, MS_BOLT_MANA, learnable);
680 update_smart_learn(m_idx, DRS_REFLECT);
684 int spell_RF5_BO_PLAS(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
689 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
692 msg_format(_("%^s¤¬¥×¥é¥º¥Þ¡¦¥Ü¥ë¥È¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a plasma bolt."), m_name);
694 dam = 10 + damroll(8, 7) + (rlev * 3 / ((r_ptr->flags2 & RF2_POWERFUL) ? 2 : 3));
695 bolt(m_idx, GF_PLASMA, dam, MS_BOLT_PLASMA, learnable);
696 update_smart_learn(m_idx, DRS_REFLECT);
700 int spell_RF5_BO_ICEE(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
705 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
707 msg_format(_("%^s¤¬¶Ë´¨¤ÎÌð¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts an ice bolt."), m_name);
709 dam = damroll(6, 6) + (rlev * 3 / ((r_ptr->flags2 & RF2_POWERFUL) ? 2 : 3));
710 bolt(m_idx, GF_ICE, dam, MS_BOLT_ICE, learnable);
711 update_smart_learn(m_idx, DRS_COLD);
712 update_smart_learn(m_idx, DRS_REFLECT);
717 int spell_RF5_MISSILE(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx, bool learnable)
722 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
724 msg_format(_("%^s¤¬¥Þ¥¸¥Ã¥¯¡¦¥ß¥µ¥¤¥ë¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a magic missile."), m_name);
726 dam = damroll(2, 6) + (rlev / 3);
727 bolt(m_idx, GF_MISSILE, dam, MS_MAGIC_MISSILE, learnable);
728 update_smart_learn(m_idx, DRS_REFLECT);
732 void spell_RF5_SCARE(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx)
737 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¯¤È¡¢¶²¤í¤·¤²¤Ê²»¤¬Ê¹¤³¤¨¤¿¡£", "%^s mumbles, and you hear scary noises."), m_name);
739 msg_format(_("%^s¤¬¶²¤í¤·¤²¤Ê¸¸³Ð¤òºî¤ê½Ð¤·¤¿¡£", "%^s casts a fearful illusion."), m_name);
741 if (p_ptr->resist_fear)
743 msg_print(_("¤·¤«¤·¶²Éݤ˿¯¤µ¤ì¤Ê¤«¤Ã¤¿¡£", "You refuse to be frightened."));
745 else if (randint0(100 + rlev / 2) < p_ptr->skill_sav)
747 msg_print(_("¤·¤«¤·¶²Éݤ˿¯¤µ¤ì¤Ê¤«¤Ã¤¿¡£", "You refuse to be frightened."));
751 (void)set_afraid(p_ptr->afraid + randint0(4) + 4);
753 learn_spell(MS_SCARE);
754 update_smart_learn(m_idx, DRS_FEAR);
757 void spell_RF5_BLIND(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx)
762 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
764 msg_format(_("%^s¤¬¼öʸ¤ò¾§¤¨¤Æ¤¢¤Ê¤¿¤ÎÌܤò¤¯¤é¤Þ¤·¤¿¡ª",
765 "%^s casts a spell, burning your eyes!"), m_name);
767 if (p_ptr->resist_blind)
769 msg_print(_("¤·¤«¤·¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡ª", "You are unaffected!"));
771 else if (randint0(100 + rlev / 2) < p_ptr->skill_sav)
773 msg_print(_("¤·¤«¤·¸úÎϤòÄ·¤ÍÊÖ¤·¤¿¡ª", "You resist the effects!"));
777 (void)set_blind(12 + randint0(4));
779 learn_spell(MS_BLIND);
780 update_smart_learn(m_idx, DRS_BLIND);
783 void spell_RF5_CONF(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx)
788 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¯¤È¡¢Æ¬¤òǺ¤Þ¤¹²»¤¬¤·¤¿¡£",
789 "%^s mumbles, and you hear puzzling noises."), m_name);
791 msg_format(_("%^s¤¬Í¶ÏÇŪ¤Ê¸¸³Ð¤òºî¤ê½Ð¤·¤¿¡£",
792 "%^s creates a mesmerising illusion."), m_name);
794 if (p_ptr->resist_conf)
796 msg_print(_("¤·¤«¤·¸¸³Ð¤Ë¤Ï¤À¤Þ¤µ¤ì¤Ê¤«¤Ã¤¿¡£", "You disbelieve the feeble spell."));
798 else if (randint0(100 + rlev / 2) < p_ptr->skill_sav)
800 msg_print(_("¤·¤«¤·¸¸³Ð¤Ë¤Ï¤À¤Þ¤µ¤ì¤Ê¤«¤Ã¤¿¡£", "You disbelieve the feeble spell."));
804 (void)set_confused(p_ptr->confused + randint0(4) + 4);
806 learn_spell(MS_CONF);
807 update_smart_learn(m_idx, DRS_CONF);
810 void spell_RF5_SLOW(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx)
814 msg_format(_("%^s¤¬¤¢¤Ê¤¿¤Î¶ÚÎϤòµÛ¤¤¼è¤í¤¦¤È¤·¤¿¡ª",
815 "%^s drains power from your muscles!"), m_name);
819 msg_print(_("¤·¤«¤·¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡ª", "You are unaffected!"));
821 else if (randint0(100 + rlev / 2) < p_ptr->skill_sav)
823 msg_print(_("¤·¤«¤·¸úÎϤòÄ·¤ÍÊÖ¤·¤¿¡ª", "You resist the effects!"));
827 (void)set_slow(p_ptr->slow + randint0(4) + 4, FALSE);
829 learn_spell(MS_SLOW);
830 update_smart_learn(m_idx, DRS_FREE);
833 void spell_RF5_HOLD(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int y, int x, int m_idx)
838 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
840 msg_format(_("%^s¤¬¤¢¤Ê¤¿¤ÎÌܤò¤¸¤Ã¤È¸«¤Ä¤á¤¿¡ª", "%^s stares deep into your eyes!"), m_name);
844 msg_print(_("¤·¤«¤·¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡ª", "You are unaffected!"));
846 else if (randint0(100 + rlev / 2) < p_ptr->skill_sav)
848 msg_format(_("¤·¤«¤·¸úÎϤòÄ·¤ÍÊÖ¤·¤¿¡ª", "You resist the effects!"));
852 (void)set_paralyzed(p_ptr->paralyzed + randint0(4) + 4);
854 learn_spell(MS_SLEEP);
855 update_smart_learn(m_idx, DRS_FREE);
858 void spell_RF6_HASTE(bool blind, cptr m_name, monster_type* m_ptr, int y, int x, int m_idx)
863 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
867 msg_format(_("%^s¤¬¼«Ê¬¤ÎÂΤËÇ°¤òÁ÷¤Ã¤¿¡£", "%^s concentrates on %s body."), m_name);
870 /* Allow quick speed increases to base+10 */
871 if (set_monster_fast(m_idx, MON_FAST(m_ptr) + 100))
873 msg_format(_("%^s¤ÎÆ°¤¤¬Â®¤¯¤Ê¤Ã¤¿¡£", "%^s starts moving faster."), m_name);
877 int spell_RF6_HAND_DOOM(bool blind, cptr m_name, monster_type* m_ptr, int y, int x, int m_idx, bool learnable)
881 msg_format(_("%^s¤¬<ÇËÌǤμê>¤òÊü¤Ã¤¿¡ª", "%^s invokes the Hand of Doom!"), m_name);
882 dam = (((s32b)((40 + randint1(20)) * (p_ptr->chp))) / 100);
883 breath(y, x, m_idx, GF_HAND_DOOM, dam, 0, FALSE, MS_HAND_DOOM, learnable);
887 void spell_RF6_HEAL(bool blind, bool seen, cptr m_name, monster_type* m_ptr,int rlev, int m_idx)
893 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
895 msg_format(_("%^s¤¬¼«Ê¬¤Î½ý¤Ë½¸Ã椷¤¿¡£", "%^s concentrates on %s wounds."), m_name);
898 m_ptr->hp += (rlev * 6);
901 if (m_ptr->hp >= m_ptr->maxhp)
904 m_ptr->hp = m_ptr->maxhp;
908 msg_format(_("%^s¤Ï´°Á´¤Ë¼£¤Ã¤¿¡ª", "%^s looks completely healed!"), m_name);
910 msg_format(_("%^s¤Ï´°Á´¤Ë¼£¤Ã¤¿¤è¤¦¤À¡ª", "%^s sounds completely healed!"), m_name);
913 /* Partially healed */
918 msg_format(_("%^s¤ÏÂÎÎϤò²óÉü¤·¤¿¤è¤¦¤À¡£", "%^s looks healthier."), m_name);
920 msg_format(_("%^s¤ÏÂÎÎϤò²óÉü¤·¤¿¤è¤¦¤À¡£", "%^s sounds healthier."), m_name);
923 /* Redraw (later) if needed */
924 if (p_ptr->health_who == m_idx) p_ptr->redraw |= (PR_HEALTH);
925 if (p_ptr->riding == m_idx) p_ptr->redraw |= (PR_UHEALTH);
928 if (MON_MONFEAR(m_ptr))
931 (void)set_monster_monfear(m_idx, 0);
934 msg_format(_("%^s¤Ïͦµ¤¤ò¼è¤êÌᤷ¤¿¡£", "%^s recovers %s courage."), m_name);
937 void spell_RF6_INVULNER(bool seen, cptr m_name, monster_type* m_ptr, int m_idx)
943 msg_format(_("%^s¤¬²¿¤«¤òÎ϶¯¤¯¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles powerfully."), m_name);
945 msg_format(_("%s¤Ï̵½ý¤Îµå¤Î¼öʸ¤ò¾§¤¨¤¿¡£", "%^s casts a Globe of Invulnerability."), m_name);
947 if (!MON_INVULNER(m_ptr)) (void)set_monster_invulner(m_idx, randint1(4) + 4, FALSE);
950 void spell_RF6_BLINK(cptr m_name, int m_idx)
953 if (teleport_barrier(m_idx))
955 msg_format(_("ËâË¡¤Î¥Ð¥ê¥¢¤¬%^s¤Î¥Æ¥ì¥Ý¡¼¥È¤ò¼ÙË⤷¤¿¡£",
956 "Magic barrier obstructs teleporting of %^s."), m_name);
960 msg_format(_("%^s¤¬½Ö»þ¤Ë¾Ã¤¨¤¿¡£", "%^s blinks away."), m_name);
961 teleport_away(m_idx, 10, 0L);
962 p_ptr->update |= (PU_MONSTERS);
966 void spell_RF6_TPORT(cptr m_name, int m_idx)
969 if (teleport_barrier(m_idx))
971 msg_format(_("ËâË¡¤Î¥Ð¥ê¥¢¤¬%^s¤Î¥Æ¥ì¥Ý¡¼¥È¤ò¼ÙË⤷¤¿¡£",
972 "Magic barrier obstructs teleporting of %^s."), m_name);
976 msg_format(_("%^s¤¬¥Æ¥ì¥Ý¡¼¥È¤·¤¿¡£", "%^s teleports away."), m_name);
977 teleport_away_followable(m_idx);
981 int spell_RF6_WORLD(cptr m_name, monster_type* m_ptr, int m_idx)
985 if (m_ptr->r_idx == MON_DIO) who = 1;
986 else if (m_ptr->r_idx == MON_WONG) who = 3;
987 if (!process_the_world(randint1(2) + 2, who, TRUE)) return (FALSE);
991 int spell_RF6_SPECIAL(cptr m_name, monster_type* m_ptr, monster_race* r_ptr, u32b mode, bool blind, bool direct, int y, int x, int m_idx)
996 switch (m_ptr->r_idx)
999 /* Moved to process_monster(), like multiplication */
1001 case MON_BANORLUPART:
1003 int dummy_hp = (m_ptr->hp + 1) / 2;
1004 int dummy_maxhp = m_ptr->maxhp / 2;
1005 int dummy_y = m_ptr->fy;
1006 int dummy_x = m_ptr->fx;
1008 if (p_ptr->inside_arena || p_ptr->inside_battle || !summon_possible(m_ptr->fy, m_ptr->fx)) return -1;
1009 delete_monster_idx(cave[m_ptr->fy][m_ptr->fx].m_idx);
1010 summon_named_creature(0, dummy_y, dummy_x, MON_BANOR, mode);
1011 m_list[hack_m_idx_ii].hp = dummy_hp;
1012 m_list[hack_m_idx_ii].maxhp = dummy_maxhp;
1013 summon_named_creature(0, dummy_y, dummy_x, MON_LUPART, mode);
1014 m_list[hack_m_idx_ii].hp = dummy_hp;
1015 m_list[hack_m_idx_ii].maxhp = dummy_maxhp;
1017 msg_print(_("¡Ø¥Ð¡¼¥Î¡¼¥ë¡¦¥ë¥Ñ¡¼¥È¡Ù¤¬Ê¬Îö¤·¤¿¡ª","Banor=Rupart splits in two person!"));
1025 int dummy_maxhp = 0;
1026 int dummy_y = m_ptr->fy;
1027 int dummy_x = m_ptr->fx;
1029 if (!r_info[MON_BANOR].cur_num || !r_info[MON_LUPART].cur_num) return (FALSE);
1030 for (k = 1; k < m_max; k++)
1032 if (m_list[k].r_idx == MON_BANOR || m_list[k].r_idx == MON_LUPART)
1034 dummy_hp += m_list[k].hp;
1035 dummy_maxhp += m_list[k].maxhp;
1036 if (m_list[k].r_idx != m_ptr->r_idx)
1038 dummy_y = m_list[k].fy;
1039 dummy_x = m_list[k].fx;
1041 delete_monster_idx(k);
1044 summon_named_creature(0, dummy_y, dummy_x, MON_BANORLUPART, mode);
1045 m_list[hack_m_idx_ii].hp = dummy_hp;
1046 m_list[hack_m_idx_ii].maxhp = dummy_maxhp;
1048 msg_print(_("¡Ø¥Ð¡¼¥Î¡¼¥ë¡Ù¤È¡Ø¥ë¥Ñ¡¼¥È¡Ù¤¬¹çÂΤ·¤¿¡ª", "Banor and Rupart combine into one!"));
1054 msg_format(_("%^s¤¬²¿¤«ÂçÎ̤ËÅꤲ¤¿¡£", "%^s spreads something."), m_name);
1056 msg_format(_("%^s¤Ï¼êÜØÃƤò¤Ð¤é¤Þ¤¤¤¿¡£", "%^s throws some hand grenades."), m_name);
1059 int num = 1 + randint1(3);
1061 for (k = 0; k < num; k++)
1063 count += summon_named_creature(m_idx, y, x, MON_SHURYUUDAN, mode);
1068 msg_print(_("¿¤¯¤Î¤â¤Î¤¬´Ö¶á¤Ë¤Ð¤é¤Þ¤«¤ì¤ë²»¤¬¤¹¤ë¡£", "You hear many things are scattered nearby."));
1073 if (r_ptr->d_char == 'B')
1076 if (one_in_(3) || !direct)
1078 msg_format(_("%^s¤ÏÆÍÁ³»ë³¦¤«¤é¾Ã¤¨¤¿!", "%^s suddenly go out of your sight!"), m_name);
1079 teleport_away(m_idx, 10, TELEPORT_NONMAGICAL);
1080 p_ptr->update |= (PU_MONSTERS);
1085 bool fear; /* dummy */
1087 msg_format(_("%^s¤¬¤¢¤Ê¤¿¤òÄϤó¤Ç¶õÃ椫¤éÅꤲÍî¤È¤·¤¿¡£",
1088 "%^s holds you, and drops from the sky."), m_name);
1089 dam = damroll(4, 8);
1090 teleport_player_to(m_ptr->fy, m_ptr->fx, TELEPORT_NONMAGICAL | TELEPORT_PASSIVE);
1094 if (p_ptr->levitation)
1096 msg_print(_("¤¢¤Ê¤¿¤ÏÀŤ«¤ËÃåÃϤ·¤¿¡£", "You float gently down to the ground."));
1100 msg_print(_("¤¢¤Ê¤¿¤ÏÃÏÌ̤ËᤤĤ±¤é¤ì¤¿¡£", "You crashed into the ground."));
1101 dam += damroll(6, 8);
1104 /* Mega hack -- this special action deals damage to the player. Therefore the code of "eyeeye" is necessary.
1107 get_damage = take_hit(DAMAGE_NOESCAPE, dam, m_name, -1);
1108 if (p_ptr->tim_eyeeye && get_damage > 0 && !p_ptr->is_dead)
1111 msg_format("¹¶·â¤¬%s¼«¿È¤ò½ý¤Ä¤±¤¿¡ª", m_name);
1113 char m_name_self[80];
1116 monster_desc(m_name_self, m_ptr, MD_PRON_VISIBLE | MD_POSSESSIVE | MD_OBJECTIVE);
1118 msg_format("The attack of %s has wounded %s!", m_name, m_name_self);
1120 project(0, 0, m_ptr->fy, m_ptr->fx, get_damage, GF_MISSILE, PROJECT_KILL, -1);
1121 set_tim_eyeeye(p_ptr->tim_eyeeye - 5, TRUE);
1124 if (p_ptr->riding) mon_take_hit_mon(p_ptr->riding, dam, &fear, extract_note_dies(real_r_ptr(&m_list[p_ptr->riding])), m_idx);
1129 /* Something is wrong */
1136 void spell_RF6_TELE_TO(cptr m_name, monster_type* m_ptr)
1139 msg_format(_("%^s¤¬¤¢¤Ê¤¿¤ò°ú¤Ìᤷ¤¿¡£", "%^s commands you to return."), m_name);
1141 teleport_player_to(m_ptr->fy, m_ptr->fx, TELEPORT_PASSIVE);
1142 learn_spell(MS_TELE_TO);
1145 void spell_RF6_TELE_AWAY(cptr m_name, int m_idx)
1149 msg_format(_("%^s¤Ë¥Æ¥ì¥Ý¡¼¥È¤µ¤»¤é¤ì¤¿¡£", "%^s teleports you away."), m_name);
1150 if ((p_ptr->pseikaku == SEIKAKU_COMBAT) || (inventory[INVEN_BOW].name1 == ART_CRIMSON))
1151 msg_print(_("¤¯¤Ã¤½¡Á", ""));
1153 learn_spell(MS_TELE_AWAY);
1154 teleport_player_away(m_idx, 100);
1157 void spell_RF6_TELE_LEVEL(bool blind, cptr m_name, int m_idx, int rlev)
1162 msg_format(_("%^s¤¬²¿¤«´ñ̯¤Ê¸ÀÍÕ¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles strangely."), m_name);
1164 msg_format(_("%^s¤¬¤¢¤Ê¤¿¤Î¤ò»Ø¤µ¤·¤¿¡£", "%^s gestures at your feet."), m_name);
1166 if (p_ptr->resist_nexus)
1168 msg_print(_("¤·¤«¤·¸ú²Ì¤¬¤Ê¤«¤Ã¤¿¡ª", "You are unaffected!"));
1170 else if (randint0(100 + rlev / 2) < p_ptr->skill_sav)
1172 msg_print(_("¤·¤«¤·¸úÎϤòÄ·¤ÍÊÖ¤·¤¿¡ª", "You resist the effects!"));
1178 learn_spell(MS_TELE_LEVEL);
1179 update_smart_learn(m_idx, DRS_NEXUS);
1182 int spell_RF6_PSY_SPEAR(bool blind, cptr m_name, monster_race* r_ptr, int rlev, int m_idx, bool learnable)
1187 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1189 msg_format(_("%^s¤¬¸÷¤Î·õ¤òÊü¤Ã¤¿¡£", "%^s throw a Psycho-Spear."), m_name);
1191 dam = (r_ptr->flags2 & RF2_POWERFUL) ? (randint1(rlev * 2) + 150) : (randint1(rlev * 3 / 2) + 100);
1192 beam(m_idx, GF_PSY_SPEAR, dam, MS_PSY_SPEAR, learnable);
1196 void spell_RF6_DARKNESS(bool blind, cptr m_name, bool can_use_lite_area)
1201 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1202 else if (can_use_lite_area)
1203 msg_format(_("%^s¤¬ÊÕ¤ê¤òÌÀ¤ë¤¯¾È¤é¤·¤¿¡£", "%^s cast a spell to light up."), m_name);
1205 msg_format(_("%^s¤¬°Å°Ç¤ÎÃæ¤Ç¼ê¤ò¿¶¤Ã¤¿¡£", "%^s gestures in shadow."), m_name);
1207 if (can_use_lite_area) (void)lite_area(0, 3);
1210 learn_spell(MS_DARKNESS);
1211 (void)unlite_area(0, 3);
1215 void spell_RF6_TRAPS(bool blind, cptr m_name, int y, int x)
1220 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤Æ¼Ù°¤ËÈù¾Ð¤ó¤À¡£",
1221 "%^s mumbles, and then cackles evilly."), m_name);
1223 msg_format(_("%^s¤¬¼öʸ¤ò¾§¤¨¤Æ¼Ù°¤ËÈù¾Ð¤ó¤À¡£",
1224 "%^s casts a spell and cackles evilly."), m_name);
1226 learn_spell(MS_MAKE_TRAP);
1227 (void)trap_creation(y, x);
1230 void spell_RF6_FORGET(cptr m_name, int rlev)
1234 msg_format(_("%^s¤¬¤¢¤Ê¤¿¤Îµ²±¤ò¾Ãµî¤·¤è¤¦¤È¤·¤Æ¤¤¤ë¡£",
1235 "%^s tries to blank your mind."), m_name);
1237 if (randint0(100 + rlev / 2) < p_ptr->skill_sav)
1239 msg_print(_("¤·¤«¤·¸úÎϤòÄ·¤ÍÊÖ¤·¤¿¡ª", "You resist the effects!"));
1241 else if (lose_all_info())
1243 msg_print(_("µ²±¤¬Çö¤ì¤Æ¤·¤Þ¤Ã¤¿¡£", "Your memories fade away."));
1245 learn_spell(MS_FORGET);
1248 void spell_RF6_RAISE_DEAD(bool blind, cptr m_name, int m_idx, monster_type* m_ptr)
1253 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1255 msg_format(_("%^s¤¬»à¼ÔÉü³è¤Î¼öʸ¤ò¾§¤¨¤¿¡£",
1256 "%^s casts a spell to revive corpses."), m_name);
1258 animate_dead(m_idx, m_ptr->fy, m_ptr->fx);
1261 void spell_RF6_S_KIN(bool blind, cptr m_name, monster_type* m_ptr, monster_race* r_ptr, int m_idx, int y, int x, int rlev, u32b mode)
1265 if (m_ptr->r_idx == MON_SERPENT || m_ptr->r_idx == MON_ZOMBI_SERPENT)
1268 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1270 msg_format(_("%^s¤¬¥À¥ó¥¸¥ç¥ó¤Î¼ç¤ò¾¤´¤·¤¿¡£",
1271 "%^s magically summons guardians of dungeons."), m_name);
1276 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1279 msg_format("%^s¤ÏËâË¡¤Ç%s¤ò¾¤´¤·¤¿¡£",
1281 ((r_ptr->flags1) & RF1_UNIQUE ?
1284 msg_format("%^s magically summons %s %s.",
1286 ((r_ptr->flags1) & RF1_UNIQUE ?
1287 "minions" : "kin"));
1291 switch (m_ptr->r_idx)
1297 int num = 4 + randint1(3);
1298 for (k = 0; k < num; k++)
1300 count += summon_specific(m_idx, y, x, rlev, SUMMON_EAGLES, (PM_ALLOW_GROUP | PM_ALLOW_UNIQUE));
1307 int num = 2 + randint1(3);
1308 for (k = 0; k < num; k++)
1310 count += summon_named_creature(m_idx, y, x, MON_IE, mode);
1316 case MON_ZOMBI_SERPENT:
1318 int num = 2 + randint1(3);
1320 if (r_info[MON_JORMUNGAND].cur_num < r_info[MON_JORMUNGAND].max_num && one_in_(6))
1322 msg_print(_("ÃÏÌ̤«¤é¿å¤¬¿á¤½Ð¤·¤¿¡ª", "Water blew off from the ground!"));
1323 fire_ball_hide(GF_WATER_FLOW, 0, 3, 8);
1326 for (k = 0; k < num; k++)
1328 count += summon_specific(m_idx, y, x, rlev, SUMMON_GUARDIANS, (PM_ALLOW_GROUP | PM_ALLOW_UNIQUE));
1335 int num = randint1(3);
1336 for (k = 0; k < num; k++)
1338 count += summon_named_creature(m_idx, y, x, MON_LOCKE_CLONE, mode);
1345 int num = 2 + randint1(3);
1346 for (k = 0; k < num; k++)
1348 count += summon_specific(m_idx, y, x, rlev, SUMMON_LOUSE, PM_ALLOW_GROUP);
1354 summon_kin_type = r_ptr->d_char; /* Big hack */
1356 for (k = 0; k < 4; k++)
1358 count += summon_specific(m_idx, y, x, rlev, SUMMON_KIN, PM_ALLOW_GROUP);
1364 msg_print(_("¿¤¯¤Î¤â¤Î¤¬´Ö¶á¤Ë¸½¤ì¤¿²»¤¬¤¹¤ë¡£", "You hear many things appear nearby."));
1367 void spell_RF6_S_CYBER(bool blind, cptr m_name, int m_idx, int y, int x)
1373 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1375 msg_format(_("%^s¤¬¥µ¥¤¥Ð¡¼¥Ç¡¼¥â¥ó¤ò¾¤´¤·¤¿¡ª",
1376 "%^s magically summons Cyberdemons!"), m_name);
1378 count = summon_cyber(m_idx, y, x);
1381 msg_print(_("½Å¸ü¤Ê²»¤¬¶á¤¯¤Çʹ¤³¤¨¤ë¡£", "You hear heavy steps nearby."));
1384 void spell_RF6_S_MONSTER(bool blind, cptr m_name, int m_idx, int y, int x, int rlev)
1390 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1392 msg_format(_("%^s¤¬ËâË¡¤ÇÃç´Ö¤ò¾¤´¤·¤¿¡ª", "%^s magically summons help!"), m_name);
1394 for (k = 0; k < 1; k++)
1396 count += summon_specific(m_idx, y, x, rlev, 0, (PM_ALLOW_GROUP | PM_ALLOW_UNIQUE));
1399 msg_print(_("²¿¤«¤¬´Ö¶á¤Ë¸½¤ì¤¿²»¤¬¤¹¤ë¡£", "You hear something appear nearby."));
1402 void spell_RF6_S_MONSTERS(bool blind, cptr m_name, int m_idx, int y, int x, int rlev, int s_num_6)
1408 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1410 msg_format(_("%^s¤¬ËâË¡¤Ç¥â¥ó¥¹¥¿¡¼¤ò¾¤´¤·¤¿¡ª", "%^s magically summons monsters!"), m_name);
1412 for (k = 0; k < s_num_6; k++)
1414 count += summon_specific(m_idx, y, x, rlev, 0, (PM_ALLOW_GROUP | PM_ALLOW_UNIQUE));
1418 msg_print(_("¿¤¯¤Î¤â¤Î¤¬´Ö¶á¤Ë¸½¤ì¤¿²»¤¬¤¹¤ë¡£", "You hear many things appear nearby."));
1421 void spell_RF6_S_ANT(bool blind, cptr m_name, int m_idx, int y, int x, int rlev, int s_num_6)
1427 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1429 msg_format(_("%^s¤¬ËâË¡¤Ç¥¢¥ê¤ò¾¤´¤·¤¿¡£", "%^s magically summons ants."), m_name);
1431 for (k = 0; k < s_num_6; k++)
1433 count += summon_specific(m_idx, y, x, rlev, SUMMON_ANT, PM_ALLOW_GROUP);
1437 msg_print(_("¿¤¯¤Î¤â¤Î¤¬´Ö¶á¤Ë¸½¤ì¤¿²»¤¬¤¹¤ë¡£", "You hear many things appear nearby."));
1440 void spell_RF6_S_SPIDER(bool blind, cptr m_name, int m_idx, int y, int x, int rlev, int s_num_6)
1446 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1448 msg_format(_("%^s¤¬ËâË¡¤Ç¥¯¥â¤ò¾¤´¤·¤¿¡£", "%^s magically summons spiders."), m_name);
1450 for (k = 0; k < s_num_6; k++)
1452 count += summon_specific(m_idx, y, x, rlev, SUMMON_SPIDER, PM_ALLOW_GROUP);
1456 msg_print(_("¿¤¯¤Î¤â¤Î¤¬´Ö¶á¤Ë¸½¤ì¤¿²»¤¬¤¹¤ë¡£", "You hear many things appear nearby."));
1459 void spell_RF6_S_HOUND(bool blind, cptr m_name, int m_idx, int y, int x, int rlev, int s_num_4)
1465 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1467 msg_format(_("%^s¤¬ËâË¡¤Ç¥Ï¥¦¥ó¥É¤ò¾¤´¤·¤¿¡£", "%^s magically summons hounds."), m_name);
1469 for (k = 0; k < s_num_4; k++)
1471 count += summon_specific(m_idx, y, x, rlev, SUMMON_HOUND, PM_ALLOW_GROUP);
1475 msg_print(_("¿¤¯¤Î¤â¤Î¤¬´Ö¶á¤Ë¸½¤ì¤¿²»¤¬¤¹¤ë¡£", "You hear many things appear nearby."));
1478 void spell_RF6_S_HYDRA(bool blind, cptr m_name, int m_idx, int y, int x, int rlev, int s_num_4)
1484 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1486 msg_format(_("%^s¤¬ËâË¡¤Ç¥Ò¥É¥é¤ò¾¤´¤·¤¿¡£", "%^s magically summons hydras."), m_name);
1488 for (k = 0; k < s_num_4; k++)
1490 count += summon_specific(m_idx, y, x, rlev, SUMMON_HYDRA, PM_ALLOW_GROUP);
1493 msg_print(_("¿¤¯¤Î¤â¤Î¤¬´Ö¶á¤Ë¸½¤ì¤¿²»¤¬¤¹¤ë¡£", "You hear many things appear nearby."));
1496 void spell_RF6_S_ANGEL(bool blind, cptr m_name, monster_race* r_ptr, int m_idx, int y, int x, int rlev)
1504 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1506 msg_format(_("%^s¤¬ËâË¡¤ÇÅ·»È¤ò¾¤´¤·¤¿¡ª", "%^s magically summons an angel!"), m_name);
1508 if ((r_ptr->flags1 & RF1_UNIQUE) && !easy_band)
1510 num += r_ptr->level / 40;
1513 for (k = 0; k < num; k++)
1515 count += summon_specific(m_idx, y, x, rlev, SUMMON_ANGEL, PM_ALLOW_GROUP);
1521 msg_print(_("²¿¤«¤¬´Ö¶á¤Ë¸½¤ì¤¿²»¤¬¤¹¤ë¡£", "You hear something appear nearby."));
1526 msg_print(_("¿¤¯¤Î¤â¤Î¤¬´Ö¶á¤Ë¸½¤ì¤¿²»¤¬¤¹¤ë¡£", "You hear many things appear nearby."));
1530 void spell_RF6_S_DEMON(bool blind, cptr m_name, int m_idx, int y, int x, int rlev)
1536 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1538 msg_format(_("%^s¤ÏËâË¡¤Çº®Æ٤εÜÄ¤é°Ëâ¤ò¾¤´¤·¤¿¡ª",
1539 "%^s magically summons a demon from the Courts of Chaos!"), m_name);
1541 for (k = 0; k < 1; k++)
1543 count += summon_specific(m_idx, y, x, rlev, SUMMON_DEMON, PM_ALLOW_GROUP);
1547 msg_print(_("²¿¤«¤¬´Ö¶á¤Ë¸½¤ì¤¿²»¤¬¤¹¤ë¡£", "You hear something appear nearby."));
1550 void spell_RF6_S_UNDEAD(bool blind, cptr m_name, int m_idx, int y, int x, int rlev)
1556 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1558 msg_format(_("%^s¤¬ËâË¡¤Ç¥¢¥ó¥Ç¥Ã¥É¤Î¶¯Å¨¤ò¾¤´¤·¤¿¡ª",
1559 "%^s magically summons an undead adversary!"), m_name);
1561 for (k = 0; k < 1; k++)
1563 count += summon_specific(m_idx, y, x, rlev, SUMMON_UNDEAD, PM_ALLOW_GROUP);
1567 msg_print(_("²¿¤«¤¬´Ö¶á¤Ë¸½¤ì¤¿²»¤¬¤¹¤ë¡£", "You hear something appear nearby."));
1570 void spell_RF6_S_DRAGON(bool blind, cptr m_name, int m_idx, int y, int x, int rlev)
1576 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1578 msg_format(_("%^s¤¬ËâË¡¤Ç¥É¥é¥´¥ó¤ò¾¤´¤·¤¿¡ª", "%^s magically summons a dragon!"), m_name);
1580 for (k = 0; k < 1; k++)
1582 count += summon_specific(m_idx, y, x, rlev, SUMMON_DRAGON, PM_ALLOW_GROUP);
1585 msg_print(_("²¿¤«¤¬´Ö¶á¤Ë¸½¤ì¤¿²»¤¬¤¹¤ë¡£", "You hear something appear nearby."));
1588 void spell_RF6_S_HI_UNDEAD(monster_type* m_ptr, bool blind, cptr m_name, int m_idx, int y, int x, int rlev, int s_num_6, u32b mode)
1593 if (((m_ptr->r_idx == MON_MORGOTH) || (m_ptr->r_idx == MON_SAURON) || (m_ptr->r_idx == MON_ANGMAR)) && ((r_info[MON_NAZGUL].cur_num + 2) < r_info[MON_NAZGUL].max_num))
1599 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1601 msg_format(_("%^s¤¬ËâË¡¤ÇÍ©µ´ÀïÂâ¤ò¾¤´¤·¤¿¡ª", "%^s magically summons rangers of Nazgul!"), m_name);
1605 for (k = 0; k < 30; k++)
1607 if (!summon_possible(cy, cx) || !cave_empty_bold(cy, cx))
1610 for (j = 100; j > 0; j--)
1612 scatter(&cy, &cx, y, x, 2, 0);
1613 if (cave_empty_bold(cy, cx)) break;
1617 if (!cave_empty_bold(cy, cx)) continue;
1619 if (summon_named_creature(m_idx, cy, cx, MON_NAZGUL, mode))
1625 msg_format(_("¡ÖÍ©µ´ÀïÂâ%d¹æ¡¢¥Ê¥º¥°¥ë¡¦¥Ö¥é¥Ã¥¯¡ª¡×",
1626 "A Nazgul says 'Nazgul-Rangers Number %d, Nazgul-Black!'"), count);
1628 msg_format(_("¡ÖƱ¤¸¤¯%d¹æ¡¢¥Ê¥º¥°¥ë¡¦¥Ö¥é¥Ã¥¯¡ª¡×",
1629 "Another one says 'Number %d, Nazgul-Black!'"), count);
1634 msg_format(_("¡Ö%d¿Í¤½¤í¤Ã¤Æ¡¢¥ê¥ó¥°¥ì¥ó¥¸¥ã¡¼¡ª¡×",
1635 "They say 'The %d meets! We are the Ring-Ranger!'."), count);
1641 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1643 msg_format(_("%^s¤¬ËâË¡¤Ç¶¯ÎϤʥ¢¥ó¥Ç¥Ã¥É¤ò¾¤´¤·¤¿¡ª",
1644 "%^s magically summons greater undead!"), m_name);
1646 for (k = 0; k < s_num_6; k++)
1648 count += summon_specific(m_idx, y, x, rlev, SUMMON_HI_UNDEAD, (PM_ALLOW_GROUP | PM_ALLOW_UNIQUE));
1653 msg_print(_("´Ö¶á¤Ç²¿¤«Â¿¤¯¤Î¤â¤Î¤¬Ç礤²ó¤ë²»¤¬Ê¹¤³¤¨¤ë¡£",
1654 "You hear many creepy things appear nearby."));
1659 void spell_RF6_S_HI_DRAGON(bool blind, cptr m_name, int m_idx, int y, int x, int rlev, int s_num_4)
1665 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1667 msg_format(_("%^s¤¬ËâË¡¤Ç¸ÅÂå¥É¥é¥´¥ó¤ò¾¤´¤·¤¿¡ª", "%^s magically summons ancient dragons!"), m_name);
1669 for (k = 0; k < s_num_4; k++)
1671 count += summon_specific(m_idx, y, x, rlev, SUMMON_HI_DRAGON, (PM_ALLOW_GROUP | PM_ALLOW_UNIQUE));
1675 msg_print(_("¿¤¯¤ÎÎ϶¯¤¤¤â¤Î¤¬´Ö¶á¤Ë¸½¤ì¤¿²»¤¬Ê¹¤³¤¨¤ë¡£",
1676 "You hear many powerful things appear nearby."));
1680 void spell_RF6_S_AMBERITES(bool blind, cptr m_name, int m_idx, int y, int x, int rlev, int s_num_4)
1686 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1688 msg_format(_("%^s¤¬¥¢¥ó¥Ð¡¼¤Î²¦Â²¤ò¾¤´¤·¤¿¡ª", "%^s magically summons Lords of Amber!"), m_name);
1690 for (k = 0; k < s_num_4; k++)
1692 count += summon_specific(m_idx, y, x, rlev, SUMMON_AMBERITES, (PM_ALLOW_GROUP | PM_ALLOW_UNIQUE));
1696 msg_print(_("ÉÔ»à¤Î¼Ô¤¬¶á¤¯¤Ë¸½¤ì¤ë¤Î¤¬Ê¹¤³¤¨¤¿¡£", "You hear immortal beings appear nearby."));
1700 void spell_RF6_S_UNIQUE(bool blind, cptr m_name, int m_idx, monster_type* m_ptr, int y, int x, int rlev, int s_num_4)
1703 bool uniques_are_summoned = FALSE;
1704 int non_unique_type = SUMMON_HI_UNDEAD;
1709 msg_format(_("%^s¤¬²¿¤«¤ò¤Ä¤Ö¤ä¤¤¤¿¡£", "%^s mumbles."), m_name);
1711 msg_format(_("%^s¤¬ËâË¡¤ÇÆÃÊ̤ʶ¯Å¨¤ò¾¤´¤·¤¿¡ª", "%^s magically summons special opponents!"), m_name);
1713 for (k = 0; k < s_num_4; k++)
1715 count += summon_specific(m_idx, y, x, rlev, SUMMON_UNIQUE, (PM_ALLOW_GROUP | PM_ALLOW_UNIQUE));
1718 if (count) uniques_are_summoned = TRUE;
1720 if ((m_ptr->sub_align & (SUB_ALIGN_GOOD | SUB_ALIGN_EVIL)) == (SUB_ALIGN_GOOD | SUB_ALIGN_EVIL))
1721 non_unique_type = 0;
1722 else if (m_ptr->sub_align & SUB_ALIGN_GOOD)
1723 non_unique_type = SUMMON_ANGEL;
1725 for (k = count; k < s_num_4; k++)
1727 count += summon_specific(m_idx, y, x, rlev, non_unique_type, (PM_ALLOW_GROUP | PM_ALLOW_UNIQUE));
1732 msg_format(_("¿¤¯¤Î%s¤¬´Ö¶á¤Ë¸½¤ì¤¿²»¤¬Ê¹¤³¤¨¤ë¡£", "You hear many %s appear nearby."),
1733 uniques_are_summoned ? _("Î϶¯¤¤¤â¤Î", "powerful things") : _("¤â¤Î", "things"));