home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
SIMTEL
/
CPMUG
/
CPMUG033.ARK
/
CAPSERCH.BAS
< prev
next >
Wrap
BASIC Source File
|
1984-04-29
|
4KB
|
180 lines
REM THIS IS THE PROGRAM "C.A.P. SEARCH"
REM WRITTEN BY CAPT. BRUCE BEAM CAP
REM 1683 COACHLIGHT DR NEW BERLIN,WI 53151
2 PRINT "C.A.P. SEARCH"
3 PRINT "INPUT A NUMBER";
4 INPUT K1
5 RANDOMIZE
6 PRINT "YOUR MISSION IS TO FIND AN AIRCRAFT THAT"
7 DIM X(30),Y(30)
10 X0=INT(31*RND)+1
15 Y0=INT(15*RND)+1
20 X1=INT(31*RND)+1
25 Y1=INT(15*RND)
30 F1=28
35 F2=50
40 R=RND*((ABS(Y1-Y0)+ABS(X1-X0))/1.5)
45 FOR I=1 TO R
50 S=S+INT(SGN(X1-X0)+SGN(.5-RND))
55 X(I)=X0+S
60 T=T+INT(SGN(Y1-Y0)+RND*1.99)
65 Y(I)=Y0+T
70 IF X(I)<3 THEN GOTO 100
75 IF X(I)>30 THEN GOTO 100
80 IF Y(I)<2 THEN GOTO 100
85 IF Y(I)>13 THEN GOTO 100
90 NEXT I
95 I=I-1
100 X2=X(I)
105 Y2=Y(I)
120 PRINT "DEPARTED AN AIRPORT IN ";32*Y0+X0;
122 PRINT "FOR ONE IN ";32*Y1+X1
125 P1=X0
126 P2=Y0
127 P3=X0
128 P4=Y0
129 P5=X0
130 P6=Y0
135 PRINT
140 GOTO 400
200 PRINT "LRT HAS A LEAD"
202 PRINT "AN AIRCRAFT WAS SEEN FLYING ";
205 IF Y2<P6 THEN PRINT "NORTH";
210 IF Y2>P6 THEN PRINT "SOUTH";
215 IF X2<P5 THEN PRINT "WEST";
220 IF X2>P5 THEN PRINT "EAST";
225 PRINT " IN GRID ";32*P6+P5
230 GOTO 965
270 G9=32*P4+P3
275 PRINT "532GF HEARS ELT IN ";G9
280 GOTO 820
300 IF RND<.3 THEN GOTO 400
305 PRINT "A/C FOUND IN GRID ";32*Y2+X2;"BY ";
310 IF U=1 THEN GOTO 330
315 IF U=2 THEN GOTO 340
320 IF U=3 THEN GOTO 350
321 PRINT "A FARMER!"
322 STOP
330 PRINT "8633S."
335 GOTO 355
340 PRINT "532GF."
345 GOTO 355
350 PRINT "LRT."
355 PRINT "IT TOOK ";B;":";C
357 PRINT "CONGRATULATIONS, M/C!"
358 STOP
360 PRINT "TIME ";B;":";C
365 PRINT "UNIT","33S","2GF","LRT"
370 PRINT
375 PRINT "ASSIGNED TO",V1*32+H1,V2*32+H2,V3*32+H3
380 PRINT "NOW IN",P2*32+P1, P4*32+P3, P6*32+P5
385 PRINT "FUEL",F1,F2
390 PRINT
400 PRINT "MOVE IT: 0-NONE, 1-A/C, 2-LRT, 3-STATUS";
405 INPUT M
407 IF M=3 THEN GOTO 360
408 IF M=9 THEN GOTO 305
410 L=L+1
412 IF L>12 + RND*12 THEN Z=2
413 B=INT(L/3)
414 C=(L-3*B)*20
415 PRINT
425 IF M<4 THEN GOTO 660
435 GOTO 400
440 N=8
445 GOTO 465
450 PRINT "RE-ENTER ";
455 PRINT "A/C N#";
460 INPUT N
465 PRINT "GRID";
470 INPUT G
475 PRINT
480 V=INT((G-1)/32)
485 H=G-32*V
490 IF N=33 THEN GOTO 575
495 IF N=2 THEN GOTO 595
500 IF N=8 THEN GOTO 510
505 GOTO 450
510 R1=1
515 H3=H
520 V3=V
525 GOTO 400
575 A1=1
580 V1=V
585 H1=H
590 GOTO 400
595 A2=1
600 H2=H
605 V2=V
610 GOTO 400
620 PRINT "532GF DOWN FOR GAS IN ";32*P4+P3
625 PRINT
630 F2=50
635 A2=0
640 H2=0
645 V2=0
660 IF A1<>1 THEN GOTO 750
665 FOR I=1 TO 2
670 F1=F1-1
675 IF F1<=0 THEN GOTO 735 REM LINE 735?
680 IF P2=V1 THEN GOTO 690
685 P2=P2+SGN(V1-P2)
690 IF P1=H1 THEN GOTO 700
695 P1=P1+SGN(H1-P1)
700 IF X2=P1 AND Y2=P2 THEN GOTO 725
705 NEXT I
710 IF RND>.07 THEN GOTO 750
715 PRINT "8633S LANDING IN ";32*P2+P1;
720 GOSUB 880
722 GOTO 740
725 U=1
730 GOTO 300
735 PRINT "8633S DOWN FOR GAS IN ";P2*32+P1
736 PRINT
740 F1=28
742 A1=0
743 H1=0
744 V1=0
750 IF A2<>1 THEN GOTO 900
755 FOR I=1 TO 3
760 F2=F2-1
765 IF F2<=0 THEN GOTO 620
770 IF P4=V2 THEN GOTO 780
775 P4=P4+SGN(V2-P4)
780 IF P3=H2 THEN GOTO 790
785 P3=P3+SGN(H2-P3)
790 IF G9=32*P4+P3 THEN GOTO 812
800 IF ABS(Y2-P4)+Z<=1 THEN GOTO 810
805 GOTO 820
810 IF ABS(X2-P3)<=1 THEN GOTO 270
812 IF Z1=1 THEN GOTO 820
815 IF Z=2 THEN PRINT "ELT SIGNAL LOST!"
817 IF Z=2 THEN Z=1
820 IF X2=P3 AND Y2=P4 THEN GOTO 870
835 NEXT I
840 IF RND>.07 THEN GOTO 900
850 PRINT "532GF LANDING IN ";32*P4+P3;
855 GOSUB 880
860 GOTO 630
870 U=2
875 GOTO 300
880 ON 2*RND+1 GOTO 895,896,897
895 PRINT ",PILOT WAS LOST";
896 PRINT " DUE TO STORM";
897 PRINT ",OBSERVER IS AIRSICK"
898 PRINT
899 RETURN
900 IF R1<>1 THEN GOTO 965
905 IF P5=H3 THEN GOTO 915
910 P5=P5+SGN(H3-P5)
915 IF P6=V3 THEN GOTO 925
920 P6=P6+SGN(V3-P6)
925 IF Y2=P6 AND X2=P5 THEN GOTO 985
940 FOR I=1 TO 12
945 IF X(I)=P5 AND Y(I)=P6 THEN GOTO 200
960 NEXT I
965 IF M=1 THEN GOTO 455
970 IF M=2 THEN GOTO 440
980 GOTO 400
985 U=3:GOTO 300 REM PROBLEM HERE?