the-infocom-files / starcross

Starcross
5 stars 3 forks source link

The enunciator panel vanishes if you turn off the computer #33

Open eriktorbjorn opened 5 years ago

eriktorbjorn commented 5 years ago
>TURN ON COMPUTER
The lights in the room come on and there is a deafening FOOOOM! noise as the
computer starts up.
The main display blinks twice, a bell rings, and a gold rod falls from the
output hopper onto the floor! A moment later, a previously unseen enunciator
panel comes on.
The panel has three banks of four colored lights: red, yellow, green, and blue.
The first is labelled with a symbol of the emission of rays: of the lights
underneath, the red one is flashing and the yellow one is brightly lit. The
second bank is labelled with a stylized docking port and the third with an
airlock. Of these two banks, the first yellow one is brightly lit and the other
yellow one is flashing. The panel also contains six other lights, each bearing a
stylized picture. The first four, all dark, represent navigation, engine,
library, and defenses. A fifth, picturing a cage, is brightly lit. The sixth is
flickering dimly. It bears a symbol in three parts: the first two parts, in
black, are a solid block and a fluid level. The third, in red, is a series of
parallel wavy lines.

>FIND ENUNCIATOR PANEL
It's right here.

>TURN OFF COMPUTER
The computer is off.

>FIND ENUNCIATOR PANEL
You can't see any enunciator panel here.

>TURN ON COMPUTER
The lights in the room come on and there is a deafening FOOOOM! noise as the
computer starts up.
The main display blinks and displays the word "Ready".

>FIND ENUNCIATOR PANEL
You can't see any enunciator panel here.

That's because SWITCH-FCN makes the enunciator panel invisible every time you turn off the computer, but only makes it visible the first time you turn on the computer.

Since ENUNCIATOR-F has a case for describing itself when the computer is switch off ("The panel is dark.") I think we should just remove <FSET ,ENUNCIATOR ,INVISIBLE> from SWITCH-FCN, i.e. here:

           (<VERB? LAMP-OFF>
        <SETG SWITCH-ON? <>>
        <FSET ,ENUNCIATOR ,INVISIBLE>
        <TELL "The computer is off." CR>)>>

Though we need to make sure this doesn't cause any regressions, of course.