WESTERN ADVENTURE GAME


Your rough, tough and ready desparado colleagues have fled into the scrubland, dropping their guns and the loot.

Well we all know that a man, or a Calamity Jane, has got to do what ever it is. So, you are on your own outside the bank and you have to make it to the horses, which some idiot left on the outskirts of the town.

On the way you can collect money and guns with bullets and then decide, if you run into the Sheriff's posse, whether to bribe or blast your way to freedom. Obviously your aim is to reach the horses with some bullets and some money.

We are not advocating here that crime pays - that is up to you.

How to play

Use the ARROW keys to make your moves.

Your footsteps will appear on the screen as you move toward the horse in the top left hand corner of the screen.

Your progress will be recorded on the bottom of the screen, and you will, in your progress, be told that you have run into the posse, and you will then be asked if you intend to shoot or bribe your way out.

Key in SHOOT or BRIBE

Should you run out of bullets, I'm afraid that a lynching is your fate, as the posse were playing poker when you robbed the bank, and the Sheriff had a Royal Flush.

To exit from the game press the BREAK key.

Programming hints

You can increase the number of events in the adventure by allowing W on line 450, to be larger.

A procedure describing the event, and the effect of it, on the money and bullets can be written.

The new procedures can be listed after line 490.

Remember that

BUis number of bullets
MOis money
Xis the random amount to increase/decrease

   10 REM WESTERN ADVENTURE GAME
   20 REM COPYRIGHT (C) G.LUDINSKI 1983
   30 *KEY 10 "OLD|M"
   40 MODE 5
   50 X0=13:Y0=22
   60 VDU 19,3,2,0,0,0
   70 COLOUR 128:COLOUR 2
   80 CLS
   90 GCOL 0,1
  100 REM
  110 REM BINARY TO DECIMAL CONVERSION F
OR USER DEFINED GRAPHICS
  120 REM
  130 DEF FNH(N$)=VAL(RIGHT$(N$,1))+2*VA
L(MID$(N$,7,1))+4*VAL(MID$(N$,6,1))+8*VA
L(MID$(N$,5,1))+16*VAL(MID$(N$,4,1))+32*
VAL(MID$(N$,3,1))+64*VAL(MID$(N$,2,1))+1
28*VAL(LEFT$(N$,1))
  140 REM
  150 REM CACTUS
  160 REM
  170 VDU 23,225,FNH("11011011"),FNH("11
011011"),FNH("11011011"),255,255,FNH("00
011000"),FNH("00011000"),FNH("00011000")
  180 COLOUR3:FORI=1TO150:PRINTCHR$(225)
;"  ";:NEXTI:COLOUR2
  190 REM
  200 REM DRAW BANK
  210 REM
  220 PROC_BLOCK(940,280,279,300)
  230 COLOUR129:PRINTTAB(15,18)"BANK":CO
LOUR128
  240 REM
  250 REM HORSE
  260 REM
  270 VDU23,224,0,0,FNH("01100000"),FNH(
"01110000"),FNH("01011111"),FNH("0001111
1"),FNH("00010001"),FNH("00010001")
  280 COLOUR1:PRINTTAB(1,2);CHR$(129):CO
LOUR2
  290 REM
  300 REM WRITE MESSAGES
  310 REM
  320 BU=5:MO=5:DI=1
  330 PROC_BLANK:PRINTTAB(0,24);DI;") ";
" Money    Bullets"TAB(6,25);MO;"       
 ";BU
  340 IF BU<=0 THEN PRINT'"You are shot.
 You   have travelled ";DI;" yds":GOTO78
0
  350 X=INT(RND(1)*5+2)
  360 *FX4,1
  370 TU$=GET$
  380 IF TU$<CHR$(136) OR TU$>CHR$(139) 
THEN 370
  390 IF TU$=CHR$(136) THEN X0=X0-1
  400 IF TU$=CHR$(137) THEN X0=X0+1
  410 IF TU$=CHR$(138) THEN Y0=Y0+1
  420 IF TU$=CHR$(139) THEN Y0=Y0-1
  430 PRINTTAB(X0,Y0)"*";
  440 DI=DI+1
  450 W=INT(RND(1)*4+1)
  460 COLOUR1
  470 IF W=1 THEN PROC_POSSE
  480 IF W=2 THEN PROC_BULLETS
  490 IF W=3 THEN PROC_MONEY
  500 COLOUR2
  510 GOTO330
  520 REM
  530 DEFPROC_POSSE:PRINTTAB(0,26)"You m
eet one of the sheriff's posse. Do you s
hoot or bribe?"
  540 INPUTI$
  550 IF I$<>"SHOOT" AND I$<>"shoot" AND
 I$<>"BRIBE" AND I$<>"bribe" THEN VDU11:
GOTO540
  560 IF I$="SHOOT" OR I$="shoot" THEN B
U=BU-X
  570 IF I$="BRIBE" OR I$="bribe" THEN M
O=MO-X
  580 IF BU<0 THEN BU=0
  590 IF MO<0 THEN MO=0
  600 ENDPROC
  610 DEFPROC_BULLETS:PRINTTAB(0,26)"You
 find ";X;"  bullets that your gang left
 behind"
  620 BU=BU+X
  630 I$=GET$
  640 ENDPROC
  650 DEFPROC_MONEY:PRINTTAB(0,26)"You f
ind ";X;" bags of  money that your gangl
eft behind"
  660 MO=MO+X
  670 I$=GET$
  680 ENDPROC
  690 DEFPROC_BLOCK(X,Y,W,H)
  700 MOVE X,Y:MOVE X+W,Y
  710 PLOT 85,X,Y+H
  720 PLOT 85,X+W,Y+H
  730 ENDPROC
  740 DEFPROC_BLANK
  750 PRINTTAB(1,24)SPC(140);
  760 ENDPROC
  770 END
  780 REM END