ESCAPE
by Lynne Rollinson
from ZX Computing Jun/Jul.1984

You've seen the film, now play the game
with Lynne Rollinson of Bolton.


One of the few graphic adventure games that we have
received, Escape provides a real challenge to would be
Alcatraz fugitives!

To escape you must first climb the ladder using key '7'.
Once at the top you must try and avoid the guard, for, if
caught you will be promptly dragged back to the top of the
ladder and thrown back to the bottom. This is a very
effective routine and I often allowed myself to be caught
just so that I could watch it!

Assuming that you eventually scale the ladder and sidestep
the guard, you must now make your way along to the top
escape hatch and wait until it is in line with the lower
hatch. When the two are aligned then jump! If you have
judged your leap correctly you are free and your successful
escape will be recorded on the display. Oh, one last thing,
just to make life a little more difficult you are given a
limited amount of time in which to accomplish all this. The
amount of time you have left is displayed on a clock on the
screen. Note that "time", "escapes" and "0" in line 10 and
20 are INVERSE characters.

This is a very well written program and extra speed was
achieved by using POKES to the display file (screen) rather
than the command PRINT.


Variables

ES  The number of successful escapes the player has made.
    At the start of a game it is set to 156 (code for an
    inverse 0) but this is increased for each escape.
P   Used as a flag in lines 320 to 400 and is an indicator
    as to whether the player is on the ladder or not. It is
    also used to blank out the old asterisk after a move.
A$  Used to erect the ladder.
B   Used to alter the extent of the guard's movement; an
    inverse asterisk.
Z   The start of the display file.
X   The player's position. X is added to Z to give the
    current position of the player on the screen.
T   The time which remains to the player - set at 165
    (code for an inverse 9) at the start of each escape.
F   Usually used in FOR/NEXT loops.
G   Used either for a flag when the time runs out or if a
    successful escape has been made. If the time runs out
    whilst you are on the ladder then you will slide back
    down; if you have reached the top and both escape
    hatches are in line then you will have escaped.
L   Used in line 815 as a delay.


Along the lines

10-150    Build the scenery and initialise the variables.
160-310   Main program loop. This is left when your time
          runs out, an escape is made or you are caught.
320-380   If the player is still on the ladder, set P to 22
          (loop to show player falling). P=22 if on the
          ladder, and 0 if jumping down the escape hatch.
420-640   Caught by guard routine; drags player to top of
          ladder and then jumps to L320.
650-680   Shows when the player has been caught.
710-740   Shows that an escape has been made.
750-770   Increases escape counter, check for end of game.
800-820   Scroll clear screen.
830-980   Introduction.


--
Another Fine Product transcribed by:
Jim Grimwood (jimg@globalnet.co.uk), Weardale, England
--
