It looks like trying to walk past the dragon was meant to provoke him, as seen by this case in DRAGON-FCN:
(<AND <VERB? WALK>
<EQUAL? ,HERE ,DRAGON-ROOM>
<EQUAL? ,PRSO ,P?NORTH>>
<SETG DRAGON-ANGER <+ ,DRAGON-ANGER 3>>
<TELL
"The dragon puts out a claw, grins (all of his sword-sharp teeth
glinting in the light), and blocks your way." CR>)>>
But instead that's handled by the exits in DRAGON-ROOM:
(NORTH TO DRAGON-LAIR
IF ICE-MELTED ELSE "The dragon hisses at you and blocks your way.")
(IN TO DRAGON-LAIR
IF ICE-MELTED ELSE "The dragon hisses at you and blocks your way.")
Since the latter handles both NORTH and IN, I guess the code in DRAGON-FCN was an earlier attempt.
I thought it was interesting, and it could easily be reinstated by changing the room to use function exits. But I don't know how sensible it is, so I just thought I'd point it out here.
It looks like trying to walk past the dragon was meant to provoke him, as seen by this case in
DRAGON-FCN
:But instead that's handled by the exits in
DRAGON-ROOM
:Since the latter handles both NORTH and IN, I guess the code in
DRAGON-FCN
was an earlier attempt.I thought it was interesting, and it could easily be reinstated by changing the room to use function exits. But I don't know how sensible it is, so I just thought I'd point it out here.