How do I tell Inform 7 not to parse something?

467 Views Asked by At

I am at my wit's end. I've tried everything I can think of and I can't find the answer to this anywhere online. A previous question I asked got one response, the person who answered said that I hadn't told I7 to not parse the line. He then suggested that I use 'Questions' by Michael Callaghan but this caused my game to crash on startup (runtime error).

I've found one way of accomplishing this but I can't tell I7 to resume normal parsing afterwards.

My code:

"The Children of Tragedy" by Luke Tooze

Chapter 1 - Beginning

The player's forename is an indexed text that varies. The player's full name is an indexed text that varies.

When play begins:
    now parsing is disabled;
    say "The heat is unbearable.[paragraph break]You pull as hard as you can on her limp arm but the bookshelf is far too heavy.[line break]You barely notice as the fireman rips you from her and hoists you onto his shoulder.";
    now the command prompt is "What is your name? > ".

To decide whether collecting names:
    if the command prompt is "What is your name? > ", yes;
    no.

After reading a command when collecting names:
    now the player's full name is "[the player's command in title case]";
    now the player's forename is word number 1 in the player's full name;
    now the command prompt is "Are you male or female? > ".

Gender is a kind of value. The genders are masculine, feminine, and unknown. Understand "male", "man", "boy" or "m" as masculine. Understand "female", "woman", "girl" or "f" as feminine.

A person has a gender. The gender of the player is unknown.

To decide whether the gender of the player is unknown:
    if the command prompt is "Are you male or female? > ", yes;
    no.

After reading a command when the gender of the player is unknown:
    if the player's command includes "[gender]":
        now the gender of the player is the gender understood;
        if the gender of the player is masculine, now the player is male;
        if the gender of the player is feminine, now the player is female;
        now the command prompt is "> ";
        say "Thank you, [player's forename].[paragraph break]";
        say "[banner text]";
        move the player to the bed;
        reject the player's command.

Instead of looking when collecting names: do nothing.
Rule for printing the banner text when collecting names: do nothing.
Rule for constructing the status line when collecting names: do nothing.
Instead of looking when the gender of the player is unknown: do nothing.
Rule for printing the banner text when the gender of the player is unknown: do nothing.
Rule for constructing the status line when the gender of the player is unknown: do nothing.
1

There are 1 best solutions below

0
On

Maybe you could use scenes. Something like:

Collect is a scene. Collect begins when play begins.
The collected's state is a truth state that varies.
The collected's state is usually false.  
Collect ends when the collected's state is true.

Instead of looking during Collect: do nothing.

Instead of collecting during Collect:
    say "You have collected!";
    now the connected's state is true.