A space shooter. Use ASDZ keys to move (inverted axis). Use . to fire. Watch out! They fire back.
PROG : 16509
D-FILE: 18233
VARS : 19026
E-LINE: 19027
STKBOT: 19027
STKEND: 19027
9999 means line number
PRINT means treat as KEYWORD P
10 REM **ZTSXXSTZ*SLR/1984
20 LET S=0
25 LET SP=10
30 DIM X(4)
40 DIM Y(4)
70 FOR A=1 TO 4
80 LET X(A)=INT (16*RND)
90 LET Y(A)=INT (17*RND+3)
100 NEXT A
110 GOTO 190
150 FOR A=1 TO 4
160 IF Y(A)<>27 THEN PRINT AT X
(A),Y(A);"<O>"
170 NEXT A
180 PRINT AT 11,13;"¶";TAB 15;"
ö";AT 13,13;"ö";TAB 15;"¶"
185 RETURN
190 FOR W=1 TO SP
200 LET B=0+(INKEY$="A")-(
INKEY$="D")
210 LET V=0+(INKEY$="W")-(
INKEY$="S")
220 IF INKEY$="." THEN GOSUB 60
0
230 FOR A=1 TO 4
235 IF Y(A)=27 THEN GOTO 260
240 LET X(A)=X(A)-(V=-1 AND X(A
)>0)+(V=1 AND X(A)<15)
250 LET Y(A)=Y(A)-(B=-1 AND Y(A
)>3)+(B=1 AND Y(A)<20)
260 NEXT A
270 CLS
280 GOSUB 150
290 NEXT W
300 IF Y(1)=27 AND Y(2)=27 AND
Y(3)=27 AND Y(4)=27 THEN GOTO 55
0
305 IF RND>.25 THEN GOTO 190
310 LET G=INT (4*RND+1)
315 IF Y(G)=27 THEN GOTO 190
320 LET C=X(G)+1
330 LET U=Y(G)
340 FOR W=1 TO 5
350 PRINT AT C,U;"³"
360 PRINT AT C,U-1;"µ õ"
370 PRINT AT C,U-1;" ";AT C+1
,U-1;"óóó"
380 PRINT AT C,U-1;" ";AT C+1
,U-1;" "
390 NEXT W
400 IF RND>.5 THEN GOTO 190
410 PRINT "HIT<<>>"
420 FOR A=1 TO 50
430 FAST
440 SLOW
450 NEXT A
460 FOR A=1 TO 200
470 SLOW
480 FAST
490 NEXT A
500 PRINT AT 20,0;"PRESS A KEY
TO PLAY AGAIN**";21,0;"SCORE:";S
510 SLOW
520 PAUSE 4E4
530 RUN
550 LET S=S+100
560 LET SP=SP-(SP>4)
565 PRINT AT 21,0;"SCORE:";S
570 PAUSE 200
590 GOTO 70
600 FOR A=1 TO 14
610 PRINT AT 12,A;" ";AT 12,28-
A;" "
620 NEXT A
630 PRINT AT 12,0;"
"
640 FOR A=1 TO 4
650 IF X(A)=12 THEN GOTO 670
660 GOTO 690
670 IF Y(A)>11 AND Y(A)<15
THEN LET S=S+10
680 IF Y(A)>11 AND Y(A)<15
THEN LET Y(A)=27
690 NEXT A
700 RETURN
800 SAVE "ZTSXXSTZ"
810 RUN