diff --git a/doc/fixes3-7-0.txt b/doc/fixes3-7-0.txt index 69b74c818..f671c5921 100644 --- a/doc/fixes3-7-0.txt +++ b/doc/fixes3-7-0.txt @@ -1029,6 +1029,11 @@ improve consistency between applying a key and explicitly opening a door: isn't any door in the direction supplied, you're told "no door" and time elapses if you discover the non-door's terrain type but doesn't if you already knew the type there +if a bones file contains a doppelganger imitating a unique monster, a game + that loads those bones will end up with that monster counted as + having already been created so it won't be created if/when the time + for that arrives (the doppelganger will change its shape normally, + not be stuck in the unique monster's form) Fixes to 3.7.0-x Problems that Were Exposed Via git Repository diff --git a/src/restore.c b/src/restore.c index d864864b5..feffd1c30 100644 --- a/src/restore.c +++ b/src/restore.c @@ -402,7 +402,9 @@ restmonchn(NHFILE* nhfp) offset = mtmp->mnum; mtmp->data = &mons[offset]; if (ghostly) { - int mndx = monsndx(mtmp->data); + int mndx = (mtmp->cham == NON_PM) ? monsndx(mtmp->data) + : mtmp->cham; + if (propagate(mndx, TRUE, ghostly) == 0) { /* cookie to trigger purge in getbones() */ mtmp->mhpmax = DEFUNCT_MONSTER;