Jumping back into Inform 7

So, it’s been about a year and I’m trying got get myself back into the swing of I7. Over this time I’ve lost a lot of my language ability. I’m probably going to use this thread for little odds and ends until I can get myself up to speed again. You see, I’m bending I7 in weird and wonderful ways, but need to teak some of the more basic functionality so it plays well with my custom interpreter. The 'terp itself is a little.l… “out of spec” and has weird input and out rules by nature of the game I’m writing.

First thing, which is pretty basic, is that I need to alter the quit text. My interpreter can’t handle input and output on the same line and will eat any text before a prompt. I just need to enter a line break after it asks if I want to quit. (I’ve also already removed the input prompt for the game, so that’s taken care of.)

It appears I have to do something like this

Check quitting the game:
end the game saying “You quit”.

But I want to have the Yes/no option. Can’t I just change the rule so it retains the yes/no thing? I just need it to do a line break after the question.

Check quitting the game: say "Are you sure you want to quit (y/n)?"; if the player consents: end the game saying "You quit"; otherwise: say "OK, you don't quit." instead.

“If the player consents” waits for a yes/no answer. In this case, since the thing we said ends with a question mark (any other sentence-ending punctuation would do), the input winds up on the next line. You also need an “instead” in the otherwise clause to prevent the game from going to the usual carry out quitting the game rule (which appears to be in I6, so can’t easily be modified, though it could probably be unlisted).

This isn’t exactly what I’m looking for. The problem is it’s adding lots of unneeded white space, and the following text.

“Would you like to RESTART, RESTORE a saved game, QUIT or UNDO the last command?”

I want it to just exit the interpreter. (Also, I have UNDO turned off on my game) and it’s asking if I want to quit when I just told it to quit. Also if I tell it to restart, it crashes my interpreter. (I’ll probably turn this command off too)

Is there a better way than ‘end the game saying “You quit”;’

something like exit() or something? I want it to kill the program outright.

[code]Include Basic Screen Effects by Emily Short.

Check quitting the game:
say “Are you sure you want to quit (y/n)?”;
if the player consents:
stop game abruptly;
otherwise:
say “OK, you don’t quit.” instead.[/code]