1 WIDTH(255) 5 PRINT CHR$(26); 10 GOTO 1000 20 GOTO 1010 100 PRINT CHR$(26);:RETURN 110 REM 111 IF HO>51 THEN HO=51 112 IF VE>23 THEN VE=23 113 PRINT CHR$(27);"=";CHR$(VE+32);CHR$(HO+32); 115 RETURN 120 HO=PEEK(&HEF5A):VE=PEEK(&HEF5B)-&HF0 121 VE=VE*2 122 IF HO>127 THEN HO=HO-128:VE=VE+1 123 VE=VE-PEEK(&HEF62):IF VE<0 THEN VE=32+VE 124 RETURN 200 IN$=INKEY$:RETURN 210 GOSUB 200:IF IN$="" THEN 210 211 RETURN 250 PRINT CHR$(7);:RETURN 260 RV=RND(1):RETURN 270 FR=FRE(2):RETURN 300 SR$=STR$(SR) 301 Q7=LEN(SR$):IF Q7=0 THEN RETURN 302 IF RIGHT$(SR$,1)<>" " THEN 304 303 SR$=LEFT$(SR$,Q7-1):GOTO 301 304 IF LEFT$(SR$,1)<>" " THEN RETURN 305 SR$=RIGHT$(SR$,Q7-1):GOTO 301 310 Q4=SR:IF CN<>0 THEN 316 312 SR=INT(SR+.5):GOSUB 300:GOTO 330 316 Q5=SGN(SR):SR=ABS(SR):Q8=INT(SR):Q9=SR-Q8 318 FOR Q6=1 TO CN:Q9=Q9*10:NEXT Q6 320 Q9=INT(Q9+.5):SR=Q9:GOSUB 300 322 Q9$=RIGHT$("00000000000000000000"+SR$,CN) 324 IF Q8=0 AND Q9=0 THEN Q5=1 326 SR=Q8:GOSUB 300:IF Q5=-1 THEN SR$="-"+SR$ 328 SR$=SR$+"."+Q9$ 330 IF LEN(SR$)<=CT THEN 334 332 SR$=LEFT$("********************",CT):GOTO 340 334 SR$=RIGHT$(" "+SR$,CT) 340 SR=Q4:RETURN 350 LPRINT SR$;:RETURN 360 LPRINT:RETURN 1000 A=100:GOTO 20 1010 DIM S(3) 1050 : 1060 : 1080 GOSUB 100:HO=11:VE=6:GOSUB 110:PRINT"TANKSCHIETEN" 1090 VE=7:GOSUB 110:PRINT"------------" 1100 VE=18:HO=0:GOSUB 110:PRINT"Instrukties ? (j/n) "; 1110 INPUT IN$ 1120 IF IN$="j"OR IN$="J"THEN GOSUB 6000:GOTO 2000 1130 : 2000 GOSUB 100 2010 V=0:T1=5:T2=5:T3=5 2020 FOR I=1 TO 39:PRINT"*";:NEXT 2030 HO=39:FOR VE=0 TO 22:GOSUB 110:PRINT"*";:NEXT 2040 VE=23:FOR HO=38 TO 1 STEP-1:GOSUB 110:PRINT"*";:NEXT 2050 HO=0:FOR VE=22 TO 1 STEP-1:GOSUB 110:PRINT"*";:NEXT 2060 FOR VE=3 TO 17 STEP 3 2070 HO=1:GOSUB 110:PRINT" <>---*" 2080 VE=VE+1:GOSUB 110:PRINT" ====";CHR$(48+(VE+3)/7); 2090 HO=0:VE=VE+1:GOSUB 110 2100 PRINT CHR$(48+T1);" =======" 2110 HO=1:VE=VE+1:GOSUB 110:PRINT" <''''''> " 2120 VE=VE+1:GOSUB 110:PRINT" ''''''" 2130 NEXT VE 2140 VE=0:HO=12:GOSUB 110:PRINT"wacht seconden" 2150 FOR I=5 TO 1 STEP-1:HO=18:VE=0:GOSUB 110:PRINT CHR$(48+I) 2160 FOR J=1 TO 500:NEXT J,I 2170 : 3000 FOR WW=20 TO 1 STEP-1 3010 :IF T1+T2+T3=0 THEN 5000 3020 :VE=23:HO=10:GOSUB 110 3030 :PRINT"********************"; 3040 :VE=0:HO=12:GOSUB 110 3045 :SR=WW:GOSUB 300 3050 :PRINT" Nog ";SR$" doelen ****" 3060 :GOSUB 260:L=5*INT(12*RV) 3070 :GOSUB 260:LA=13+INT(26*RV) 3080 :GOSUB 200:IF IN$<>""THEN 3080 3090 :HO=LA 3100 :FOR VE=1 TO 22 3110 ::GOSUB 110 3120 ::PRINT"=":KL=160 3130 ::FOR J=1 TO L:NEXT 3140 :::GOSUB 200:IF IN$<>""THEN GOSUB 3500 3150 ::IF V=1 THEN V=0:GOTO 3240 3160 ::GOSUB 110:PRINT"-":KL=98 3170 ::VE=VE+1:GOSUB 110:PRINT"-"; 3180 ::FOR J=1 TO L:NEXT 3190 ::GOSUB 200:IF IN$<>""THEN GOSUB 3500 3200 ::IF V=1 THEN V=0:GOTO 3240 3210 ::VE=VE-1:GOSUB 110:PRINT" " 3220 :NEXT VE 3230 :FOR I=1 TO 2000:NEXT 3240 NEXT WW:GOTO 5000 3250 : 3500 Y=VAL(IN$):IF Y<1 OR Y>3 THEN RETURN 3510 IF VE=7*Y-3 AND KL=98 THEN 3540 3520 IF VE=7*Y-4 AND KL=160 THEN 3540 3530 KL=32 3540 ON Y GOTO 3600,3700,3800 3550 : 3600 IF T1=0 THEN RETURN 3610 T1=T1-1:HO=0:VE=5:GOSUB 110:PRINT CHR$(48+T1) 3620 VE=3 3630 GOTO 3830 3640 : 3700 IF T2=0 THEN RETURN 3710 T2=T2-1:HO=0:VE=12:GOSUB 110:PRINT CHR$(48+T2) 3720 VE=10 3730 GOTO 3830 3740 : 3800 IF T3=0 THEN RETURN 3810 T3=T3-1:HO=0:VE=19:GOSUB 110:PRINT CHR$(48+T3) 3820 VE=17 3830 FOR HO=12 TO 37:GOSUB 110:PRINT" .";:NEXT HO 3840 HO=12:FOR VE=1 TO 22:GOSUB 110 3850 PRINT" " 3860 NEXT VE 3870 GOSUB 4000 3880 V=1:RETURN 3890 : 4000 VE=23:HO=16:GOSUB 110 4010 IF KL=32 THEN PRINT" misser ! ";:GOTO 4050 4020 IF KL=98 THEN PRINT" raker ! ";:S(Y)=S(Y)+1:GOTO 4050 4030 IF KL=160 THEN PRINT" voltreffer ! "; 4040 S(Y)=S(Y)+2 4050 IF S(Y)<>10 THEN 4110 4060 VE=7*Y-2:HO=39:GOSUB 110 4070 PRINT"0" 4080 VE=7*Y-3:HO=39:GOSUB 110 4090 PRINT"1" 4100 RETURN 4110 VE=7*Y-2:HO=39:GOSUB 110 4120 PRINT CHR$(48+S(Y)) 4130 FOR I=1 TO 2000:NEXT I 4140 RETURN 4150 : 5000 O=INT(100*(S(1)+S(2)+S(3))/(2*(19-WW))) 5010 HO=3:VE=0:GOSUB 110 5020 PRINT"je scoorde een gemiddelde van ";O;"%" 5030 HO=9:VE=23:GOSUB 110 5040 PRINT"nog een spelletje ? (j/n)"; 5050 GOSUB 210 5060 IF IN$="j"OR IN$="J"THEN RUN 5070 IF IN$<>"n"AND IN$<>"N"THEN 5050 5080 GOSUB 100:PRINT:PRINT:PRINT 5090 PRINT"tot ziens ...":PRINT:PRINT:PRINT 5100 END 6000 GOSUB 100:PRINT 6010 PRINT"TANKSCHIETEN is een spel waarbij je ":PRINT 6020 PRINT"met drie tanks met elk vijf kogels":PRINT 6030 PRINT"moet trachten om zoveel mogelijk":PRINT 6040 PRINT"doelen te raken.":PRINT:PRINT:PRINT 6050 PRINT"Je kan een doel volledig, half of" 6060 PRINT:PRINT"helemaal niet raken, wat je 2, 1 of 0" 6070 PRINT:PRINT"punten oplevert." 6080 PRINT:PRINT:PRINT:PRINT 6090 PRINT"Druk een toets in om verder te gaan.":GOSUB 210 6100 GOSUB 100:PRINT 6110 PRINT"Je kan op een van de twintig bewegende":PRINT 6120 PRINT"doelen vuren door het nummer in te":PRINT 6130 PRINT"toetsen dat bij de tank hoort.":PRINT 6140 PRINT:PRINT"Het aantal kogels is links vermeld," 6150 PRINT:PRINT"de score rechts.":PRINT 6160 PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT 6170 PRINT"Druk een toets in om te beginnen." 6180 GOSUB 210 6190 RETURN 6200 : 9000 REM ********************** 9010 REM * * 9020 REM * TANKSCHIETEN * 9030 REM * * 9040 REM ********************** 9050 : 9060 : 9070 REM LEPPENS JOS 9080 REM KORTE HEERSTRAAT 6 9090 REM 3580 NEERPELT - BELGIE 9100 : 9110 REM OORSPRONKELIJK INGEZONDEN 9120 REM VOOR DE HOBBYSCOOPWEDSTRIJD 9130 REM IN 1980 9140 : 9150 REM AANGEPAST VOOR BASICODE-2 9160 REM DOOR LEDEN VAN 9170 REM DE BASICODEGROEP