\r
while (attempts--)\r
{\r
- scatter(&y, &x, p_ptr->y, p_ptr->x, 4, 0);\r
-\r
+ scatter(&y, &x, p_ptr->y, p_ptr->x, 4, PROJECT_LOS);\r
if (!cave_have_flag_bold(y, x, FF_PROJECT)) continue;\r
-\r
if (!player_bold(y, x)) break;\r
}\r
\r
project(0, 0, y, x, damroll(6 + lev / 8, 10), GF_LITE_WEAK,\r
- (PROJECT_BEAM | PROJECT_THRU | PROJECT_GRID | PROJECT_KILL), -1);\r
+ (PROJECT_BEAM | PROJECT_THRU | PROJECT_GRID | PROJECT_KILL | PROJECT_LOS), -1);\r
}\r
ident = TRUE;\r
break;\r
\r
case SV_STAFF_CURE_LIGHT:\r
{\r
- if (hp_player(damroll((powerful ? 4 : 2), 8))) ident = TRUE;\r
- if (powerful) {\r
- if (set_blind(0)) ident = TRUE;\r
- if (set_poisoned(0)) ident = TRUE;\r
- if (set_cut(p_ptr->cut - 10)) ident = TRUE;\r
- }\r
- if (set_shero(0, TRUE)) ident = TRUE;\r
+ ident = cure_light_wounds((powerful ? 4 : 2), 8);\r
break;\r
}\r
\r
case SV_STAFF_THE_MAGI:\r
{\r
if (do_res_stat(A_INT)) ident = TRUE;\r
- if (p_ptr->csp < p_ptr->msp)\r
- {\r
- p_ptr->csp = p_ptr->msp;\r
- p_ptr->csp_frac = 0;\r
- ident = TRUE;\r
- msg_print(_("頭がハッキリとした。", "You feel your head clear."));\r
-\r
- p_ptr->redraw |= (PR_MANA);\r
- p_ptr->window |= (PW_PLAYER);\r
- p_ptr->window |= (PW_SPELL);\r
- }\r
+ ident |= restore_mana(FALSE);\r
if (set_shero(0, TRUE)) ident = TRUE;\r
break;\r
}\r