diff --git a/src/hack.c b/src/hack.c index 0230e79d5..013fc43b0 100644 --- a/src/hack.c +++ b/src/hack.c @@ -1839,9 +1839,11 @@ domove_core() } else if (mtmp->mpeaceful && !mtmp->mtame && (!goodpos(u.ux0, u.uy0, mtmp, 0) || t_at(u.ux0, u.uy0) != NULL + || mtmp->ispriest + || mtmp->data == &mons[PM_ORACLE] || mtmp->m_id == g.quest_status.leader_m_id)) { /* displacing peaceful into unsafe or trapped space, or trying to - * displace quest leader */ + * displace quest leader, Oracle, or priest */ u.ux = u.ux0, u.uy = u.uy0; /* didn't move after all */ You("stop. %s doesn't want to swap places.", upstart(y_monnam(mtmp)));