Inform 7 6 M 62 (v 9.3)
Hi everyone, I’m back from a whole lot of life and I’m once again trying to do something gameshaped.
Relevant code:
The transporter is a supporter in Core_C.
The transporter is enterable.
The transporter can be inert, receptive, responding, balancing, descending, holding, or ascending (this is its active status property).
Rule for writing a paragraph about the transporter:
let current status be the active status of the transporter;
if the player is enclosed by the transporter:
say "The message you would get standing on the transporter.";
else:
say "Curving away before you, a large silvery disk hangs low to the ground. [cont]";
if the current status is:
-- inert:
say "You can make out a fringe of your reflection in its glossy surface.";
-- otherwise:
say "The otherwise case, adding the rest later."
Which gets me:
Problem. The case 'inert' is required to be a constant value, rather than something which has different values at different times: specifically, it has to be an active status.
Huh? Specifically, it is an active status
, and I’m trying to check if the active status
of the platform is it. And what’s all this about inert
needing to be a constant value? I’m trying to check the value of current status
, not the value of inert
, if that’s even a thing that makes sense to do. I’m not sure what I’ve written here, but it’s obviously not what I mean. I’ll do the gigantic if else
if I must, but it seems inelegant. And tedious.