Duel


The classic European confrontation, in high resolution graphics forest! It's just you and your challenger - and all just because you didn't return his joysticks! At least you can shoot first . . . and third . . . if there is a 'third'!

    1 REM *** BBC VERSION ***
   10 REM ************* DUEL ************** @
1983 MICHAEL BEWS
   20 REM CONVERTED TO BBC MICRO BY C.R.TANNE
R
   30 VDU 23,224,3,3,15,15,126,127,255,127
   40 VDU 23,225,15,255,255,255,255,255,255,2
23
   50 VDU 23,226,0,192,240,248,126,254,252,25
2
   60 VDU 23,227,127,63,55,31,31,24,0,0
   70 VDU 23,228,255,255,247,63,60,60,60,60
   80 VDU 23,229,255,188,248,248,240,48,0,0
   90 VDU 23,230,0,0,0,0,0,0,0,0
  100 VDU 23,231,60,60,60,60,60,60,60,60
  110 VDU 23,232,8,0,138,40,138,162,160,32
  120 VDU 23,233,248,112,112,119,38,250,254,1
12
  130 VDU 23,234,112,112,112,80,80,80,80,120
  140 VDU 23,235,31,14,14,238,100,95,127,14
  150 VDU 23,236,14,14,14,10,10,10,10,30
  160 MODE 1:VDU 23;8202;0;0;0;28,4,27,35,4
  165 VDU 19,0,2,0,0,0,19,1,0,0,0,0,19,2,7,,0
0,19,3,1,0,0,0
  170 sh=0:w=0:ds=0:os=0:my=20:g$=STRING$(37,
" "):f$=STRING$(39," ")
  180 m$=CHR$(233)+f$+CHR$(234):n$=CHR$(235)+
f$+CHR$(236):t$=CHR$(224)+CHR$(225)+CHR$(226)
+g$+CHR$(227)+CHR$(228)+CHR$(229)+g$+CHR$(230
)+CHR$(231)+CHR$(232)
  190 CLS:COLOUR 2:PRINT " D U E L   @1983   
MICHAEL BEWS"
  200 GCOL0,1:PROCover(4,1,t$):PROCover(6,2,t
$):PROCover(11,3,t$):PROCover(15,1,t$)
  210 PROCover(18,2,t$):PROCover(22,3,t$):POC
over(28,5,t$):PROCover(20,6,t$):PROCover(14,6
,t$)
  220 PROCover(0,5,t$):PROCover(2,6,t$):PROCo
ver(27,9,t$):PROCover(0,11,t$):PROCover(3,13,
t$):PROCover(29,13,t$)
  230 GCOL0,3:PROCover(6,11,m$):PROCover(26,1
1,n$)
  240 PRINT TAB(0,18);"YOU ARE THE DUELLIST O
N THE LEFT TAKE ALTERNATE SHOTS WITH YOUR OPP
ONENT UNTIL ONE SCORES A HIT."
  250 PRINT "  USE 'A&Z' TO AIM,'N' TO FIRE."
;
  260 COLOUR 3:PRINT TAB(0,17);"DUELLIST:  ";
TAB(9,17);ds;TAB(21,17);"OPPONENT:  ";TAB(30,
17);os
  270 PRINT TAB(23,1);"SHOTS:   "
  280 A=INKEY(0):IF A=-1 THEN GOTO 280
  290 IF A<>65 AND A<>78 AND A<>90 THEN GOTO 
280
  300 IF A=65 THEN my=my+1:GOTO 380
  310 IF A=90 THEN my=my-1:GOTO 380
  320 sh=sh+1:PRINT TAB(29,1);sh
  330 GCOL 3,3:PLOT 69,348,528:PLOT 1,604,my*
4
  340 PLOT 69,348,528:PLOT 1,604,my*4
  350 FOR x=50 TO 45 STEP -1:SOUND 1,-15,x+50
,1:NEXT x
  360 IF my<2 AND my>-2 THEN w=1:GOTO 550
  370 GOTO 420
  380 IF my<-20 THEN my=-20
  390 IF my>20 THEN my=20
  400 *FX15,1
  410 GOTO 280
  420 FOR x=1 TO 200:NEXT
  430 y=INT(RND(50)-24.9)
  440 sh=sh+1:PRINT TAB(29,1);sh
  450 PLOT 69,952,528:PLOT 1,-596,y*4
  460 TIME=0:REPEAT UNTIL TIME>5
  470 PLOT 69,952,528:PLOT 1,-596,y*4
  480 PLOT 69,952,528:PLOT 1,-596,y*4
  490 TIME=0:REPEAT UNTIL TIME>5
  500 PLOT 69,952,528:PLOT 1,-596,y*4
  510 FOR x=57 TO 53 STEP -1:SOUND 1,-15,50+x
,1:NEXT x
  520 IF y<3 AND y>-3 THEN GOTO 550
  530 *FX15,1
  540 GOTO 280
  550 IF w=1 THEN ds=ds+1:PRINT TAB(9,17);ds;
TAB(7,13);"WINNER"
  560 IF w=0 THEN os=os+1:PRINT TAB(30,17);os
;TAB(26,13);"WINNER"
  570 FOR x=1 TO 4:SOUND 1,-15,100,1:SOUND 1,
-15,85,1:NEXT x
  580 FOR x=1 TO 600:NEXT x:*FX15,1
  590 sh=0:w=0:my=RND(40)-20:PRINT "PRESS <RE
TURN>":REPEAT UNTIL INKEY$(0)<>""
  600 GOTO 190
  610 DEFPROCover(X%,Y%,C$)
  620 VDU 5:MOVE (X%*32)+128,1032-((Y%*32)+12
8):PRINT C$:VDU 4
  630 ENDPROC