>OPEN TRAP DOOR
The door reluctantly opens to reveal a rickety staircase descending into
darkness.
>GO THROUGH TRAP DOOR
You hit your head against the trap door as you attempt this feat.
I'm guessing that OTHER-SIDE doesn't realize that the trap door has another side, because the downward exit is handled by (DOWN PER TRAP-DOOR-EXIT). In the Cellar, it's handled by (UP TO LIVING-ROOM IF TRAP-DOOR IS OPEN).
I think that in ZIL terms, the exit from the Living Room is an "FEXIT" (function exit), while the exit from the Cellar is a "DEXIT" (door exit).
The OTHER-SIDE routine appears to look for a "DEXIT" associated with the object you're trying to go through. There just isn't any way it could work from the Living Room. I guess the trap door will need to handle the "THROUGH" action itself for that case.
I'm guessing that
OTHER-SIDEdoesn't realize that the trap door has another side, because the downward exit is handled by(DOWN PER TRAP-DOOR-EXIT). In the Cellar, it's handled by(UP TO LIVING-ROOM IF TRAP-DOOR IS OPEN).I think that in ZIL terms, the exit from the Living Room is an "FEXIT" (function exit), while the exit from the Cellar is a "DEXIT" (door exit).
The
OTHER-SIDEroutine appears to look for a "DEXIT" associated with the object you're trying to go through. There just isn't any way it could work from the Living Room. I guess the trap door will need to handle the "THROUGH" action itself for that case.