I’ve noticed that a lot of my games with similar motifs had very similar OPTIONS or VERBS commands. This gave me the idea of putting said commands into an extension, so I don’t have to cut-and-paste text.
I generally like to alphabetize things, which creates a small problem: how do I deal with if one game has a special options command the others don’t? Let’s say DEF is the option. Then this wouldn’t be adequate for all versions of the story:
Version xxx of My Series Options by Andrew Schultz
optionsing is an action out of world.
understand "options" as optionsing.
carry out optionsing:
say "ABC does this.";
say "DEF does that.";
say "GHI does something else.";
But we could say
def-available is a truth state that varies.
carry out optionsing:
say "ABC does this.";
if def-available is true, say "DEF does that.";
say "GHI does something else.";
say "JKL does that other thing.";
Then we could set def-necessary in the main program e.g.
include My Series Options by Andrew Schultz
def-available is true.
This looks like a good way, but I was also interested by having
Version xxx of My Series Options by Andrew Schultz
number-in-series is a number that varies. [the exact number is defined at the top of the main story.ni]
to decide whether def-available:
if number-in-series is 2, no;
yes;
carry out optionsing:
say "ABC does this.";
if def-available, say "DEF does that.";
etc.
The “to decide” statements seem fiddlier, but the definitions would be in one localized place, which would be nice.
There don’t seem to be massive plusses or minuses either way, so it’s not a huge decision, but I’m wondering what others would recommend in case I’m missing something important.
Thanks!