Random game
Random game
Fishing Fishing Fishing Fishing Fishing Fishing Fishing Fishing Fishing
Listing 1
4 CJ=375
7 OPEN #1,​4,​0,​"K:​":​BLUE=3:​GREEN=0:​BROWN=2:​YELLOW=1:​POKE 82,​0:​DIM L(24),​FN(CJ),​FT(CJ),​B(48),​V(3),​F$(13)
10 SW=8:​BW=9:​V(0)=78:​V(1)=83:​V(2)=69:​V(3)=87:​? "":​GOSUB 50:​POKE 752,​1:​GOSUB 410:​T=4:​GS=0:​GF=0:​GH=0:​GK=0
20 POSITION 4,​4:​? "DO YOU WANT THE RULES (Y/N)?":​GET #1,​X:​IF X=89 THEN GOSUB 60
30 ? "":​POSITION 2,​10:​? "PLEASE WAIT A FEW MOMENTS....":​PS=2:​PF=1:​PH=1:​PK=10:​CRUISE=0:​TURNS=0
40 P1=0:​P2=0:​P3=0:​P4=0:​NTURNS=10+INT(120*RND(0)):​TIME=NTURNS+1:​FOR I=1 TO CJ:​FT(I)=-1:​FN(I)=-1:​NEXT I:​GOTO 690
50 RETURN
60 ? "":​? "FISHING"
70 ? "CATCH AS MANY FISH AS YOU CAN."
100 ? "RETURN BEFORE RUNNING OUT OF GAS."
140 ? "BIGGER FISH ARE FAR FROM THE DOCK!":​?:​?:​? "<HIT ANY KEY TO CONTINUE>";:​GET #1,​X
150 ? "":​? "YOU'LL SINK IF YOU HIT A LOG,​ AN ISLAND,​"
170 ? "THE DOCK,​ OR LEAVE THE MAP.!":​?
190 ? "TYPE:​":​? " N - MOVE ONE SQUARE NORTH":​? " S - MOVE ONE SQUARE SOUTH"
200 ? " E - MOVE ONE SQUARE EAST":​? " W - MOVE ONE SQUARE WEST":​? " C - CRUISE CONTNUOUSLY"
210 ? " DIRECTION (UNTIL YOU HIT ANY":​? " KEY TO STOP)":​? " F - FISH IN THAT SQUARE"
220 ?:​?:​? "<HIT ANY KEY TO CONTINUE>";:​GET #1,​X:​? ""
230 ? "WHEN FISHING,​ USE ANY 1 OF 3 BAITS:​":​? " S - SPOONS":​? " H - HERRING":​? " F - FLY":​?
235 ? "<HIT ANY KEY TO CONTINUE>";:​GET #1,​X:​? ""
240 RETURN
250 COLOR BLUE:​PLOT 39,​20:​DRAWTO 39,​0:​DRAWTO 0,​0:​POKE 765,​BLUE:​POSITION 0,​20:​XIO 18,​#6,​0,​0,​"S:​":​XS=4:​YS=3:​GOSUB 280
260 XB=23:​YB=5:​GOSUB 310:​COLOR BROWN:​PLOT 0,​18:​DRAWTO 4,​18:​PLOT 0,​19:​DRAWTO 4,​19
270 COLOR YELLOW:​PLOT 3,​16:​PLOT 3,​17:​BX=3:​BY=16:​XJ=BX:​YJ=BY:​? "":​RETURN
280 COLOR GREEN:​RESTORE 290:​FOR J=1 TO 18:​READ X,​Y,​Z:​PLOT XS+X,​YS+Z:​DRAWTO XS+Y,​YS+Z:​NEXT J:​RETURN
290 DATA 4,​5,​0,​10,​11,​0,​3,​6,​1,​9,​11,​1,​2,​10,​1,​2,​9,​1,​3,​8,​2,​3,​8,​2,​2,​8,​3,​1,​10,​3,​0,​10,​4,​0,​11,​4,​0,​11,​5,​0,​11,​5,​1,​10,​6
300 DATA 2,​9,​6,​3,​8,​7,​4,​7,​7
310 COLOR GREEN:​RESTORE 320:​FOR I=1 TO 16:​READ X,​Y,​Z:​PLOT XB+X,​YB+Z:​DRAWTO XB+Y,​YB+Z:​NEXT I:​RETURN
320 DATA 6,​9,​0,​4,​10,​0,​3,​10,​1,​3,​10,​1,​3,​11,​2,​4,​11,​2,​4,​12,​3,​4,​12,​3,​1,​12,​4,​1,​12,​4,​0,​12,​5,​0,​11,​5,​0,​11,​6,​0,​10,​6
330 DATA 1,​6,​7,​2,​5,​7,​3,​4,​8
340 COLOR BROWN:​NL=INT(13*RND(0)):​IF NL=0 THEN RETURN
350 Y=YB+BW:​J=INT(NL*RND(0))
360 FOR I=1 TO 2*J STEP 2:​LX=20+INT(20*RND(0)):​LY=Y+INT((19-Y)*RND(0)):​IF LY-2*INT(LY/2)=1 THEN LY=LY-1
370 L(I)=LX:​L(I+1)=LY:​PLOT LX,​LY:​NEXT I
380 Y=YS+SW:​FOR I=2*J+1 TO 2*NL STEP 2:​LX=INT(20*RND(0)):​LY=Y+INT((16-Y)*RND(0))
390 L(I)=LX:​L(I+1)=LY:​PLOT LX,​LY:​NEXT I:​RETURN
400 FN(N)=INT((4+1)*RND(0)):​FT(N)=INT(2*RND(0))+1:​RETURN
410 RESTORE 420:​FOR I=1 TO 48:​READ J:​B(I)=J:​NEXT I:​RETURN
420 DATA 70,​50,​30,​50,​70,​30,​10,​20,​0,​0,​0,​0,​80,​60,​40,​60,​80,​40,​20,​30,​10,​0,​0,​0,​50,​50,​50,​40,​40,​40,​30,​30,​30,​10,​10,​10
430 DATA 50,​50,​10,​40,​40,​10,​20,​20,​10,​10,​10,​10
440 SETCOLOR 0,​0,​0:​? "":​?:​? "...YOUR BOAT SUNK!!!"
450 ? "WOULD YOU LIKE TO TRY AGAIN (Y/N)?":​GET #1,​X:​IF X=89 THEN 30
460 GRAPHICS 0:​POSITION 2,​10:​? "THANKS FOR PLAYING!":​END
470 POKE 764,​255:​GOSUB 780:​IF GH>0 AND GS>0 AND GF>0 THEN ? "NO BAIT LEFT. YOU CAN'T FISH!":​GOTO 680
480 ? "WHAT BAIT WILL YOU USE (S,​H,​F)?":​GET #1,​X:​IF X<>72 THEN 510
490 IF GX<>0 THEN ? "":​? "NO HERRING LEFT!":​GOTO 480
500 BAIT=0:​GOTO 570
510 IF X<>83 THEN 540
520 IF GS<>0 THEN ? "":​? "NO SPOONS LEFT!":​GOTO 480
530 BAIT=1:​GOTO 570
540 IF X<>70 THEN 480
550 IF GF<>0 THEN ? "":​? "NO FLIES LEFT!":​GOTO 480
560 BAIT=2
570 IF GK>0 THEN 660
580 N=20*BY+BX/2+1:​IF FT(N)=-1 THEN GOSUB 400
590 TF=FT(N):​IF FN(N)<=0 THEN TF=3+INT(2*RND(0))
600 I=(TF-1)*12+3*W+BAIT+1:​IF B(I)<100*RND(0) THEN NF=0:​NP=0:​GOTO 660
610 NF=1:​IF TF=1 THEN F$="KING SALMON":​NP=20+BX+(19-BY)/2:​P1=P1+NP
620 IF TF=2 THEN F$="SILVER SALMON":​NP=5+BX/4+(19-BY)/4:​P2=P2+NP
630 IF TF=3 THEN F$="DOGFISH":​NP=1+INT(5*RND(0)):​P3=P3+NP
640 IF TF=4 THEN F$="FLOUNDER":​NP=1+INT(5*RND(0)):​P4=P4+NP
650 FN(N)=FN(N)-NF
660 ? "":​IF NF=0 THEN ? "SORRY,​ NO BITES.":​GOTO 680
670 ? "YOU'RE IN LUCK -- YOU CAUGHT A FISH!":​? "IT'S A ";NP;" POUND ";F$
680 FOR J=1 TO 200:​NEXT J:​RETURN
690 GRAPHICS 3:​SETCOLOR 4,​1,​12:​SETCOLOR 1,​3,​10:​SETCOLOR 0,​5,​10:​POKE 752,​1
700 GOSUB 250:​GOSUB 340:​W=INT(4*RND(0))
710 TURNS=TURNS+1:​TIME=TIME-1:​IF GK>0 THEN GK=GK-1:​IF (TURNS-1-T*INT((TURNS-1)/T))<>0 THEN 830
720 R=INT(100*RND(0)):​IF W=0 THEN IF R>=60 THEN W=1:​GOTO 830
730 IF W<>1 THEN 760
740 IF R<50 THEN W=0:​IF R<20 THEN W=2:​IF R<10 THEN W=3
750 GOTO 830
760 IF W=2 OR W=3 THEN IF R>=60 THEN W=1
770 GOTO 830
780 ? "":​? "GAS LEFT IS ";TIME;". WEATHER IS ";:​IF W=1 THEN ? "CLOUDY."
790 IF W=2 THEN ? "FOGGY."
800 IF W=3 THEN ? "STORMY."
810 IF W=0 THEN ? "SUNNY."
820 RETURN
830 S=BLUE:​IF NL=0 THEN 910
840 FOR I=1 TO 2*NL STEP 2:​XK=L(I):​YK=L(I+1):​XI=XK+1-INT(3*RND(0)):​YI=YK+1-INT(3*RND(0)):​IF XI<0 THEN XI=0
850 IF XI>39 THEN XI=39
860 IF YI<0 THEN YI=0
870 IF YI>19 THEN YI=18
880 LOCATE XI,​YI,​S:​IF S<>BLUE THEN NEXT I:​GOTO 900
890 COLOR BLUE:​PLOT INT(XK),​INT(YK):​COLOR BROWN:​PLOT XI,​YI:​L(I)=XI:​L(I+1)=YI:​NEXT I
900 FOR I=1 TO 2*NL STEP 2:​IF S=YELLOW THEN 440
910 IF X<>70 THEN GOTO 1000
920 IF GS>0 OR 100*RND(0)>PS THEN 940
930 GS=1:​? "YOU KICKED OVER YOUR TACKLE BOX!":​? "YOU LOST ALL YOUR SPOONS!":​GOTO 980
940 IF GF>0 OR 100*RND(0)>PF THEN 960
950 GF=1:​? "YOU HAD A BIG STRIKE! BUT YOU LINE":​? "BROKE AND YOU LOST YOUR LAST FLY!":​GOTO 980
960 IF GH>0 OR 100*RND(0)>PH THEN 980
970 GH=1:​? "A SEAGULL JUST ATE ALL YOUR HERRING!"
980 FOR I=1 TO 500:​NEXT I:​? "":​IF GK>0 OR 100*RND(0)>PK THEN 1000
990 GK=INT(5*RND(0)):​? "SHARKS IN THE WATER!":​FOR I=1 TO 500:​NEXT I
1000 GOSUB 780:​? "WHAT IS YOUR MOVE (C,​N,​S,​E,​W,​F)?":​GET #1,​X
1010 IF X<>67 THEN 1030
1020 CRUISE=1:​? "":​? "WHICH DIRECTION (N,​S,​E,​W)?":​GET #1,​X
1030 IF X<>78 AND X<>83 AND X<>69 AND X<>87 AND X<>70 THEN 1000
1040 DX=0:​DY=0:​IF X=67 THEN 1020
1050 IF X=70 THEN GOSUB 470:​GOTO 1190
1060 IF W=3 THEN X=V(INT(4*RND(0)))
1070 IF X=78 THEN DY=-2
1080 IF X=83 THEN DY=2
1090 IF X=69 THEN DX=1
1100 IF X=87 THEN DX=-1
1110 XJ=BX+DX:​YJ=BY+DY:​IF XJ<0 THEN XJ=0
1120 IF XJ>39 THEN XJ=39
1130 IF YJ<0 THEN YJ=0
1140 IF YJ>18 THEN YJ=18
1150 LOCATE XJ,​YJ,​S:​LOCATE XJ,​YJ+1,​B:​IF S<>BLUE OR B<>BLUE THEN 440
1160 COLOR BLUE:​PLOT BX,​BY:​PLOT BX,​BY+1:​COLOR YELLOW:​PLOT XJ,​YJ:​PLOT XJ,​YJ+1:​BX=XJ:​BY=YJ:​IF CRUISE=0 THEN 1190
1170 XX=PEEK(764):​TURNS=TURNS+1:​TIME=TIME-1:​IF TURNS>=NTURNS THEN 1210
1180 IF XX=255 THEN FOR I=1 TO 50:​NEXT I:​GOTO 1070
1190 POKE 764,​255:​CRUISE=0:​IF TURNS<5 OR TURNS>NTURNS OR BY<>16 OR BX>4 THEN 1210
1200 ? "":​? "BACK AT THE DOCK -- YOUR TRIP IS OVER.":​FOR J=1 TO 400:​NEXT J:​GOTO 1240
1210 IF TURNS<NTURNS THEN 710
1220 ? "":​? "YOU RAN OUT OF TIME!":​? "YOU ARE OUT OF GAS,​ AND WILL SINK."
1230 FOR J=1 TO 500:​NEXT J:​GOTO 440
1240 GRAPHICS 0:​?:​?:​?:​? "YOU CAUGHT THE FOLLOWING POUNDS OF FISH:​":​FOR J=1 TO 500:​NEXT J
1250 ? "KINGS = ";P1;" SILVERS = ";P2
1260 ? "DOGFISH = ";P3;" FLOUNDERS = ";P4:​?:​? "YOUR TOTAL CATCH WAS:​":​?:​? P1+P2+P4;" POUNDS OF FOOD FISH"
1270 ? P3;" POUNDS OF JUNK FISH":​?:​?:​GOTO 450	

This is non-commercial site, its content is based on Atari 8-bit home computer contents and references.
If you feel your rights are violated by showing/using any part of contents of your product represented on this page, please contact me immediatelly so I can remove it!