5 RANDOMIZE 6 DIM V(20) 45 PRINT 50 PRINT "KNOW HOW TO PLAY THIS GAME "; 55 INPUT K$ 60 IF K$[1,1]="Y" THEN 70 65 GOSUB 210 70 PRINT 75 W(1)=W(2)=W(3)=W(4)=Z(1)=Z(2)=Z(3)=Z(4)=0 80 F=X=Q=1 85 PRINT 90 PRINT "HOW MANY WUMPI ARE HIDING (1,2,3,OR 4)"; 95 INPUT N 100 IF N<1 THEN 90 105 IF N>4 THEN 90 110 IF N#INT(N) THEN 90 115 GOSUB 265 120 GOSUB 325 125 PRINT 130 PRINT "YOU ARE NOW IN CAVE";X 135 GOSUB 365 140 IF W(1)+W(2)+W(3)+W(4)=0 THEN 860 145 GOSUB 585 150 PRINT "TUNNELS LEAD TO CAVES ";A(1);A(2);A(3);A(4) 155 IF F-11=1 THEN 800 160 IF F-5=1 THEN 170 165 GO TO 175 170 GOSUB 470 175 PRINT "WHERE TO NEXT"; 180 INPUT X 185 FOR I9=1 TO 4 190 IF X = A(I9) THEN 200 195 NEXT I9 196 PRINT "BAD MOVE" 197 GOTO 175 200 F=F+1 205 GOTO 120 210 REM *** RULES *** 215 PRINT "SOMEWHERE IN A NETWORK OF 20 CAVERNS (NUMBERED: 1 THRU 20)" 220 PRINT "ARE 1,2,3, OR 4 FRIENDLY WUMPI HIDING. THEIR NAMES ARE" 225 PRINT "ARNI, BARNI, CARRI, AND DOTTI. YOU TRY TO FIND THEM." 230 PRINT "AFTER SIX MOVES, THOSE NOT FOUND MAY (OR MAY NOT) HIDE IN" 235 PRINT "AN ADJACENT CAVERN. YOU HAVE SIX MORE MOVES TO FIND ALL" 240 PRINT "WUMPI OR YOU LOSE. TO ASSIST YOU IN THE SEARCH YOU ARE" 245 PRINT "EQUIPTED WITH AN AUTOMATIC WUMPUS SENSOR AND IDENTIFIER." 250 PRINT "IT TELLS YOU HOW CLOSE YOU ARE TO A HIDING WUMPUS:" 255 PRINT "CLOSEBY=1 CAVE AWAY, NEAR=2 CAVES AWAY, FAR=3 CAVES AWAY." 260 RETURN 265 REM *** WUMPI GO HIDE *** 270 FOR I=1 TO 20 275 V(I)=I 280 NEXT I 285 FOR I=20 TO 21-N STEP -1 290 P=INT(I*RND(0))+1 295 IF P=Q THEN 290 300 W(21-I)=V(P) 305 V(P)=V(I) 310 Z(21-I)=W(21-I) 315 NEXT I 320 RETURN 325 REM *** CAVES CLOSEBY *** 330 IF X=1 THEN 350 335 FOR H=1 TO (X-1)*4 340 READ O 345 NEXT H 350 READ A(1),A(2),A(3),A(4) 355 RESTORE 360 RETURN 365 REM *** WUMPUS FOUND *** 370 FOR I=1 TO 4 375 IF X=W(I) THEN 395 380 NEXT I 385 RETURN 395 PRINT 400 PRINT "!!! YOU FOUND "; 405 ON I GOTO 410,425,440,455 410 PRINT "ARNI !!!" 415 PRINT 420 RETURN 425 PRINT "BARNI !!!" 430 PRINT 435 RETURN 440 PRINT "CARRI !!!" 445 PRINT 450 RETURN 455 PRINT "DOTTI !!!" 460 PRINT 465 RETURN 470 REM *** WUMPI HIDE AGAIN *** 475 PRINT 480 PRINT "THE WUMPI MAY BE HIDING IN ANOTHER CAVE NOW." 485 PRINT 490 FOR I=1 TO 4 495 IF W(I)=0 THEN 575 500 FOR H=1 TO (W(I)-1)*4 505 READ O 510 NEXT H 515 FOR J=1 TO 4 520 READ Y(J,I) 525 NEXT J 530 RESTORE 535 Y(5,I)=W(I) 540 P=INT(5*RND(0))+1 545 W(I)=Y(P,I) 550 ON I GOTO 570,565,560,555 555 IF W(I)=W(I-3) THEN 540 560 IF W(I)=W(I-2) THEN 540 565 IF W(I)=W(I-1) THEN 540 570 IF W(I)=X THEN 540 575 NEXT I 580 RETURN 585 REM *** SENSOR *** 590 FOR I=1 TO 4 595 IF W(I)=0 THEN 750 600 ON I GOTO 610,620,630,640 605 GO TO 645 610 GOSUB 760 615 GO TO 645 620 GOSUB 770 625 GO TO 645 630 GOSUB 780 635 GO TO 645 640 GOSUB 790 645 FOR J=1 TO 4 650 IF W(I)=A(J) THEN 745 655 NEXT J 660 FOR L=1 TO 4 665 FOR H=1 TO (A(L)-1)*4 670 READ O 675 NEXT H 680 FOR M=1 TO 4 685 READ B(M) 690 IF W(I)=B(M) THEN 725 695 NEXT M 700 RESTORE 705 NEXT L 710 PRINT "FAR" 715 GOTO 750 720 RETURN 725 RESTORE 730 PRINT "NEAR" 735 GOTO 750 740 RETURN 745 PRINT "CLOSEBY" 750 NEXT I 755 RETURN 760 PRINT "ARNI IS "; 765 RETURN 770 PRINT "BARNI IS "; 775 RETURN 780 PRINT "CARRI IS "; 785 RETURN 790 PRINT "DOTTI IS "; 795 RETURN 800 REM *** YOU LOSE *** 805 PRINT "THIS WAS YOUR 12TH CAVE SEARCHED, SO YOU LOSE." 810 PRINT 815 IF W(1)=0 THEN 825 820 PRINT "ARNI IS HIDING IN CAVE";W(1);"PREVIOUSLY IN";Z(1) 825 IF W(2)=0 THEN 835 830 PRINT "BARNI IS HIDING IN CAVE";W(2);"PREVIOUSLY IN";Z(2) 835 IF W(3)=0 THEN 845 840 PRINT "CARRI IS HIDING IN CAVE";W(3);"PREVIOUSLY IN";Z(3) 845 IF W(4)=0 THEN 855 850 PRINT "DOTTI IS HIDING IN CAVE";W(4);"PREVIOUSLY IN";Z(4) 855 GOTO 870 860 PRINT 865 PRINT " YOU WIN!" 870 PRINT 875 PRINT "DO YOU WANT TO PLAY AGAIN "; 880 INPUT K$ 885 IF K$[1,1]="Y" THEN 70 890 STOP 895 DATA 2,5,8,11,1,3,10,13,2,4,12,15,3,5,7,14 900 DATA 1,4,6,9,5,7,15,20,4,6,8,17,1,7,9,16 905 DATA 3,8,10,18,2,9,11,17,1,10,12,19,3,11,13,18 910 DATA 2,12,14,20,4,13,15,19,3,6,14,16,8,15,17,20 915 DATA 7,10,16,18,9,12,17,19,11,14,18,20,6,13,16,19 920 END