場所を視界外とみなすように修正.
* Is the monster seen by the player?
*/
#define is_seen(A) \
- ((bool) ((A)->ml && (!ignore_unview || player_can_see_bold((A)->fy, (A)->fx))))
+ ((bool)((A)->ml && (!ignore_unview || \
+ (player_can_see_bold((A)->fy, (A)->fx) && projectable(py, px, (A)->fy, (A)->fx)))))
/*** Option Definitions ***/
/* Possible disturb */
if (m_ptr->ml &&
(disturb_move ||
- (disturb_near && (m_ptr->mflag & MFLAG_VIEW)) ||
+ (disturb_near && (m_ptr->mflag & MFLAG_VIEW) && projectable(py, px, m_ptr->fy, m_ptr->fx)) ||
(disturb_high && ap_r_ptr->r_tkills && ap_r_ptr->level >= p_ptr->lev)))
{
/* Disturb */
if (flg & PROJECT_KILL)
{
see_s_msg = (who > 0) ? is_seen(&m_list[who]) :
- (!who ? TRUE : player_can_see_bold(y1, x1));
+ (!who ? TRUE : (player_can_see_bold(y1, x1) && projectable(py, px, y1, x1)));
}