From: Pasi Kallinen Date: Wed, 5 May 2021 17:32:47 +0000 (+0300) Subject: Entering special room, wake up only that room X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9fa9f00f8a8519fb3614851630ca9c4b999c3833;p=nethack Entering special room, wake up only that room ... instead of doing a level-wide wake-up. Fixes #429 --- diff --git a/doc/fixes37.0 b/doc/fixes37.0 index bd5834ac4..ecae26886 100644 --- a/doc/fixes37.0 +++ b/doc/fixes37.0 @@ -495,6 +495,8 @@ change "killed by , while {paralyzed|frozen} by " into hero's helplessness "It looks very angry" would be given if a hero wielding Excalibur or Demonbane offended an unseen demon lord +Entering a special room, only wake up the monsters in that room instead of + doing a level-wide wake-up Fixes to 3.7.0-x Problems that Were Exposed Via git Repository diff --git a/src/hack.c b/src/hack.c index a324726b7..bcec86d9a 100644 --- a/src/hack.c +++ b/src/hack.c @@ -2650,6 +2650,9 @@ check_special_room(boolean newlev) for (mtmp = fmon; mtmp; mtmp = mtmp->nmon) { if (DEADMONSTER(mtmp)) continue; + if (!isok(mtmp->mx,mtmp->my) + || roomno != levl[mtmp->mx][mtmp->my].roomno) + continue; if (!Stealth && !rn2(3)) mtmp->msleeping = 0; }