Fix polymorphing monster trying to dig undiggable wall

Not sure if this can actually happen in a non-modified game, but
my fuzz testing stopped here, so deal with it.

If a polymorphing monster turns into an earth elemental or other
wall-phasing monster, it can wander into a non-diggable area, and
then turn into a tunneling monster.
This caused mdig_tunnel to issue an impossible.
This commit is contained in:
Pasi Kallinen
2020-03-28 15:43:00 +02:00
parent b8668da3ea
commit 87513ad6bf

View File

@@ -1483,7 +1483,8 @@ register int after;
}
/* possibly dig */
if (can_tunnel && mdig_tunnel(mtmp))
if (can_tunnel && may_dig(mtmp->mx, mtmp->my)
&& mdig_tunnel(mtmp))
return 2; /* mon died (position already updated) */
/* set also in domove(), hack.c */