Straw Into Gold
Example 305
★★★"Straw Into Gold"
The Cell is a room. Rumpelstiltskin is an improper-named man in the Cell. Rumpelstiltskin can be identified or unidentified. Rumpelstiltskin is unidentified.
R-name is a kind of value. The R-names are dwarf, guy, dude, and man-thing. Rumpelstiltskin has an R-name. Understand "[R-name]" as Rumpelstiltskin.
Our example is slightly complicated by the fact that "man" is a name already known to Inform, so we can't re-use it as a kind of value. This is possible to work around, though:
Understand "man" as man-thing.
Now we borrow from the Activities chapter to look at the exact wording of the player's command:
After reading a command:
if the player's command includes "[R-name]",
now the R-name of Rumpelstiltskin is the R-name understood;
if the player's command includes "Rumpelstiltskin":
now Rumpelstiltskin is identified;
now Rumpelstiltskin is proper-named.
Rule for printing the name of Rumpelstiltskin when Rumpelstiltskin is unidentified:
if the R-name of Rumpelstiltskin is man-thing:
say "man";
otherwise:
say "[R-name]".
Test me with "x dwarf / x guy / x dude / look / x rumpelstiltskin / look / x man".
Test me with "x dwarf / x guy / x dude / look / x rumpelstiltskin / look / x man".
Cell
You can see a dwarf here.
>(Testing.)
>[1] x dwarf
You see nothing special about the dwarf.
>[2] x guy
You see nothing special about the guy.
>[3] x dude
You see nothing special about the dude.
>[4] look
Cell
You can see a dude here.
>[5] x rumpelstiltskin
You see nothing special about Rumpelstiltskin.
>[6] look
Cell
You can see Rumpelstiltskin here.
>[7] x man
You see nothing special about Rumpelstiltskin.
You can see a dwarf here.
>(Testing.)
>[1] x dwarf
You see nothing special about the dwarf.
>[2] x guy
You see nothing special about the guy.
>[3] x dude
You see nothing special about the dude.
>[4] look
Cell
You can see a dude here.
>[5] x rumpelstiltskin
You see nothing special about Rumpelstiltskin.
>[6] look
Cell
You can see Rumpelstiltskin here.
>[7] x man
You see nothing special about Rumpelstiltskin.