-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathspacetax.basic.txt
48 lines (48 loc) · 1.78 KB
/
spacetax.basic.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
100 REM
110 REM BY * ANTHONY WOOD *
120 REM
130 CLS:PRINT" * SPACE TAXI *"
140 PRINT:PRINT"THE OBJECT OF THIS GAME IS TO GO OVER THE MIDDLE MT."
150 PRINT"AND LAND ON THE OTHER SIDE. ENTER THE HORIZ. & VERT."
160 PRINT"THRUST. IF YOU HIT THE RADIATION DOME YOU WILL CRASH."
170 PRINT:PRINT"HIT ANY KEY TO START."
180 IFINKEY$=""THEN180
190 CLS:FORT=0TO127:SET(T,0):NEXT
200 PRINT@23," RADIATION DOME "
210 READX1,Y1,X2,Y2:GOSUB290 :FORZ%=1TO5:X1=X2:Y1=Y2:READX2,Y2
220 GOSUB290 :NEXT:X=22:Y=36:XX=X:YY=Y
230 GOSUB460 :PRINT@664,"VERT. SPEED =";V;:PRINT@728,"HORZ. SPEED =";H;
240 PRINT@539,"FUEL =";45-F;
250 PRINT@834,"";:INPUT"VERT. FUEL";V1:PRINT@845," ";
260 PRINT@898,"HORZ. FUEL";:INPUTH1:PRINT@909," ";
270 MM=1:F=F+ABS(V1)+ABS(H1)
280 X1=X:Y1=Y:H=H+H1:V=V+V1-2:X2=X+H:Y2=Y-V:IFF>30THEN530 :ELSEGOSUB290 :GOTO230
290 DY=Y1-Y2:DX=X1-X2
300 IFDX=0THEN390
310 M=DY/DX
320 IFABS(M)>1THEN390
330 I=-SGN(DX)
340 FORX=X1TOX2STEPI
350 Y=M*(X-X1)+Y1+.5
360 IFMM=1THENGOSUB460 :ELSESET(X,Y)
370 NEXT
380 RETURN
390 IFDY=0THENRETURN:ELSEM=DX/DY
400 I=-SGN(DY)
410 FORY=Y1TOY2STEPI
420 X=M*(Y-Y1)+X1+.5
430 IFMM=1THENGOSUB460:ELSESET(X,Y)
440 NEXT:RETURN
450 DATA 0,18,20,37,37,37,62,6,89,39,102,39,127,16
460 REM -SUBROUTINE TO PRINT SHIP
470 RESET(XX,YY):RESET(XX+1,YY-1):RESET(XX+2,YY):XX=X:YY=Y
480 IFY>=38ANDV>-3ANDH<3ANDX>70THEN560
490 IFPOINT(X,Y)=-1ORPOINT(X+1,Y-1)=-1ORPOINT(X+2,Y)=-1THEN510
500 SET(X,Y):SET(X+1,Y-1):SET(X+2,Y):RETURN
510 PRINT@960,"BOOM!!! YOU CRASHED ";
520 GOTO520
530 IFF=>45THEN550 :ELSEPRINT@960," ** FUEL LOW **";
540 GOSUB290 :GOTO230
550 IF(45-F)<0THENF=F-(ABS(V1)+ABS(H1)):V=V-V1+2:H=H-H1:GOTO230
555 V1=0:H1=0:PRINT@960," ** OUT OF FUEL ** ";:GOSUB290:GOTO280
560 GOSUB500 :PRINT@960," ** YOU LANDED **";:GOTO520