Chapter 15 - The Workshop Platform
The programmable dais is an enterable supporter in the Workshop. Understand "machine" or "equipment" or "platform" or "big" or "black" or "metal" or "round" or "machinery" or "coil" or "coils" as the dais.
"A programmable dais sits in the middle of the room. It has the raw look of lab equipment rather than a nice smooth commercial instrument."
The description is "It's a round black metal platform with substantial stabil[izing] coils visible underneath, five or six feet in diameter. This is experimental lab grade letter equipment, ferociously powerful, insanely dangerous."
After examining the programmable dais:
say "The dais has [a list of things which are part of the dais]."
The big lever is part of the programmable dais. The big lever is a device. The description is "One of those big heavy levers you see at demolitions. You won't be tripping this thing by accident."
Understand "flip [something]" as pushing. Understand "use [big lever]" as pushing.
Sanity-check pulling the big lever:
try switching on the programmable dais instead.
Sanity-check pushing the big lever:
try switching on the programmable dais instead.
Sanity-check putting something irretrievable on the programmable dais:
if the noun is the player:
make no decision;
say "Since [the noun] contain[s] [if the noun encloses the tub][the tub][otherwise]something useful[end if], it might be a bad idea to change its form. [You] might not be able to get the contents back." instead.
Sanity-check switching on the programmable dais:
try switching on the big lever instead.
Sanity-check switching off the programmable dais:
say "It doesn't stay on long enough to need turning off." instead.
[Joke responses. These duplicate, more or less, code for the synthesizer above; inelegant, but there aren't enough of these jokes to be worth a more elaborate implementation of synthesis generally that would take them into account.]
Instead of switching on the big lever when the switch-setting of the massive switch is synthesize and the programmable dais supports the roll and the programmable dais supports the rock:
say "You can't get to rock & roll with just synthesis. You'd need an ampersand generator, which unfortunately (despite promising research and a prototype resembling a pretzel-maker) has yet to achieve stable results."
Instead of switching on the big lever when the switch-setting of the massive switch is synthesize and the programmable dais supports the sill and the programmable dais supports the cate:
say "It feels like [you] ought to be close to getting a silicate out of all this, but no, I fear not. That final L on SILL is going nowhere."
Instead of switching on the big lever when the switch-setting of the massive switch is synthesize and the programmable dais supports the key-lime and the programmable dais supports a pi-object:
say "What, are you hoping for key lime π? I'm afraid synthesis doesn't do puns as such."
Instead of switching on the big lever when the switch-setting of the massive switch is synthesize and the programmable dais supports the pan and the programmable dais supports the ear:
say "That Indian soft cheese is called paneer, you know, not panear."
Instead of switching on the big lever:
if the boiler is not switched on or a massive plug is free:
say "[You] pull the lever, but a lot of nothing happens. It doesn't look like there is power flowing to the machine." instead;
if the switch-setting of the massive switch is:
-- synthesize:
if the number of things on the programmable dais is not two:
say "[The programmable dais] goes red, then dims again when it doesn't find sufficient contents for synthesis." instead;
synthesize contents of programmable dais instead;
-- swap homonym:
if the programmable dais does not support something:
say "[The programmable dais] goes red. There's a hot smell, as though you'd turned on the stove with no pot on the burner. Finally it dims again." instead;
if exactly one thing (called target) is on the programmable dais:
let result be the homonym-match of the target;
if the result is not the player:
if something (called the source) proffers the target:
now the result is not proffered by anything;
now the source proffers the result;
abide by the dangerous destruction rules for the target;
move the result to the programmable dais;
move the target to the repository;
if the result is the passage-place:
say "[The programmable dais] glows deep red, then deeper. There's a roar like a stadium being demolished, and a passage opens, descending into the dais itself." instead;
otherwise:
say "[The programmable dais] glows deep red. Almost at once [the result] [is-are] lying on the surface. [result description][line break]" instead;
say "[The programmable dais] goes red, then dims again. Apparently it can't find a homonym to fit [the list of things on the programmable dais]." instead;
now the big lever is switched off.
The massive switch is part of the programmable dais. The description is "A large black switch with a red arrow painted on it. There are two stops, labeled with black marker on tape: [i]swap homonym[/i] and [i]synthesize[/i]. It is currently set to [switch-setting of the massive switch]."
The switch-setting is a kind of value. The switch-settings are swap homonym and synthesize. The massive switch has a switch-setting. The switch-setting of the massive switch is swap homonym. Understand "swap" or "homonym" or "swap homonym" as swap homonym. Understand "synthesise" as synthesize.
[This will catch FLIP SWITCH and a range of similar attempts:]
Sanity-check pushing the massive switch:
try turning the massive switch instead.
Sanity-check pulling the massive switch:
try turning the massive switch instead.
Carry out turning the massive switch:
if the switch-setting of the massive switch is swap homonym:
now the switch-setting of the massive switch is synthesize;
otherwise:
now the switch-setting of the massive switch is swap homonym.
Report turning the massive switch:
say "[You] give the switch a strong twist and turn it to [i][the switch-setting of the massive switch][/i]." instead.
Understand "switch [massive switch]" as turning.
Understand "switch [massive switch] to [a switch-setting]" as switching it to.
Understand "switch [something] to [a switch-setting]" as switching it to.
Understand "set [massive switch] to [a switch-setting]" as switching it to.
Understand "turn [massive switch] to [a switch-setting]" as switching it to.
Understand "switch [programmable dais]" as turning.
Understand "switch [programmable dais] to [a switch-setting]" as switching it to.
Understand "switch [programmable dais] to [a switch-setting]" as switching it to.
Understand "set [programmable dais] to [a switch-setting]" as switching it to.
Understand "turn [programmable dais] to [a switch-setting]" as switching it to.
Switching it to is an action applying to one thing and one switch-setting.
Sanity-check switching the programmable dais to the switch-setting understood:
now the noun is the massive switch.
Check switching something which is not the massive switch to the switch-setting understood:
say "That is not a setting of [the noun]." instead.
Check switching the massive switch to the switch-setting of the massive switch:
say "[The massive switch] is already set to [switch-setting understood]." instead.
Carry out switching the massive switch to the switch-setting understood:
now the switch-setting of the massive switch is the switch-setting understood.
Report switching the massive switch to the switch-setting understood:
say "[You] give the switch a strong twist and turn it to [the switch-setting of the massive switch]." instead.
Test programmable with "tutorial off / x platform / x switch / turn switch / x switch / set switch to swap homonym / switch switch to swap homonym / turn switch to swap homonym / put the crate and the ring on the platform / turn on lever / shoot cratering with gun" holding the crate and the anagramming gun and the ring in the Workshop.