U979 - mimic mimicking a boulder on Sokobon hole

On mazelike levels, mimics will mimic either boulders or statues (of giant
ants, as it turns out).  However, it does not make sense to mimic a boulder
on a hole or even a pit, since boulders would typically fall in.  Also,
statues are not typical objects in Sokoban.  So, skip statue special case
in Sokoban and always avoid the forced emulation of a boulder when on a
trap location outside a room.  This is a bit drastic, but I couldn't think of
an argument for adding the code to do this only for pits, holes, et al,
which are the most likely traps outside rooms anyway.
This commit is contained in:
cohrs
2004-05-24 22:07:18 +00:00
parent f92ac0c25c
commit 13abd42d6a
2 changed files with 3 additions and 2 deletions

View File

@@ -69,6 +69,7 @@ a slow-moving monster hidden under a rotting corpse was not immediately
displayed when the corpse rotted away
mimic that ends up on the rogue level should not mimic a closed door
polymorphed or shapechanged monster sometimes got erroneous hit points
mimic should not mimic a boulder while on a pit or hole location
Platform- and/or Interface-Specific Fixes

View File

@@ -1695,10 +1695,10 @@ register struct monst *mtmp;
if(!mtmp->minvis || See_invisible)
block_point(mx,my); /* vision */
} else if (level.flags.is_maze_lev && rn2(2)) {
} else if (level.flags.is_maze_lev && !In_sokoban(&u.uz) && rn2(2)) {
ap_type = M_AP_OBJECT;
appear = STATUE;
} else if (roomno < 0) {
} else if (roomno < 0 && !t_at(mx, my)) {
ap_type = M_AP_OBJECT;
appear = BOULDER;
if(!mtmp->minvis || See_invisible)