U1041 - monster hidden under a corpse not displayed immediately when it rots

There was already code to ensure that if a hidden monster moved, it would
no longer be hidden.  However, if the monster is asleep or whatever under
a rotting corpse, when the corpse rotted away, the monster would not
immediately become detected.  Add a check to the rot code before the newsym.
This commit is contained in:
cohrs
2004-05-21 21:33:19 +00:00
parent 0414c09c7a
commit c6d488fb8d
2 changed files with 12 additions and 2 deletions

View File

@@ -65,6 +65,8 @@ kicked objects do not slide when on the air or water levels
when a giant carrying a boulder dies in a pit, ensure that the corpse is
buried under the filled pit
when blind and levitating > shouldn't say "stairs" if player has not seen them
a slow-moving monster hidden under a rotting corpse was not immediately
displayed when the corpse rotted away
Platform- and/or Interface-Specific Fixes

View File

@@ -1556,8 +1556,16 @@ long timeout; /* unused */
}
}
rot_organic(arg, timeout);
if (on_floor) newsym(x, y);
else if (in_invent) update_inventory();
if (on_floor) {
struct monst *mtmp = m_at(x, y);
/* a hiding monster may be exposed */
if (mtmp && !OBJ_AT(x, y) &&
mtmp->mundetected && hides_under(mtmp->data)) {
mtmp->mundetected = 0;
}
newsym(x, y);
} else if (in_invent) update_inventory();
}
#if 0