}
if (die < 8) clone_monster(dir);
- else if (die < 14) speed_monster(dir);
+ else if (die < 14) speed_monster(dir, plev);
else if (die < 26) heal_monster(dir, damroll(4, 6));
- else if (die < 31) poly_monster(dir);
+ else if (die < 31) poly_monster(dir, plev);
else if (die < 36)
fire_bolt_or_beam(beam_chance() - 10, GF_MISSILE, dir,
damroll(3 + ((plev - 1) / 5), 4));
else if (die < 41) confuse_monster(dir, plev);
else if (die < 46) fire_ball(GF_POIS, dir, 20 + (plev / 2), 3);
- else if (die < 51) (void)lite_line(dir);
+ else if (die < 51) (void)lite_line(dir, damroll(6, 8));
else if (die < 56)
fire_bolt_or_beam(beam_chance() - 10, GF_ELEC, dir,
damroll(3 + ((plev - 5) / 4), 8));
else /* RARE */
{
dispel_monsters(150);
- slow_monsters();
- sleep_monsters();
+ slow_monsters(plev);
+ sleep_monsters(plev);
hp_player(300);
}
}
}
else if (die < 31)
{
- poly_monster(dir);
+ poly_monster(dir, plev);
}
else if (die < 36)
{
}
else if (die < 51)
{
- (void)lite_line(dir);
+ (void)lite_line(dir, damroll(6, 8));
}
else if (die < 56)
{
else
{ /* RARE */
dispel_monsters(150);
- slow_monsters();
- sleep_monsters();
+ slow_monsters(plev);
+ sleep_monsters(plev);
hp_player(300);
}
{
if (!get_aim_dir(&dir)) return NULL;
- sleep_monster(dir);
+ sleep_monster(dir, plev);
}
}
break;
{
if (!get_aim_dir(&dir)) return NULL;
- slow_monster(dir);
+ slow_monster(dir, plev);
}
}
break;
if (cast)
{
- sleep_monsters();
+ sleep_monsters(plev);
}
}
break;
{
if (!get_aim_dir(&dir)) return NULL;
- wall_to_mud(dir);
+ wall_to_mud(dir, 20 + randint1(30));
}
}
break;
msg_print("A line of sunlight appears.");
#endif
- lite_line(dir);
+ lite_line(dir, damroll(6, 8));
}
}
break;
if (cast)
{
- slow_monsters();
+ slow_monsters(plev);
}
}
break;
{
if (!get_aim_dir(&dir)) return NULL;
- poly_monster(dir);
+ poly_monster(dir, plev);
}
}
break;
{
if (!get_aim_dir(&dir)) return NULL;
- sleep_monster(dir);
+ sleep_monster(dir, plev);
}
}
break;
if (!result) return NULL;
- speed_monster(dir);
+ speed_monster(dir, plev);
}
}
break;
{
if (!get_aim_dir(&dir)) return NULL;
- wall_to_mud(dir);
+ wall_to_mud(dir, 20 + randint1(30));
}
}
break;
msg_print("A line of light appears.");
#endif
- lite_line(dir);
+ lite_line(dir, damroll(6, 8));
}
}
break;
{
project(0, 1, py, px, b_dam, GF_HOLY_FIRE, PROJECT_KILL, -1);
dispel_monsters(d_dam);
- slow_monsters();
+ slow_monsters(plev);
stun_monsters(power);
confuse_monsters(power);
turn_monsters(power);
if (cont)
{
- slow_monsters();
+ slow_monsters(plev);
}
}
break;
if (cont)
{
- slow_monsters();
- sleep_monsters();
+ slow_monsters(plev);
+ sleep_monsters(plev);
}
}
if (cast)
{
- if (!do_cmd_throw_aux(1, TRUE, 0)) return NULL;
+ if (!do_cmd_throw_aux(1, TRUE, -1)) return NULL;
}
break;
msg_format("You return %d damages.", power);
#endif
}
+
+ /* Reset */
+ p_ptr->magic_num2[1] = 0;
+ p_ptr->magic_num2[2] = 0;
p_ptr->magic_num1[2] = 0;
}
}
case 31:
#ifdef JP
if (name) return "Éü½²¤ÎÀë¹ð";
- if (desc) return "¿ô¥¿¡¼¥ó¸å¤Ë¡¢¤½¤ì¤Þ¤Ç¼õ¤±¤¿¥À¥á¡¼¥¸¤Ë±þ¤¸¤¿°ÒÎϤÎËâË¡¤ÎÃƤò¡¢ÂоݤΥâ¥ó¥¹¥¿¡¼¤¬¤½¤Î»þ¤¤¤¿°ÌÃÖ¤ËÊü¤Ä¡£";
+ if (desc) return "¿ô¥¿¡¼¥ó¸å¤Ë¤½¤ì¤Þ¤Ç¼õ¤±¤¿¥À¥á¡¼¥¸¤Ë±þ¤¸¤¿°ÒÎϤÎÃϹö¤Î¹å²Ð¤ÎÃƤòÊü¤Ä¡£";
#else
if (name) return "Revenge sentence";
- if (desc) return "Fires magic ball to revenge after few turns.";
+ if (desc) return "Fires a ball of hell fire to try revenging after few turns.";
#endif
power = p_ptr->magic_num1[2];
if (info) return info_damage(0, 0, power);