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****************************