Merge branch 'NetHack-3.6'

This commit is contained in:
nhmall
2019-06-02 16:19:53 -04:00
4 changed files with 28 additions and 10 deletions

View File

@@ -1845,10 +1845,9 @@ struct permonst *mptr; /* reflects mtmp->data _prior_ to mtmp's death */
shkgone(mtmp);
if (mtmp->wormno)
wormgone(mtmp);
if (In_endgame(&u.uz)) {
mtmp->mx = mtmp->my = 0;
if (In_endgame(&u.uz))
mtmp->mstate |= MON_ENDGAME_FREE;
}
mtmp->mstate |= MON_DETACH;
iflags.purge_monsters++;
}
@@ -2633,7 +2632,7 @@ struct monst *mon;
m1 = m2 = m3 = m4 = m5 = zm = (struct monst *) 0;
if (!msgmv || (g.moves - msgmv) > 200L) {
if (!msgmv || rn2(2))
You("feel besieged.");
You_feel("besieged.");
msgmv = g.moves;
}
/*
@@ -2644,7 +2643,7 @@ struct monst *mon;
* m5 a pet.
*/
for (mtmp = fmon; mtmp; mtmp = mtmp->nmon) {
if (DEADMONSTER(mtmp))
if (DEADMONSTER(mtmp) || mtmp == mon)
continue;
if (mtmp->mx == 0 && mtmp->my == 0)
continue;
@@ -2679,8 +2678,9 @@ struct monst *mon;
mtmp->mstate |= MON_OBLITERATE;
mongone(mtmp);
mtmp->mx = mtmp->my = 0;
rloc_to(mon, mx, my);
/* some places in the code might still reference mtmp->mx, mtmp->my */
/* mtmp->mx = mtmp->my = 0; */
rloc_to(mon, mx, my); /* note: mon, not mtmp */
} else {
/* last resort - migrate mon to the next plane */
if (Is_waterlevel(&u.uz) || Is_firelevel(&u.uz) || Is_earthlevel(&u.uz)) {