//	Quest source comments for the Annotated Adventure

var c01 = 'A single quote (at the start of a line) introduces a comment.';
var c03 = 'Angle brackets surround the parameters of a built-in function.';
var c07 = 'Braces surround a sequence of script commands, turning them into a single unit.';
var c15 = 'Hash marks surround the name of a string variable, returning the variable\'s current value.';
var c51 = 'Percentage signs surround the name of a numeric variable, returning the variable\'s current value.';
var c52 = 'Dollar signs surround the name of a function, returning the result of executing the function.';
var c14 = 'Introduces an output formatting code. |b is bold on, |xb is bold off, |cl is blue, |cb is black, |n is newline.';
var c11 = 'Joins this line to the next, skipping any leading spaces on the next line.';
var c53 = 'A <b>procedure</b> is a sequence of script commands.';
var c54 = 'A <b>function</b> is a sequence of script commands, like a procedure but returning a result.';
var c02 = 'Every game must contain a sequence of script commands contained within <b>define&nbsp;game</b> ... <b>end&nbsp;define</b>. The parameter to <b>define&nbsp;game</b> is the name of the game.';
var c30 = 'Every room is specified by a sequence of script commands contained within <b>define&nbsp;room</b> ... <b>end&nbsp;define</b>. The parameter to <b>define&nbsp;room</b> is the name of the room.';
var c27 = 'Every object in a room is specified by a sequence of script commands contained within <b>define&nbsp;object</b> ... <b>end&nbsp;define</b>. The parameter to <b>define&nbsp;object</b> is the name of the object.';
var c47 = 'A sequence of script commands contained within <b>define&nbsp;procedure</b> ... <b>end&nbsp;define</b>, which can be executed using <b>do</b>. The parameter to <b>define&nbsp;procedure</b> is the name of the procedure.';
var c48 = 'A text string contained within <b>define&nbsp;text</b> ... <b>end&nbsp;define</b>. The parameter to <b>define&nbsp;text</b> is the name of the string. <b>intro</b> is a built-in name, which is automatically output at the start of the game.';
var c49 = 'A series of strings contained within <b>define&nbsp;synonyms</b> ... <b>end&nbsp;define</b>, which map words typed by the player into game words.';
var c04 = 'Specifies the minimum version of ASL needed for the game.';
var c05 = 'Specifies the player\'s initial location.';
var c06 = 'Executes a script command, or multiple commands contained within {...}, at the start of the game.';
var c08 = 'Assigns a value to a numeric variable.';
var c10 = 'A new variable can be associated with a room, object or item, simply by assigning it a value.';
var c09 = 'Assigns a value to a string variable.';
var c12 = 'Defines a default pattern for outputting a room\'s general parameters (name, exits, objects).';
var c39 = 'Executes a script command, or multiple commands contained within {...}, to output a room\'s general parameters (name, exits, objects).';
var c13 = 'Outputs its parameter.';
var c17 = 'Tests a condition and executes a script command, or multiple commands contained within {...}, if the condition is True. Optionally, with <b>else</b>, executes another script command, or multiple commands contained within {...}, if the condition is False.';
var c18 = 'Negates the condition being tested.';
var c19 = 'Returns True if the specified parameters are equal.';
var c26 = 'Returns True if the player has the specified <b>item</b>.';
var c16 = 'A built-in string giving the current room\'s prefix and name (or alias).';
var c20 = 'A built-in string giving the current room\'s exit directions.';
var c21 = 'A built-in string giving a plain list of objects in the current room.';
var c22 = 'A built-in string giving a formatted list of objects in the current room.';
var c23 = 'Gives a semicolon-separated list of the <b>items</b> in the game. An <b>item</b> is a thing that can be carried around by the player (as opposed to an <b>object</b>, which always stays in the same room).';
var c24 = 'Gives a semicolon-separated list of the <b>items</b> which the player initially possesses.';
var c28 = 'Defines a string which is output before the thing\'s name.';
var c29 = 'Defines the appearance of a thing.';
var c31 = 'Defines an alternative name for a thing.';
var c32 = 'Defines an exit from a room.';
var c25 = 'Executes a script command, or multiple commands contained within {...}, when the specified <b>player command</b> is typed anywhere in the game.';
var c33 = 'Executes a script command, or multiple commands contained within {...}, when the specified <b>player command</b> is typed within this room.';
var c34 = 'Removes an <b>item</b> from the player.';
var c35 = 'Moves an <b>object</b> to a room.';
var c36 = 'Conceals an <b>object</b> from a room, for example when the player picks it up(the opposite of <b>showobject</b>).';
var c37 = 'A built-in string giving the current (lower-cased) <b>player command</b>.';
var c38 = 'Executes a <b>player command</b>. The optional <b>normal</b> parameter specifies the use of the default command handler, rather than the specialised one defines just for the curren room.';
var c40 = 'Executes a procedure: a sequence of script commands.';
var c41 = 'Executes a script command, or multiple commands contained within {...}, when the player enters the room.';
var c42 = 'Reveals an <b>object</b> in a room (the opposite of <b>hideobject</b>).';
var c43 = 'The object is initially hidden from view.';
var c44 = 'Defines a string which is output after the object\'s name.'
var c45 = 'Ends the game with the player having won. Outputs text contained within an optional <b>define&nbsp;text&nbsp;&lt;win&gt;</b> ... <b>end&nbsp;define</b> block.';
var c46 = 'Ends the game with the player having lost. Outputs text contained within an optional <b>define&nbsp;text&nbsp;&lt;lose&gt;</b> ... <b>end&nbsp;define</b> block.';

