U846 - xorns and pits
Change pit behavior to always mark a non-flying poly'd player as trapped in a pit, even when Passes_walls is set. This allows players polymorphed into xorns to descend into pits and pick things up. In this case, any attempt to move out of the pit now takes a turn but always succeeds. Also fixed a related bug (w/o ID) that a player could become trapped as if in a pit when leaving xorn form because u.utrap wasn't checked, and simplified the code since the extra Passes_walls checks are no longer needed. Also updated code in sit.c that duplicated uteetering_at_seen_pit.
This commit is contained in:
@@ -65,9 +65,7 @@ dosit()
|
||||
|
||||
if (OBJ_AT(u.ux, u.uy) &&
|
||||
/* ensure we're not standing on the precipice */
|
||||
!((!u.utrap || u.utraptype != TT_PIT) &&
|
||||
(trap && trap->tseen &&
|
||||
(trap->ttyp==PIT || trap->ttyp==SPIKED_PIT)))) {
|
||||
!uteetering_at_seen_pit(trap)) {
|
||||
register struct obj *obj;
|
||||
|
||||
obj = level.objects[u.ux][u.uy];
|
||||
|
||||
Reference in New Issue
Block a user