Merge branch 'NetHack-3.6.2'
This commit is contained in:
20
src/hack.c
20
src/hack.c
@@ -1531,8 +1531,8 @@ domove_core()
|
||||
/* It's fine to displace pets, though */
|
||||
/* We should never get here if forcefight */
|
||||
if (g.context.run && ((!Blind && mon_visible(mtmp)
|
||||
&& ((mtmp->m_ap_type != M_AP_FURNITURE
|
||||
&& mtmp->m_ap_type != M_AP_OBJECT)
|
||||
&& ((M_AP_TYPE(mtmp) != M_AP_FURNITURE
|
||||
&& M_AP_TYPE(mtmp) != M_AP_OBJECT)
|
||||
|| Protection_from_shape_changers))
|
||||
|| sensemon(mtmp))) {
|
||||
nomul(0);
|
||||
@@ -1572,7 +1572,7 @@ domove_core()
|
||||
*/
|
||||
if (g.context.nopick && !g.context.travel
|
||||
&& (canspotmon(mtmp) || glyph_is_invisible(levl[x][y].glyph))) {
|
||||
if (mtmp->m_ap_type && !Protection_from_shape_changers
|
||||
if (M_AP_TYPE(mtmp) && !Protection_from_shape_changers
|
||||
&& !sensemon(mtmp))
|
||||
stumble_onto_mimic(mtmp);
|
||||
else if (mtmp->mpeaceful && !Hallucination)
|
||||
@@ -1760,7 +1760,7 @@ domove_core()
|
||||
cancel the swap below (we can ignore steed mx,my here) */
|
||||
u.ux = u.ux0, u.uy = u.uy0;
|
||||
mtmp->mundetected = 0;
|
||||
if (mtmp->m_ap_type)
|
||||
if (M_AP_TYPE(mtmp))
|
||||
seemimic(mtmp);
|
||||
else if (!mtmp->mtame)
|
||||
newsym(mtmp->mx, mtmp->my);
|
||||
@@ -1864,8 +1864,8 @@ domove_core()
|
||||
* imitating something that doesn't move. We could extend this
|
||||
* to non-moving monsters...
|
||||
*/
|
||||
if ((u.dx || u.dy) && (g.youmonst.m_ap_type == M_AP_OBJECT
|
||||
|| g.youmonst.m_ap_type == M_AP_FURNITURE))
|
||||
if ((u.dx || u.dy) && (U_AP_TYPE == M_AP_OBJECT
|
||||
|| U_AP_TYPE == M_AP_FURNITURE))
|
||||
g.youmonst.m_ap_type = M_AP_NOTHING;
|
||||
|
||||
check_leash(u.ux0, u.uy0);
|
||||
@@ -2654,8 +2654,8 @@ lookaround()
|
||||
continue;
|
||||
|
||||
if ((mtmp = m_at(x, y)) != 0
|
||||
&& mtmp->m_ap_type != M_AP_FURNITURE
|
||||
&& mtmp->m_ap_type != M_AP_OBJECT
|
||||
&& M_AP_TYPE(mtmp) != M_AP_FURNITURE
|
||||
&& M_AP_TYPE(mtmp) != M_AP_OBJECT
|
||||
&& (!mtmp->minvis || See_invisible) && !mtmp->mundetected) {
|
||||
if ((g.context.run != 1 && !mtmp->mtame)
|
||||
|| (x == u.ux + u.dx && y == u.uy + u.dy
|
||||
@@ -2837,8 +2837,8 @@ monster_nearby()
|
||||
for (y = u.uy - 1; y <= u.uy + 1; y++) {
|
||||
if (!isok(x, y) || (x == u.ux && y == u.uy))
|
||||
continue;
|
||||
if ((mtmp = m_at(x, y)) && mtmp->m_ap_type != M_AP_FURNITURE
|
||||
&& mtmp->m_ap_type != M_AP_OBJECT
|
||||
if ((mtmp = m_at(x, y)) && M_AP_TYPE(mtmp) != M_AP_FURNITURE
|
||||
&& M_AP_TYPE(mtmp) != M_AP_OBJECT
|
||||
&& (!mtmp->mpeaceful || Hallucination)
|
||||
&& (!is_hider(mtmp->data) || !mtmp->mundetected)
|
||||
&& !noattacks(mtmp->data) && mtmp->mcanmove
|
||||
|
||||
Reference in New Issue
Block a user