8-Bit Software Online Conversion
:2.W.FSIM2 - Listing
1 REM Seek and Destroy
2 REM By A.Weston
3 REM July-August 1993
4 REM Buy the Metallica song
5 REM of the same name!
6 REM **********************
10MODE7:VDU23;8202;0;0;0;:PRINTTAB(0,
0);CHR$129;CHR$157;CHR$131;CHR$141;"SEEK
AND DESTROY by A.J.W."
20PRINTTAB(0);CHR$129;CHR$157;CHR$131
;CHR$141;"SEEK AND DESTROY by A.J.W."
30PRINT''" <O> Thrust + <K> Thrust -"
40PRINT" <Q> Bank left <W> Bank Right
"
41PRINT" <L> Up <P> Down"
42PRINT" <G> Missile <SPACE> Fire"
43PRINT" <ESCAPE> Eject"
47 PRINT'" Watch your shields and you
"
48PRINT" have 3 missiles. 11 kills to
"
49PRINT" complete."
50PRINT''" <SPACE> to start":REPEATUN
TILGET=32
60REM************INITIATE************
70ENVELOPE1,1,-1,-1,0,50,150,50,127,-
1,-1,-1,0,0
80ENVELOPE2,4,0,0,0,0,0,0,10,-1,-1,-1
,126,126
90ENVELOPE3,1,-1,0,0,255,0,0,127,-1,-
1,-1,0,0
100DIM L(8)
110AA%=330:AB%=250
120MO%=0:ML%=4
130GT%=0
140SH%=40
150AB%=250
160X%=640:Y%=512
170PX%=700:PY%=Y%+50
180QX%=1:QY%=1
190FO%=0
200H%=0
210T=TIME
220P%=1
230GX%=640:GY%=512
240IF PX%<700ANDPX%>450AND QX%>=125 AN
D PY%<=600 AND PY%>=400 THEN PROCED
250Y2%=0:Y3%=0
260REM***MAIN PROGRAM***
270MODE5:VDU23;8202;0;0;0;
280*FX200,1
290*LOAD S.BSCR
300MOVE500,0:DRAW500,250:MOVE700,0:DRA
W700,250:MOVE0,400:DRAW330,400:MOVE950,4
00:DRAW1280,400:MOVE0,600:DRAW330,600:MO
VE950,600:DRAW1280,600
310GCOL0,2:MOVE330,250:DRAW330,780:DRA
W950,780:DRAW 950,250:DRAW340,250
320VDU24,338;254;942;776;
330VDU19,1,2;0;
340VDU19,3,6;0;
350SOUND1,-8,170,-1
360SOUND0,-10,6,-1
370REPEAT
380IFINKEY(-17)THENY2%=Y2%+8:Y3%=Y3%-8
:PX%=PX%+P%
390IFINKEY(-34)THENY2%=Y2%-8:Y3%=Y3%+8
:PX%=PX%-P%
400IFINKEY(-55)THENP%=P%+1
410IFINKEY(-71)THENP%=P%-1
420IFINKEY(-87)THENY%=Y%-4:PY%=PY%-4
430IFINKEY(-56)THENY%=Y%+4:PY%=PY%+4
440IFINKEY(-113)THENVDU19,0,4;0;:PRINT
TAB(5,1);"Ejected":GOSUB710
450IFINKEY(-84)ANDML%>0THENGOSUB1140
460IFINKEY(-99)THENMOVE400,255:GCOL0,3
:DRAW640,512:DRAW800,255:GCOL0,0:MOVE400
,255:DRAW640,512:DRAW800,255:FO%=1
470IFFO%=1 AND PX%>600 AND PX%<650 AND
PY%>500 AND PY%<600THEN GOSUB760
480GCOL0,1
490MOVEX%,Y%:PLOT1,-300,Y2%:MOVEX%,Y%:
PLOT1,300,Y3%
500GCOL0,2:PLOT69,X%,GY%:PLOT69,X%+24,
GY%
510IFTIME-T>500THENGCOL0,2:MOVEPX%,PY%
:PLOT1,-QX%,QY%:MOVEPX%,PY%:PLOT1,QX%,QY
%:PLOT1,2*(-QX%),0
520IFMO%=1THENMOVEAA%,AB%:DRAWAA%+20,A
B%+20
530FY%=RND(25):IFFY%=3THENGCOL0,3:MOVE
PX%,PY%:DRAW640,512:FORW1%=1TO40:NEXTW1%
:GCOL0,0:MOVEPX%,PY%:DRAW640,512:SH%=SH%
-1:PRINTTAB(10,1);"Shields"SH%:IFSH%<0TH
ENPROCED
540GCOL0,0:MOVEX%,Y%:PLOT1,-300,Y2%:MO
VEX%,Y%:PLOT1,300,Y3%
550PLOT69,X%,GY%:PLOT69,X%+24,GY%
560MOVEPX%,PY%:PLOT1,-QX%,QY%:MOVEPX%,
PY%:PLOT1,QX%,QY%:PLOT1,2*(-QX%),0
570IFMO%=1THENMOVEAA%,AB%:DRAWAA%+20,A
B%+20
580IFY2%>250 THEN Y2%=250:Y3%=-250
590IFY3%>250 THEN Y3%=250:Y2%=-250
600GY%=GY%-P%
610IFGY%<=254 THENGY%=Y%
620IFGY%>Y%THENGY%=GY%-4
630IFP%<1THENP%=P%+1
640IFTIME-T>500 THEN QX%=QX%+P%/2:QY%=
QY%+P%/2
650IF PX%>500ANDPX%<700 AND QX%>=125
AND PY%<=600 AND PY%>=400THENPROCED
660IF QX%>=125THENQX%=1:QY%=1:PX%=700:
PY%=Y%+50:AA%=330:AB%=250:MO%=0
670IFAA%>=PX%THENPROCEX:MO%=0
680IFMO%=1THENAB%=AB%+8:AA%=AA%+8:IFAB
%>PY%THENAB%=AB%-16
690IFGT%>10THENGOTO1220
700UNTILFALSE
710*FX15,0
720VDU19,3,6;0;
730SOUND 0,-15,7,50:SOUND1,3,1,50:REPE
ATUNTILGET=32
740RUN
750RETURN
760*FX21,4
770*FX21,5
780SOUND1,3,1,3:SOUND0,-15,7,3
790COLOUR2:PRINTTAB(1,1);"HITS ";H%
800FO%=0:H%=H%+1
810SOUND1,-8,170,-1:SOUND0,-10,6,-1
820IFH%>15THENPROCEX
830RETURN
840END
850DEF PROCEX
860*FX21,4
870*FX21,5
880VDU19,1,1;0;:GT%=GT%+1
890SOUND1,1,1,100:SOUND0,2,7,100
900FOREX%=1TO100
910GCOL0,RND(2)
920MOVEPX%,PY%:DRAWRND(1280),RND(1024)
930NEXTEX%
940PRINTTAB(1,1);"HITS "
950COLOUR2:PRINTTAB(1,28);"Kills "GT%
960PX%=700:PY%=Y%+50:QX%=1:QY%=1
970VDU19,1,2;0;
980T=TIME
990SOUND1,-8,170,-1:SOUND0,-10,6,-1
1000AA%=330:AB%=250
1010CLG:H%=0:ENDPROC
1020DEF PROCED
1030CLS
1040*FX21,4
1050*FX21,5
1060FOREX2%=1TO10
1070VDU19,0,7;0;
1080SOUND0,-10,4,1
1090VDU19,0,0;0;
1100NEXTEX2%
1105IFSH%<=0THENCOLOUR1:PRINTTAB(1,1);"
Shields destroyed"'"Aircraft also."ELSEV
DU19,2,14;0;:COLOUR2:PRINTTAB(1,1);"Coll
ision!":*FX9,5
1106*FX15,0
1110COLOUR1:PRINTTAB(1,25);"<SPACE>:new
game":REPEATUNTILGET=32:RUN
1120ENDPROC
1130SOUND 0,-15,7,50:SOUND1,3,1,50
1140AA%=330:AB%=250
1150MO%=1:ML%=ML%-1
1160*FX21,4
1170*FX21,5
1180SOUND1,1,1,100:SOUND0,2,4,100
1190SOUND1,-8,170,-1:SOUND0,-10,6,-1
1200RETURN
1210REM*END*
1220*FO
1230*FX21,4
1240*FX21,5
1250MODE2
1260VDU23;8202;0;0;0;
1270*FX15,0
1280PROCFDR("All enemy aircraft",2)
1290PROCFDR("Now destroyed.",5)
1300PROCFDR("``````````````````",8)
1310PROCFDR("Thankyou for playing",11)
1320REPEAT:PROCFDR(" SEEK AND DESTROY "
,14):IFINKEY(-99)THENGOTO1340
1330UNTILFALSE
1340RUN
1350DEF PROCFDR(T$,VP)
1360RESTORE1400
1370FORCO%=1TO8:READ L(CO%):NEXTCO%
1380FORFO%=1TO8:COLOUR L(FO%):PRINTTAB(
(20-LEN(T$))/2,VP);T$:T=TIME:REPEATUNTIL
TIME-T>5:NEXTFO%
1390FORFO2%=8TO1STEP-1:COLOUR L(FO2%):P
RINTTAB((20-LEN(T$))/2,VP);T$:T=TIME:REP
EATUNTILTIME-T>5:NEXTFO2%
1400DATA0,4,1,5,2,5,3,7
1410ENDPROC
2000 REM***********************
2010 REM*Yeah, I do still program
2020 REM*on the BBC sometimes!
2030 REM*In between going to work
2040 REM*Listening to music,
2050 REM*watching videos and going
2060REM*swimming,clubbing and reading
2070REM*science fiction and also
2080REM*Acorn Computing.See yer!
2090REM*Andrew Weston.
3000REM*Watch out for the Eddie demo
3010REM*-coming soon,hopefully!
3020REM****************************