From 771b990901edc5fa224342c855f46cb46c0f2380 Mon Sep 17 00:00:00 2001 From: dewdude Date: Mon, 29 Oct 2018 21:16:28 -0400 Subject: [PATCH] BETA 8 --- drugwar2e.bas | 1202 ++++++++++++++++++++++++------------------------- drugwar2e.baz | 644 ++++++++++++-------------- 2 files changed, 883 insertions(+), 963 deletions(-) diff --git a/drugwar2e.bas b/drugwar2e.bas index ae91812..c1f7cce 100644 --- a/drugwar2e.bas +++ b/drugwar2e.bas @@ -1,617 +1,593 @@ -10 REM DRUGWAR.BAS - 08/10/2018 - 23h57 -20 GOTO 5040:REM GO->INSTRUCTIONS -30 REM->TITLEBAR -40 PRINT " DRUGWAR//E " -50 RETURN -60 REM->WAIT -70 PRINT CHR$(10) -80 INPUT "PRESS ENTER TO CONTINUE.";X$ -90 RETURN -100 REM->HOWMUCHBUY -110 PRINT "YOU CAN AFFORD ";J -120 PRINT "YOU CAN CARRY ";FS -130 PRINT CHR$(10) -140 INPUT "HOW MANY? (ENTER 0 CANCEL): ";K -150 GOSUB 260:REM GO->NOBUYSELL -160 RETURN -170 REM->HOWMUCHSELL -180 PRINT "YOU CAN SELL: ";J +10 REM DRUGWAR.BAS - 16/10/2018 - 00h06 +20 REM DRUGWAR//E - BETA 8 +30 REM COPYRIGHT 2018 JAY MOORE +40 REM RELEASED UNDER GPL V3 +50 REM DRUGWAR2E.SOURCEFORGE.IO +60 REM TWITTER: _NQ4T +70 GOTO 4840 +80 REM->TITLEBAR +90 PRINT ,"DRUGWAR//E", +100 RETURN +110 REM->WAIT +120 PRINT CHR$(10) +130 INPUT "PRESS ENTER TO CONTINUE.";X$ +140 RETURN +150 REM->HOWMUCHBUY +160 PRINT "YOU CAN AFFORD ";J +170 PRINT "YOU CAN CARRY ";F +180 REM->HOWMANYBUY 190 PRINT CHR$(10) -200 REM->HOWMANYSELL -210 INPUT "HOW MANY? (ENTER 0 TO CANCEL.): ";K -220 IF K>J THEN PRINT "YOU DON'T HAVE THAT MANY!" : GOTO 210:REM GO->HOWMANYSELL -230 GOSUB 260:REM GO->NOBUYSELL +200 INPUT "HOW MANY? (ENTER 0 CANCEL): ";K +210 IF K=0 GOTO 460 +220 IF K>F THEN INVERSE : PRINT "YOU CAN'T CARRY THAT MUCH!" : NORMAL : GOTO 190 +230 IF K>J THEN INVERSE : PRINT "YOU CAN'T AFFORD THAT MUCH!" : NORMAL : GOTO 190 240 RETURN -250 REM->NOBUYSELL -260 IF K=0 GOTO 1710:REM GO->MENU -270 RETURN -280 REM->STATUSBAR -290 INVERSE:PRINT "DAY: ";D,P$:NORMAL -300 PRINT CHR$(10) -310 RETURN -320 REM->FREESPACE -330 FS=INT(IN-(CI+HI+AI+WI+SI+LI)+(GN*5)) -340 RETURN -350 REM->DAILY -360 C=INT(RND(1)*12000+16000.5) -370 H=INT(RND(1)*7000+5000.5) -380 A=INT((RND(1)*34+10)*100+.5) -390 W=INT((RND(1)*42+33)*10+.5) -400 S=INT((RND(1)*15+7)*10+.5) -410 L=INT((RND(1)*4+1)*10+.5) -420 B=INT(RND(1)*20+.5) -430 D=D+1 -440 GOSUB 460:REM GO->INTEREST -450 REM->INTEREST -460 IF D = 1 THEN RETURN -470 LS=INT(LS*1.1+.5) -480 SA=INT(SA*1.06+.5) -490 RETURN -500 REM->CHECKDAY -510 IF D >= 31 GOTO 5700:REM GO->ENDGAME -520 RETURN -530 REM->SUBWAYEVENTS -540 IF B=1 THEN GOTO 730:REM GO->CHEAPLUDES -550 IF B=2 THEN GOTO 780:REM GO->CHEEPWEED -560 IF B=3 THEN GOTO 830:REM GO->PIGHEROIN -570 IF B=4 THEN GOTO 890:REM GO->HEROINBUST -580 IF B=5 THEN GOTO 890:REM GO->HEROINBUST -590 IF B=6 THEN GOTO 950:REM GO->COKEBUST -600 IF B=7 THEN GOTO 950:REM GO->COKEBUST -610 IF B=8 THEN GOTO 1010:REM GO->MUGGED -620 IF B=9 THEN GOTO 1110:REM GO->COPS -630 IF B=10 THEN GOTO 1110:REM GO->COPS -640 IF B=11 THEN GOTO 1110:REM GO->COPS -650 IF B=12 THEN GOTO 1200:REM GO->GUNBUY -660 IF B=13 THEN GOTO 1200:REM GO->GUNBUY -670 IF B=14 THEN GOTO 1340:REM GO->DEDWEED -680 IF B=15 THEN GOTO 1410:REM GO->NEWCOAT -690 IF B=16 THEN GOTO 1490:REM GO->DEDGUY -700 IF B=17 THEN GOTO 1650:REM GO->HOMEACID -710 RETURN -720 REM->CHEAPLUDES -730 PRINT "RIVAL DEALERS ARE SELLING CHEAP LUDES!" -740 L=2 -750 GOSUB 70:REM GO->WAIT -760 GOTO 1710:REM GO->MENU -770 REM->CHEEPWEED -780 PRINT "WEED PRICES HAVE BOTTOMED-OUT!" -790 W=122 -800 GOSUB 70:REM GO->WAIT -810 GOTO 1710:REM GO->MENU -820 REM->PIGHEROIN -830 PRINT "PIGS ARE SELLING CHEAP HEROIN" -840 PRINT "FROM LAST WEEK'S RAID!" -850 H=INT((RND(1)*1150)+850.5) -860 GOSUB 70:REM GO->WAIT -870 GOTO 1710:REM GO->MENU -880 REM->HEROINBUST -890 PRINT "ADDICTS ARE BUYING HEROIN" -900 PRINT "AT OUTRAGEOUS PRICES!" -910 H=INT((RND(1)*25000)+18000.5) -920 GOSUB 70:REM GO->WAIT -930 GOTO 1710:REM GO->MENU -940 REM->COKEBUST -950 PRINT "PIGS MADE A BIG COKE BUST!" -960 PRINT "PRICES ARE OUTRAGEOUS!!!!" -970 C=INT((RND(1)*60000)+80000.5) -980 GOSUB 70:REM GO->WAIT -990 GOTO 1710:REM GO->MENU -1000 REM->MUGGED -1010 PRINT "YOU GOT MUGGED!" -1020 PRINT CHR$(10) -1030 MS=INT(WA/3) -1040 MS=INT(MS*2) -1050 ML=INT(WA-MS) -1060 PRINT "YOU LOST $";ML -1070 WA=MS -1080 GOSUB 70:REM GO->WAIT -1090 GOSUB 1710:REM GO->MENU -1100 REM->COPS -1110 WE=CI+HI+WI+AI+SI+LI -1120 IF WE<50 THEN RETURN -1130 PRINT "IT'S THE COPS!" -1140 PRINT CHR$(10) -1150 PRINT "JUST KIDDING!" -1160 PRINT "COPS HAVEN'T BEEN CODED YET." -1170 GOSUB 70:REM GO->WAIT -1180 GOTO 1710:REM GO->MENU -1190 REM->GUNBUY -1200 IF WA < 500 THEN RETURN -1210 GOSUB 330:REM GO->FREESPACE -1220 IF FS < 5 THEN RETURN -1230 GX=INT(RND(1)*2) -1240 IF GX = 0 THEN AX$ = "BARETTA" -1250 IF GX = 1 THEN AX$ = "SATURDAY NIGHT SPECIAL" -1260 IF GX = 2 THEN AX$ = ".44 MAGNUM" -1270 PRINT "WILL YOU BUY A ";AX$ -1280 INPUT "FOR $400? (Y/N)";RE$ -1290 IF RE$ <> "Y" THEN GOTO 1710:REM GO->MENU -1300 GN = INT(GN+1) -1310 WA = INT(WA-400) -1320 GOTO 1710:REM GO->MENU -1330 REM->DEDWEED -1340 PRINT "THERE'S SOME WEED HERE THAT SMELLS" -1350 PRINT "LIKE GOOD STUFF!!" -1360 PRINT CHR$(10) -1370 INPUT "WILL YOU SMOKE IT? (Y/N)";X$ -1380 IF X$ = "Y" THEN GOTO 5510:REM GO->WEEDEND -1390 RETURN -1400 REM->NEWCOAT -1410 IF WA<300 THEN RETURN -1420 PRINT "WILL YOU BUY A NEW TRENCHCOAT" -1430 INPUT "WITH MORE POCKETS FOR $200? (Y/N)";X$ -1440 IF X$ <> "Y" THEN GOTO 1710:REM GO->MENU -1450 IN=INT(IN+10) -1460 WA=INT(WA-200) -1470 GOTO 1710:REM GO->MENU -1480 REM->DEDGUY -1490 IF FS<8 THEN RETURN -1500 DG=INT((RND(1)*7)+1.5) -1510 XG=INT(RND(1)*5+.5) -1520 IF XG=0 THEN LI=LI+DG : SS$ = "LUDES" -1530 IF XG=1 THEN SI=SI+DG : SS$ = "SPEED" -1540 IF XG=2 THEN WI=WI+DG : SS$ = "WEED" -1550 IF XG=3 THEN AI=AI+DG : SS$ = "ACID" -1560 IF XG=4 THEN HI=HI+DG : SS$ = "HEROIN" -1570 IF XG=5 THEN CI=CI+DG : SS$ = "COCAINE" -1580 PRINT "YOU FOUND ";DG;" UNITS OF" -1590 PRINT " ";SS$ -1600 PRINT "ON A DEAD DUDE IN THE SUBWAY!" -1610 PRINT CHR$(10) -1620 GOSUB 70:REM GO->WAIT -1630 GOTO 1710:REM GO->MENU -1640 REM->HOMEACID -1650 PRINT "THE MARKET HAS BEEN FLOODED" -1660 PRINT "WITH CHEAP HOME-MADE ACID!" -1670 A=INT((RND(1)*550)+250.5) -1680 GOSUB 70:REM GO->WAIT -1690 GOTO 1710:REM GO->MENU -1700 REM->MENU +250 REM->HOWMUCHSELL +260 PRINT "YOU CAN SELL: ";J +270 PRINT CHR$(10) +280 REM->HOWMANYSELL +290 INPUT "HOW MANY? (ENTER 0 TO CANCEL.): ";K +300 IF K>J THEN PRINT "YOU DON'T HAVE THAT MANY!" : GOTO 290 +310 IF K=0 GOTO 460 +320 RETURN +330 REM->DAILY +340 C=INT(RND(1)*12000+16000.5) +350 H=INT(RND(1)*7000+5000.5) +360 A=INT((RND(1)*34+10)*100+.5) +370 Z=INT((RND(1)*42+33)*10+.5) +380 S=INT((RND(1)*15+7)*10+.5) +390 L=INT((RND(1)*4+1)*10+.5) +400 B=INT(RND(1)*20+.5) +410 D=D+1 +420 REM->CHECKDAY +430 IF D >= 31 GOTO 5470 +440 RETURN +450 REM->MENU +460 HOME +470 F=I-(M+N+O+U+T+Q) +480 GOSUB 90 +490 INVERSE : PRINT "DAY:";D,P$, : NORMAL +500 PRINT CHR$(10) +510 PRINT "(C)HECK PRICES" +520 PRINT "(I)NVENTORY" +530 PRINT "(B)UY" +540 PRINT "(S)ELL" +550 PRINT "(J)ET" +560 PRINT "SEE (L)OAN SHARK" +570 PRINT "(V)ISIT BANK" +580 INPUT "PLEASE MAKE YOUR SELECTION: ";X$ +590 IF X$ = "C" GOTO 680 +600 IF X$ = "I" GOTO 820 +610 IF X$ = "B" GOTO 960 +620 IF X$ = "S" GOTO 1710 +630 IF X$ = "J" GOTO 2550 +640 IF X$ = "L" GOTO 4230 +650 IF X$ = "V" GOTO 4540 +660 GOTO 460 +670 REM->PRICES +680 HOME +690 GOSUB 90 +700 INVERSE:PRINT" PRICES ":NORMAL +710 PRINT CHR$(10) +720 PRINT"COCAINE:","$"C +730 PRINT"HEROIN:","$"H +740 PRINT"ACID:","$"A +750 PRINT"WEED:","$"Z +760 PRINT"SPEED:","$"S +770 PRINT"LUDES:","$"L +780 PRINT"WALLET:","$"W +790 GOSUB 120 +800 GOTO 460 +810 REM->INVENTORY +820 HOME +830 GOSUB 90 +840 INVERSE:PRINT" INVENTORY ":NORMAL +850 PRINT CHR$(10) +860 PRINT"COCAINE:",M +870 PRINT"HEROIN:",N +880 PRINT"ACID:",O +890 PRINT"WEED:",U +900 PRINT"SPEED:",T +910 PRINT"LUDES:",Q +920 PRINT"FREE SPACE:",F +930 GOSUB 120 +940 GOTO 460 +950 REM->BUY +960 HOME +970 GOSUB 90 +980 INVERSE:PRINT" BUY ":NORMAL +990 PRINT CHR$(10) +1000 PRINT"WHAT DO YOU WANT TO BUY?" +1010 PRINT CHR$(10) +1020 PRINT "(C)OCAINE" +1030 PRINT "(H)EROIN" +1040 PRINT "(A)CID" +1050 PRINT "(W)EED" +1060 PRINT "(S)PEED" +1070 PRINT "(L)UDES" +1080 INPUT "ENTER SELECTION: ";X$ +1090 IF X$="C" GOTO 1170 +1100 IF X$="H" GOTO 1260 +1110 IF X$="A" GOTO 1350 +1120 IF X$="W" GOTO 1440 +1130 IF X$="S" GOTO 1530 +1140 IF X$="L" GOTO 1620 +1150 GOTO 460 +1160 REM->COKEBUY +1170 HOME +1180 GOSUB 90 +1190 INVERSE:PRINT" BUY COCAINE ":NORMAL +1200 PRINT CHR$(10) +1210 J=INT(W/C) +1220 GOSUB 160 +1230 M=M+K : W=W-(C*K) +1240 GOTO 460 +1250 REM->HERBUY +1260 HOME +1270 GOSUB 90 +1280 INVERSE:PRINT" BUY HEROIN ":NORMAL +1290 PRINT CHR$(10) +1300 J=INT(W/H) +1310 GOSUB 160 +1320 N=N+K : W=W-(H*K) +1330 GOTO 460 +1340 REM->ACIDBUY +1350 HOME +1360 GOSUB 90 +1370 INVERSE:PRINT" BUY ACID ":NORMAL +1380 PRINT CHR$(10) +1390 J=INT(W/A) +1400 GOSUB 160 +1410 O=O+K : W=W-(A*K) +1420 GOTO 460 +1430 REM->WEEDBUY +1440 HOME +1450 GOSUB 90 +1460 INVERSE:PRINT" BUY WEED ":NORMAL +1470 PRINT CHR$(10) +1480 J=INT(W/Z) +1490 GOSUB 160 +1500 U=U+K : W=W-(Z*K) +1510 GOTO 460 +1520 REM->SPDBUY +1530 HOME +1540 GOSUB 90 +1550 INVERSE:PRINT" BUY SPEED ":NORMAL +1560 PRINT CHR$(10) +1570 J=INT(W/S) +1580 GOSUB 160 +1590 T=T+K : W=W-(S*K) +1600 GOTO 460 +1610 REM->LUDBUY +1620 HOME +1630 GOSUB 90 +1640 INVERSE:PRINT" BUY LUDES ":NORMAL +1650 PRINT CHR$(10) +1660 J=INT(W/L) +1670 GOSUB 160 +1680 Q=Q+K : W=W-(L*K) +1690 GOTO 460 +1700 REM->SELL 1710 HOME -1720 GOSUB 40:REM GO->TITLEBAR -1730 GOSUB 330:REM GO->FREESPACE -1740 INVERSE : PRINT " DAY:";D;" ";PH$ : NORMAL -1750 PRINT "(C)HECK PRICES" -1760 PRINT "(I)NVENTORY" -1770 PRINT "(B)UY" -1780 PRINT "(S)ELL" -1790 PRINT "(J)ET" -1800 PRINT "SEE (L)OAN SHARK" -1810 PRINT "(V)ISIT BANK" -1820 INPUT "PLEASE MAKE YOUR SELECTION: ";T$ -1830 IF T$ = "C" GOTO 1930:REM GO->PRICES -1840 IF T$ = "I" GOTO 2070:REM GO->INVENTORY -1850 IF T$ = "B" GOTO 2210:REM GO->BUY -1860 IF T$ = "S" GOTO 3080:REM GO->SELL -1870 IF T$ = "J" GOTO 3920:REM GO->JET -1880 IF T$ = "L" GOTO 4430:REM GO->LOAN -1890 IF T$ = "V" GOTO 4740:REM GO->BANK -1900 PRINT "INVALID SELECTION" -1910 GOTO 1710:REM GO->MENU -1920 REM->PRICES -1930 HOME -1940 GOSUB 40:REM GO->TITLEBAR -1950 INVERSE:PRINT" PRICES ":NORMAL -1960 PRINT CHR$(10) -1970 PRINT"COCAINE:","$"C -1980 PRINT"HEROIN:","$"H -1990 PRINT"ACID:","$"A -2000 PRINT"WEED:","$"W -2010 PRINT"SPEED:","$"S -2020 PRINT"LUDES:","$"L -2030 PRINT"WALLET:","$"WA -2040 GOSUB 70:REM GO->WAIT -2050 GOTO 1710:REM GO->MENU -2060 REM->INVENTORY -2070 HOME -2080 GOSUB 40:REM GO->TITLEBAR -2090 INVERSE:PRINT" INVENTORY ":NORMAL -2100 PRINT CHR$(10) -2110 PRINT"COCAINE:",CI -2120 PRINT"HEROIN:",HI -2130 PRINT"ACID:",AI -2140 PRINT"WEED:",WI -2150 PRINT"SPEED:",SI -2160 PRINT"LUDES:",LI -2170 PRINT"FREE SPACE:",FS -2180 GOSUB 70:REM GO->WAIT -2190 GOTO 1710:REM GO->MENU -2200 REM->BUY -2210 HOME -2220 GOSUB 40:REM GO->TITLEBAR -2230 INVERSE:PRINT" BUY ":NORMAL -2240 PRINT CHR$(10) -2250 PRINT"WHAT DO YOU WANT TO BUY?" -2260 PRINT CHR$(10) -2270 PRINT "(C)OCAINE" -2280 PRINT "(H)EROIN" -2290 PRINT "(A)CID" -2300 PRINT "(W)EED" -2310 PRINT "(S)PEED" -2320 PRINT "(L)UDES" -2330 INPUT "ENTER SELECTION: ";DB$ -2340 IF DB$="C" GOTO 2420:REM GO->COKEBUY -2350 IF DB$="H" GOTO 2530:REM GO->HERBUY -2360 IF DB$="A" GOTO 2640:REM GO->ACIDBUY -2370 IF DB$="W" GOTO 2750:REM GO->WEEDBUY -2380 IF DB$="S" GOTO 2860:REM GO->SPDBUY -2390 IF DB$="L" GOTO 2970:REM GO->LUDBUY -2400 GOTO 1710:REM GO->MENU -2410 REM->COKEBUY -2420 HOME -2430 GOSUB 40:REM GO->TITLEBAR -2440 INVERSE:PRINT" BUY COCAINE ":NORMAL -2450 PRINT CHR$(10) -2460 J=INT(WA/C) -2470 GOSUB 110:REM GO->HOWMUCHBUY -2480 IF K>FS THEN INVERSE : PRINT "YOU CAN'T CARRY THAT MUCH!" : NORMAL : GOTO 2420:REM GO->COKEBUY -2490 IF K<=J THEN CI=CI+K : WA=WA-(C*K) -2500 IF K>J THEN INVERSE : PRINT "YOU CAN'T AFFORD THAT MUCH!" : NORMAL : GOTO 2420:REM GO->COKEBUY -2510 GOTO 1710:REM GO->MENU -2520 REM->HERBUY -2530 HOME -2540 GOSUB 40:REM GO->TITLEBAR -2550 INVERSE:PRINT" BUY HEROIN ":NORMAL -2560 PRINT CHR$(10) -2570 J=INT(WA/H) -2580 GOSUB 110:REM GO->HOWMUCHBUY -2590 IF K>FS THEN INVERSE : PRINT "YOU CAN'T CARRY THAT MUCH!" : NORMAL : GOTO 2530:REM GO->HERBUY -2600 IF K<=J THEN HI=HI+K : WA=WA-(H*K) -2610 IF K>J THEN INVERSE : PRINT "YOU CAN'T AFFORD THAT MUCH!" : NORMAL : GOTO 2530:REM GO->HERBUY -2620 GOTO 1710:REM GO->MENU -2630 REM->ACIDBUY -2640 HOME -2650 GOSUB 40:REM GO->TITLEBAR -2660 INVERSE:PRINT" BUY ACID ":NORMAL -2670 PRINT CHR$(10) -2680 J=INT(WA/A) -2690 GOSUB 110:REM GO->HOWMUCHBUY -2700 IF K>FS THEN INVERSE : PRINT "YOU CAN'T CARRY THAT MUCH!" : NORMAL : GOTO 2640:REM GO->ACIDBUY -2710 IF K<=J THEN AI=AI+K : WA=WA-(A*K) -2720 IF K>J THEN INVERSE : PRINT "YOU CAN'T AFFORD THAT MUCH!" : NORMAL : GOTO 2640:REM GO->ACIDBUY -2730 GOTO 1710:REM GO->MENU -2740 REM->WEEDBUY -2750 HOME -2760 GOSUB 40:REM GO->TITLEBAR -2770 INVERSE:PRINT" BUY WEED ":NORMAL -2780 PRINT CHR$(10) -2790 J=INT(WA/W) -2800 GOSUB 110:REM GO->HOWMUCHBUY -2810 IF K>FS THEN INVERSE : PRINT "YOU CAN'T CARRY THAT MUCH!" : NORMAL : GOTO 2750:REM GO->WEEDBUY -2820 IF K<=J THEN WI=WI+K : WA=WA-(W*K) -2830 IF K>J THEN INVERSE : PRINT "YOU CAN'T AFFORD THAT MUCH!" : NORMAL : GOTO 2750:REM GO->WEEDBUY -2840 GOTO 1710:REM GO->MENU -2850 REM->SPDBUY -2860 HOME -2870 GOSUB 40:REM GO->TITLEBAR -2880 INVERSE:PRINT" BUY SPEED ":NORMAL -2890 PRINT CHR$(10) -2900 J=INT(WA/S) -2910 GOSUB 110:REM GO->HOWMUCHBUY -2920 IF K>FS THEN INVERSE : PRINT "YOU CAN'T CARRY THAT MUCH!" : NORMAL : GOTO 2860:REM GO->SPDBUY -2930 IF K<=J THEN SI=SI+K : WA=WA-(S*K) -2940 IF K>J THEN INVERSE : PRINT "YOU CAN'T AFFORD THAT MUCH!" : NORMAL : GOTO 2860:REM GO->SPDBUY -2950 GOTO 1710:REM GO->MENU -2960 REM->LUDBUY -2970 HOME -2980 GOSUB 40:REM GO->TITLEBAR -2990 INVERSE:PRINT" BUY LUDES ":NORMAL -3000 PRINT CHR$(10) -3010 J=INT(WA/L) -3020 GOSUB 110:REM GO->HOWMUCHBUY -3030 IF K>FS THEN INVERSE : PRINT "YOU CAN'T CARRY THAT MUCH!" : NORMAL : GOTO 2970:REM GO->LUDBUY -3040 IF K<=J THEN LI=LI+K : WA=WA-(L*K) -3050 IF K>J THEN INVERSE : PRINT "YOU CAN'T AFFORD THAT MUCH!" : NORMAL : GOTO 2970:REM GO->LUDBUY -3060 GOTO 1710:REM GO->MENU -3070 REM->SELL -3080 HOME -3090 GOSUB 40:REM GO->TITLEBAR -3100 INVERSE:PRINT" SELL ":NORMAL -3110 PRINT CHR$(10) -3120 PRINT "WHAT WOULD YOU LIKE TO SELL?" -3130 PRINT CHR$(10) -3140 PRINT "(C)OCAINE" -3150 PRINT "(H)EROIN" -3160 PRINT "(A)CID" -3170 PRINT "(W)EED" -3180 PRINT "(S)PEED" -3190 PRINT "(L)UDES" -3200 REM->SELLSEL -3210 INPUT "ENTER SELECTION: (0 TO CANCEL)";DB$ -3220 IF DB$="C" GOTO 3320:REM GO->COKESELL -3230 IF DB$="H" GOTO 3420:REM GO->HERSELL -3240 IF DB$="A" GOTO 3520:REM GO->ACIDSELL -3250 IF DB$="W" GOTO 3620:REM GO->WEEDSELL -3260 IF DB$="S" GOTO 3720:REM GO->SPDSELL -3270 IF DB$="L" GOTO 3820:REM GO->LUDSELL -3280 IF DB$="0" GOTO 1710:REM GO->MENU -3290 PRINT "INVALID SELECTION!" -3300 GOTO 3210:REM GO->SELLSEL -3310 REM->COKESELL -3320 HOME -3330 GOSUB 40:REM GO->TITLEBAR -3340 INVERSE:PRINT" SELL COCAINE ":NORMAL -3350 PRINT CHR$(10) -3360 J=CI -3370 GOSUB 180:REM GO->HOWMUCHSELL -3380 CI=CI-K -3390 WA=WA+(C*K) -3400 GOTO 1710:REM GO->MENU -3410 REM->HERSELL -3420 HOME -3430 GOSUB 40:REM GO->TITLEBAR -3440 INVERSE:PRINT" SELL HEROIN ":NORMAL -3450 PRINT CHR$(10) -3460 J=HI -3470 GOSUB 180:REM GO->HOWMUCHSELL -3480 HI=HI-K -3490 WA=WA+(H*K) -3500 GOTO 1710:REM GO->MENU -3510 REM->ACIDSELL -3520 HOME -3530 GOSUB 40:REM GO->TITLEBAR -3540 INVERSE:PRINT" SELL ACID ":NORMAL -3550 PRINT CHR$(10) -3560 J=AI -3570 GOSUB 180:REM GO->HOWMUCHSELL -3580 AI=AI-K -3590 WA=WA+(A*K) -3600 GOTO 1710:REM GO->MENU -3610 REM->WEEDSELL -3620 HOME -3630 GOSUB 40:REM GO->TITLEBAR -3640 INVERSE:PRINT" SELL WEED ":NORMAL -3650 PRINT CHR$(10) -3660 J=WI -3670 GOSUB 180:REM GO->HOWMUCHSELL -3680 WI=WI-K -3690 WA=WA+(W*K) -3700 GOTO 1710:REM GO->MENU -3710 REM->SPDSELL -3720 HOME -3730 GOSUB 40:REM GO->TITLEBAR -3740 INVERSE:PRINT" SELL SPEED ":NORMAL -3750 PRINT CHR$(10) -3760 J=SI -3770 GOSUB 180:REM GO->HOWMUCHSELL -3780 SI=SI-K -3790 WA=WA+(S*K) -3800 GOTO 1710:REM GO->MENU -3810 REM->LUDSELL -3820 HOME -3830 GOSUB 40:REM GO->TITLEBAR -3840 INVERSE:PRINT" SELL LUDES ":NORMAL -3850 PRINT CHR$(10) -3860 J=LI -3870 GOSUB 180:REM GO->HOWMUCHSELL -3880 LI=LI-K -3890 WA=WA+(L*K) -3900 GOTO 1710:REM GO->MENU -3910 REM->JET -3920 HOME -3930 GOSUB 40:REM GO->TITLEBAR -3940 INVERSE:PRINT" JET ":NORMAL -3950 PRINT CHR$(10) -3960 PRINT "(B)RONX" -3970 PRINT "(G)HETTO" -3980 PRINT "(C)ENTRAL PARK -3990 PRINT "(M)ANHATTEN" -4000 PRINT "CONEY (I)SLAND" -4010 PRINT "BROO(K)LYN" -4020 PRINT "(O)OPS...STAY!" -4030 INPUT "WHERE TO DUDE? ";JT$ -4040 IF JT$="B" THEN PQ$ = "THE BRONX" : GOTO 4130:REM GO->JETB -4050 IF JT$="G" THEN PQ$ = "THE GHETTO" : GOTO 4130:REM GO->JETB -4060 IF JT$="C" THEN PQ$ = "CENTRAL PARK" : GOTO 4130:REM GO->JETB -4070 IF JT$="M" THEN PQ$ = "MANHATTEN" : GOTO 4130:REM GO->JETB -4080 IF JT$="I" THEN PQ$ = "CONEY ISLAND" : GOTO 4130:REM GO->JETB -4090 IF JT$="K" THEN PQ$ = "BROOKLYN" : GOTO 4130:REM GO->JETB -4100 IF JT$="O" THEN GOTO 1710:REM GO->MENU -4110 GOTO 3920:REM GO->JET -4120 REM->JETB -4130 IF PQ$=PH$ THEN GOTO 4170:REM GO->ALREADYTHERE -4140 PH$ = PQ$ -4150 GOTO 4260:REM GO->SUBWAY -4160 REM->ALREADYTHERE -4170 HOME -4180 GOSUB 40:REM GO->TITLEBAR -4190 INVERSE:PRINT" JET ":NORMAL -4200 PRINT CHR$(10) -4210 PRINT "YOU'RE ALREADY IN:" -4220 PRINT " ";PH$ -4230 GOSUB 70:REM GO->WAIT -4240 GOTO 3920:REM GO->JET -4250 REM->SUBWAY -4260 HOME -4270 GOSUB 360:REM GO->DAILY -4280 GOSUB 40:REM GO->TITLEBAR -4290 INVERSE:PRINT" SUBWAY ":NORMAL +1720 GOSUB 90 +1730 INVERSE:PRINT" SELL ":NORMAL +1740 PRINT CHR$(10) +1750 PRINT "WHAT WOULD YOU LIKE TO SELL?" +1760 PRINT CHR$(10) +1770 PRINT "(C)OCAINE" +1780 PRINT "(H)EROIN" +1790 PRINT "(A)CID" +1800 PRINT "(W)EED" +1810 PRINT "(S)PEED" +1820 PRINT "(L)UDES" +1830 REM->SELLSEL +1840 INPUT "ENTER SELECTION: (0 TO CANCEL)";X$ +1850 IF X$="C" GOTO 1950 +1860 IF X$="H" GOTO 2050 +1870 IF X$="A" GOTO 2150 +1880 IF X$="W" GOTO 2250 +1890 IF X$="S" GOTO 2350 +1900 IF X$="L" GOTO 2450 +1910 IF X$="0" GOTO 460 +1920 PRINT "INVALID SELECTION!" +1930 GOTO 1840 +1940 REM->COKESELL +1950 HOME +1960 GOSUB 90 +1970 INVERSE:PRINT" SELL COCAINE ":NORMAL +1980 PRINT CHR$(10) +1990 J=M +2000 GOSUB 260 +2010 M=M-K +2020 W=W+(C*K) +2030 GOTO 460 +2040 REM->HERSELL +2050 HOME +2060 GOSUB 90 +2070 INVERSE:PRINT" SELL HEROIN ":NORMAL +2080 PRINT CHR$(10) +2090 J=N +2100 GOSUB 260 +2110 N=N-K +2120 W=W+(H*K) +2130 GOTO 460 +2140 REM->ACIDSELL +2150 HOME +2160 GOSUB 90 +2170 INVERSE:PRINT" SELL ACID ":NORMAL +2180 PRINT CHR$(10) +2190 J=O +2200 GOSUB 260 +2210 O=O-K +2220 W=W+(A*K) +2230 GOTO 460 +2240 REM->WEEDSELL +2250 HOME +2260 GOSUB 90 +2270 INVERSE:PRINT" SELL WEED ":NORMAL +2280 PRINT CHR$(10) +2290 J=U +2300 GOSUB 260 +2310 U=U-K +2320 W=W+(Z*K) +2330 GOTO 460 +2340 REM->SPDSELL +2350 HOME +2360 GOSUB 90 +2370 INVERSE:PRINT" SELL SPEED ":NORMAL +2380 PRINT CHR$(10) +2390 J=T +2400 GOSUB 260 +2410 T=T-K +2420 W=W+(S*K) +2430 GOTO 460 +2440 REM->LUDSELL +2450 HOME +2460 GOSUB 90 +2470 INVERSE:PRINT" SELL LUDES ":NORMAL +2480 PRINT CHR$(10) +2490 J=Q +2500 GOSUB 260 +2510 Q=Q-K +2520 W=W+(L*K) +2530 GOTO 460 +2540 REM->JET +2550 HOME +2560 GOSUB 90 +2570 INVERSE:PRINT" JET ":NORMAL +2580 PRINT CHR$(10) +2590 PRINT "(B)RONX" +2600 PRINT "(G)HETTO" +2610 PRINT "(C)ENTRAL PARK +2620 PRINT "(M)ANHATTEN" +2630 PRINT "CONEY (I)SLAND" +2640 PRINT "BROO(K)LYN" +2650 PRINT "(O)OPS...STAY!" +2660 INPUT "WHERE TO DUDE? ";X$ +2670 IF X$="B" THEN Y$ = "THE BRONX" : GOTO 2760 +2680 IF X$="G" THEN Y$ = "THE GHETTO" : GOTO 2760 +2690 IF X$="C" THEN Y$ = "CENTRAL PARK" : GOTO 2760 +2700 IF X$="M" THEN Y$ = "MANHATTEN" : GOTO 2760 +2710 IF X$="I" THEN Y$ = "CONEY ISLAND" : GOTO 2760 +2720 IF X$="K" THEN Y$ = "BROOKLYN" : GOTO 2760 +2730 IF X$="O" THEN GOTO 460 +2740 GOTO 2550 +2750 REM->JETB +2760 IF Y$=P$ THEN GOTO 2800 +2770 P$ = Y$ +2780 GOTO 2890 +2790 REM->ALREADYTHERE +2800 HOME +2810 GOSUB 90 +2820 INVERSE:PRINT" JET ":NORMAL +2830 PRINT CHR$(10) +2840 PRINT "YOU'RE ALREADY IN:" +2850 PRINT " ";P$ +2860 GOSUB 120 +2870 GOTO 2550 +2880 REM->SUBWAY +2890 HOME +2900 GOSUB 340 +2910 V=INT(V*1.1+.5) +2920 E=INT(E*1.06+.5) +2930 GOSUB 90 +2940 INVERSE:PRINT" SUBWAY ":NORMAL +2950 PRINT CHR$(10) +2960 IF B=1 THEN GOTO 3190 +2970 IF B=2 THEN GOTO 3240 +2980 IF B=3 THEN GOTO 3290 +2990 IF B=4 THEN GOTO 3350 +3000 IF B=5 THEN GOTO 3350 +3010 IF B=6 THEN GOTO 3410 +3020 IF B=7 THEN GOTO 3410 +3030 IF B=8 THEN GOTO 3470 +3040 IF B=9 THEN GOTO 3570 +3050 IF B=10 THEN GOTO 3570 +3060 IF B=11 THEN GOTO 3570 +3070 IF B=12 THEN GOTO 3660 +3080 IF B=13 THEN GOTO 3660 +3090 IF B=14 THEN GOTO 3810 +3100 IF B=15 THEN GOTO 3880 +3110 IF B=16 THEN GOTO 3960 +3120 IF B=17 THEN GOTO 4120 +3130 PRINT CHR$(10) +3140 PRINT "WELCOME TO ";P$ +3150 PRINT CHR$(10) +3160 INPUT "PRESS ENTER TO CONTINUE. ";X$ +3170 GOTO 460 +3180 REM->CHEAPLUDES +3190 PRINT "RIVAL DEALERS ARE SELLING CHEAP LUDES!" +3200 L=2 +3210 GOSUB 120 +3220 GOTO 460 +3230 REM->CHEEPWEED +3240 PRINT "WEED PRICES HAVE BOTTOMED-OUT!" +3250 Z=122 +3260 GOSUB 120 +3270 GOTO 460 +3280 REM->PIGHEROIN +3290 PRINT "PIGS ARE SELLING CHEAP HEROIN" +3300 PRINT "FROM LAST WEEK'S RAID!" +3310 H=INT((RND(1)*1150)+850.5) +3320 GOSUB 120 +3330 GOTO 460 +3340 REM->HEROINBUST +3350 PRINT "ADDICTS ARE BUYING HEROIN" +3360 PRINT "AT OUTRAGEOUS PRICES!" +3370 H=INT((RND(1)*25000)+18000.5) +3380 GOSUB 120 +3390 GOTO 460 +3400 REM->COKEBUST +3410 PRINT "PIGS MADE A BIG COKE BUST!" +3420 PRINT "PRICES ARE OUTRAGEOUS!!!!" +3430 C=INT((RND(1)*60000)+80000.5) +3440 GOSUB 120 +3450 GOTO 460 +3460 REM->MUGGED +3470 PRINT "YOU GOT MUGGED!" +3480 PRINT CHR$(10) +3490 J=INT(W/3) +3500 J=INT(J*2) +3510 K=INT(W-J) +3520 PRINT "YOU LOST $";K +3530 W=J +3540 GOSUB 120 +3550 GOSUB 460 +3560 REM->COPS +3570 K=M+N+U+O+T+P +3580 IF K<50 THEN RETURN +3590 PRINT "IT'S THE COPS!" +3600 PRINT CHR$(10) +3610 PRINT "JUST KIDDING!" +3620 PRINT "COPS HAVEN'T BEEN CODED YET." +3630 GOSUB 120 +3640 GOTO 460 +3650 REM->GUNBUY +3660 IF W < 500 THEN RETURN +3670 F=INT(I-(M+N+O+U+T+P)) +3680 IF F < 5 THEN RETURN +3690 J=INT(RND(1)*2) +3700 IF J = 0 THEN Y$ = "BARETTA" +3710 IF J = 1 THEN Y$ = "SATURDAY NIGHT SPECIAL" +3720 IF J = 2 THEN Y$ = ".44 MAGNUM" +3730 PRINT "WILL YOU BUY A ";Y$ +3740 INPUT "FOR $400? (Y/N)";X$ +3750 IF X$ <> "Y" THEN GOTO 460 +3760 G = INT(G+1) +3770 W = INT(W-400) +3780 I = INT(I-5) +3790 GOTO 460 +3800 REM->DEDWEED +3810 PRINT "THERE'S SOME WEED HERE THAT SMELLS" +3820 PRINT "LIKE GOOD STUFF!!" +3830 PRINT CHR$(10) +3840 INPUT "WILL YOU SMOKE IT? (Y/N)";X$ +3850 IF X$ = "Y" THEN GOTO 5280 +3860 GOTO460 +3870 REM->NEWCOAT +3880 IF W<300 THEN RETURN +3890 PRINT "WILL YOU BUY A NEW TRENCHCOAT" +3900 INPUT "WITH MORE POCKETS FOR $200? (Y/N)";X$ +3910 IF X$ <> "Y" THEN GOTO 460 +3920 I=INT(I+10) +3930 W=INT(W-200) +3940 GOTO 460 +3950 REM->DEDGUY +3960 IF F<8 THEN RETURN +3970 J=INT((RND(1)*7)+1.5) +3980 K=INT(RND(1)*5+.5) +3990 IF K=0 THEN Q=Q+J : Y$ = "LUDES" +4000 IF K=1 THEN T=T+J : Y$ = "SPEED" +4010 IF K=2 THEN U=U+J : Y$ = "WEED" +4020 IF K=3 THEN O=O+J : Y$ = "ACID" +4030 IF K=4 THEN N=N+J : Y$ = "HEROIN" +4040 IF K=5 THEN M=M+J : Y$ = "COCAINE" +4050 PRINT "YOU FOUND ";J;" UNITS OF" +4060 PRINT " ";Y$ +4070 PRINT "ON A DEAD DUDE IN THE SUBWAY!" +4080 PRINT CHR$(10) +4090 GOSUB 120 +4100 GOTO 460 +4110 REM->HOMEACID +4120 PRINT "THE MARKET HAS BEEN FLOODED" +4130 PRINT "WITH CHEAP HOME-MADE ACID!" +4140 A=INT((RND(1)*550)+250.5) +4150 GOSUB 120 +4160 GOTO 460 +4170 REM->NOTBRONX +4180 PRINT "YOU NEED TO HEAD TO THE BRONX" +4190 PRINT "TO TAKE CARE OF THIS BUSINESS." +4200 GOSUB 120 +4210 GOTO 460 +4220 REM->LOAN +4230 HOME +4240 GOSUB 90 +4250 INVERSE : PRINT " LOAN SHARK ":NORMAL +4260 PRINT CHR$(10) +4270 IF P$ <> "THE BRONX" THEN GOTO 4180 +4280 PRINT "YOUR DEBT IS: $";V +4290 PRINT "YOU HAVE: $";W 4300 PRINT CHR$(10) -4310 GOSUB 540:REM GO->SUBWAYEVENTS -4320 PRINT CHR$(10) -4330 PRINT "WELCOME TO ";PH$ -4340 PRINT CHR$(10) -4350 INPUT "PRESS ENTER TO CONTINUE. ";X$ -4360 GOTO 1710:REM GO->MENU -4370 REM->NOTBRONX -4380 PRINT "YOU NEED TO HEAD TO THE BRONX" -4390 PRINT "TO TAKE CARE OF THIS BUSINESS." -4400 GOSUB 70:REM GO->WAIT -4410 GOTO 1710:REM GO->MENU -4420 REM->LOAN -4430 HOME -4440 GOSUB 40:REM GO->TITLEBAR -4450 INVERSE : PRINT " LOAN SHARK " :NORMAL -4460 PRINT CHR$(10) -4470 IF PH$ <> "THE BRONX" THEN GOTO 4380:REM GO->NOTBRONX -4480 PRINT "YOUR DEBT IS: $";LS -4490 PRINT "YOU HAVE: $";WA -4500 PRINT CHR$(10) -4510 INPUT "(R)EPAY, (B)ORROW, (L)EAVE: ";X$ -4520 IF X$ = "R" THEN GOTO 4570:REM GO->PAYME -4530 IF X$ = "B" THEN GOTO 4660:REM GO->BORROW -4540 IF X$ = "L" THEN GOTO 1710:REM GO->MENU -4550 GOTO 4430:REM GO->LOAN -4560 REM->PAYME -4570 INPUT "REPAY HOW MUCH? ";PL -4580 IF WALOAN -4590 IF PL>LS THEN PRINT "YOU DON'T OWE THAT MUCH!" : INPUT"PRESS ENTER TO CONTINE. ";X$ : GOTO 4430:REM GO->LOAN -4600 WA=WA-PL -4610 LS=LS-PL -4620 PRINT "THANK YOU." -4630 GOSUB 70:REM GO->WAIT -4640 GOTO 1710:REM GO->MENU -4650 REM->BORROW -4660 INPUT "HOW MUCH DO YOU WANT? ";BL -4670 IF BL>5000 THEN PRINT "HE'S NOT THAT STUPID!" : GOTO 4660:REM GO->BORROW -4680 LS=LS+BL -4690 WA=WA+BL -4700 PRINT "HERE'S YOUR MONEY." : PRINT CHR$(10) : PRINT "REMEMBER, I BREAK THUMBS." -4710 GOSUB 70:REM GO->WAIT -4720 GOTO 1710:REM GO->MENU -4730 REM->BANK -4740 HOME -4750 GOSUB 40:REM GO->TITLEBAR -4760 INVERSE : PRINT " BANK O'MURICA ":NORMAL -4770 PRINT CHR$(10) -4780 IF PH$ <> "THE BRONX" THEN GOTO 4380:REM GO->NOTBRONX -4790 PRINT "YOUR BALANCE: $";SA -4800 PRINT "YOUR WALLET: $";WA -4810 PRINT CHR$(10) -4820 INPUT "(D)EPOSIT, (W)ITHDRAW, (L)EAVE: ";X$ -4830 IF X$ = "D" THEN GOTO 4880:REM GO->DEPOSIT -4840 IF X$ = "W" THEN GOTO 4960:REM GO->MYMONEY -4850 IF X$ = "L" THEN GOTO 1710:REM GO->MENU -4860 GOTO 4740:REM GO->BANK -4870 REM->DEPOSIT -4880 INPUT "HOW MUCH? ";DL -4890 IF WA
DEPOSIT -4900 SA=SA+DL -4910 WA=WA-DL -4920 PRINT "THANK YOU FOR YOUR DEPOSIT." -4930 GOSUB 70:REM GO->WAIT -4940 GOTO 1710:REM GO->MENU -4950 REM->MYMONEY -4960 INPUT "HOW MUCH? ";DL -4970 IF SA
MYMONEY -4980 SA=SA-DL -4990 WA=WA+DL -5000 PRINT "THANK YOU FOR YOUR BUSINESS." -5010 GOSUB 70:REM GO->WAIT -5020 GOTO 1710:REM GO->MENU -5030 REM->INSTRUCTIONS -5040 HOME -5050 GOSUB 40:REM GO->TITLEBAR -5060 PRINT CHR$(10) -5070 PRINT "WELCOME TO DRUGWAR//E" -5080 PRINT CHR$(10) -5090 PRINT CHR$(10) -5100 INPUT "WOULD YOU LIKE INSTRUCTIONS? (Y/N): ";Q$ -5110 REM->INSERRORHANDLER -5120 IF Q$ = "Y" THEN GOTO 5340:REM GO->INST -5130 IF Q$ = "N" THEN GOTO 5170:REM GO->GAMESTART -5140 INPUT "I DON'T UNDERSTAND YOU. Y OR N ONLY. ";Q$ -5150 GOTO 5120:REM GO->INSERRORHANDLER -5160 REM->GAMESTART -5170 WA=2000 -5180 SA=0 -5190 LS=5000 -5200 D=0 -5210 PH$="THE BRONX" -5220 GN=0 -5230 DP=0 -5240 IN=100 -5250 CI=0 -5260 HI=0 -5270 AI=0 -5280 WI=0 -5290 SI=0 -5300 LI=0 -5310 GOSUB 360:REM GO->DAILY -5320 GOTO 1710:REM GO->MENU -5330 REM->INST -5340 HOME -5350 GOSUB 40:REM GO->TITLEBAR -5360 PRINT CHR$(10) -5370 PRINT "THIS IS A GAME OF BUYING AND SELLING." -5380 PRINT "YOUR GOAL IS TO PAY OFF YOUR DEBT AND" -5390 PRINT "MAKE AS MUCH MONEY AS POSSIBLE IN A ONE" -5400 PRINT "MONTH PERIOD. PRICES FLUCTUATE EVERY DAY" -5410 PRINT "AND INTEREST ON YOUR LOAN IS CALCULATED" -5420 PRINT "AS WELL. IF YOU DEAL TOO HEAVILY, YOU'LL" -5430 PRINT "ATTRACT THE ATTENTION OF THE POLICE. -5440 PRINT CHR$(10) -5450 PRINT "COMMANDS ARE USUALLY THE FIRST LETTER" -5460 PRINT "OF WHAT YOU WANT TO DO. Y = YES AND" -5470 PRINT "N = NO." -5480 INPUT "PRESS ENTER TO CONTINUE.";X$ -5490 GOTO 5170:REM GO->GAMESTART -5500 REM->WEEDEND -5510 HOME -5520 GOSUB 40:REM GO->TITLEBAR -5530 INVERSE : PRINT " SMOKE WEED " : NORMAL -5540 PRINT "YOU HALLUCINATE ON THE WILDEST TRIP" -5550 PRINT "OF YOUR LIFE, STUMBLE ON TO THE TRACKS," -5560 PRINT "AND GET CREAMED BY A TRAIN!" -5570 PRINT CHR$(10) -5580 PRINT CHR$(10) -5590 PRINT "JUST SAY NO TO DRUGS!" -5600 GOSUB 70:REM GO->WAIT -5610 GOTO 5850:REM GO->IRONICEND -5620 REM->SCORECALCULATE -5630 SC=(WA+SA)-LS -5640 IF SC<0 THEN SC=0 : RETURN -5650 SC=SQR((SC/31.5)+.5) -5660 SC=INT(SC) -5670 IF SC>100 THEN SC=100 -5680 RETURN -5690 REM->ENDGAME -5700 HOME -5710 GOSUB 40:REM GO->TITLEBAR -5720 GOSUB 5630:REM GO->SCORECALCULATE -5730 INVERSE : PRINT " GAME OVER " : NORMAL -5740 PRINT CHR$(10) -5750 PRINT "YOUR SCORE ON A SCALE OF 1 TO 100: ";SC -5760 PRINT CHR$(10) -5770 INPUT "WOULD YOU LIKE TO PLAY AGAIN? (Y/N)";PA$ -5780 IF PA$ = "Y" THEN GOTO 5170:REM GO->GAMESTART -5790 PRINT "THANKS FOR PLAYING." -5800 PRINT "REMEMBER...WATCH YOUR BACK." -5810 PRINT "HAVE A NICE DAY!" -5820 GOSUB 6030:REM GO->ANTICHEAT -5830 END -5840 REM->IRONICEND -5850 HOME -5860 GOSUB 40:REM GO->TITLEBAR -5870 GOSUB 5630:REM GO->SCORECALCULATE -5880 INVERSE : PRINT " GAME OVER " : NORMAL -5890 PRINT CHR$(10) -5900 PRINT "YOUR FINAL SCORE IS: ";SC -5910 PRINT CHR$(10) -5920 PRINT "BUT YOU DIED FROM SMOKING WEED? IN A" -5930 PRINT "GAME ABOUT DEALING DRUGS? BUDDY, NO" -5940 PRINT "SCORE CAN REDEEM THAT STUPIDITY." -5950 PRINT CHR$(10) -5960 INPUT "WOULD YOU LIKE TO PLAY AGAIN? ";PA$ -5970 IF PA$= "Y" THEN GOTO 5170:REM GO->GAMESTART -5980 IF PA$= "N" THEN PRINT "I DON'T BLAME YOU." : END -5990 PRINT "WHAT? IF YOU'RE THAT DUMB, I'M LEAVING." -6000 GOSUB 6030:REM GO->ANTICHEAT -6010 END -6020 REM->ANTICHEAT -6030 WA=2000 -6040 SA=0 -6050 LS=5000 -6060 D=0 -6070 PH$="THE BRONX" -6080 GN=0 -6090 DP=0 -6100 IN=100 -6110 CI=0 -6120 HI=0 -6130 AI=0 -6140 WI=0 -6150 SI=0 -6160 LI=0 -6170 RETURN +4310 INPUT "(R)EPAY, (B)ORROW, (L)EAVE: ";X$ +4320 IF X$ = "R" THEN GOTO 4370 +4330 IF X$ = "B" THEN GOTO 4460 +4340 IF X$ = "L" THEN GOTO 460 +4350 GOTO 4230 +4360 REM->PAYME +4370 INPUT "REPAY HOW MUCH? ";K +4380 IF K>W THEN PRINT "YOU DON'T HAVE THAT MUCH!" : INPUT "PRESS ENTER TO CONTINUE. ";X$ : GOTO 4230 +4390 IF K>V THEN PRINT "YOU DON'T OWE THAT MUCH!" : INPUT"PRESS ENTER TO CONTINE. ";X$ : GOTO 4230 +4400 W=W-K +4410 V=V-K +4420 PRINT "THANK YOU." +4430 GOSUB 120 +4440 GOTO 460 +4450 REM->BORROW +4460 INPUT "HOW MUCH DO YOU WANT? ";K +4470 IF K>5000 THEN PRINT "HE'S NOT THAT STUPID!" : GOTO 4460 +4480 V=V+K +4490 W=W+K +4500 PRINT "HERE'S YOUR MONEY." : PRINT CHR$(10) : PRINT "REMEMBER, I BREAK THUMBS." +4510 GOSUB 120 +4520 GOTO 460 +4530 REM->BANK +4540 HOME +4550 GOSUB 90 +4560 INVERSE : PRINT " BANK O'MURICA ":NORMAL +4570 PRINT CHR$(10) +4580 IF P$ <> "THE BRONX" THEN GOTO 4180 +4590 PRINT "YOUR BALANCE: $";E +4600 PRINT "YOUR WALLET: $";W +4610 PRINT CHR$(10) +4620 INPUT "(D)EPOSIT, (W)ITHDRAW, (L)EAVE: ";X$ +4630 IF X$ = "D" THEN GOTO 4680 +4640 IF X$ = "W" THEN GOTO 4760 +4650 IF X$ = "L" THEN GOTO 460 +4660 GOTO 4540 +4670 REM->DEPOSIT +4680 INPUT "HOW MUCH? ";J +4690 IF J>W THEN PRINT "YOU DON'T HAVE THAT MUCH CASH." : GOTO 4680 +4700 E=E+J +4710 W=W-J +4720 PRINT "THANK YOU FOR YOUR DEPOSIT." +4730 GOSUB 120 +4740 GOTO 460 +4750 REM->MYMONEY +4760 INPUT "HOW MUCH? ";J +4770 IF J>E THEN PRINT "YOU DON'T HAVE SUFFICIENT FUNDS." : GOTO 4760 +4780 E=E-J +4790 W=W+J +4800 PRINT "THANK YOU FOR YOUR BUSINESS." +4810 GOSUB 120 +4820 GOTO 460 +4830 REM->INSTRUCTIONS +4840 HOME +4850 GOSUB 90 +4860 PRINT CHR$(10) +4870 PRINT "WELCOME TO DRUGWAR//E BETA 8" +4880 PRINT CHR$(10) +4890 PRINT CHR$(10) +4900 INPUT "WOULD YOU LIKE INSTRUCTIONS? (Y/N): ";X$ +4910 REM->INSERRORHANDLER +4920 IF X$ = "Y" THEN GOTO 5110 +4930 GOTO 4950 +4940 REM->GAMESTART +4950 W=2000 +4960 E=0 +4970 V=5000 +4980 D=0 +4990 P$="THE BRONX" +5000 G=0 +5010 I=100 +5020 M=0 +5030 N=0 +5040 O=0 +5050 U=0 +5060 T=0 +5070 Q=0 +5080 GOSUB 340 +5090 GOTO 460 +5100 REM->INST +5110 HOME +5120 GOSUB 90 +5130 PRINT CHR$(10) +5140 PRINT "THIS IS A GAME OF BUYING AND SELLING." +5150 PRINT "YOUR GOAL IS TO PAY OFF YOUR DEBT AND" +5160 PRINT "MAKE AS MUCH MONEY AS POSSIBLE IN A ONE" +5170 PRINT "MONTH PERIOD. PRICES FLUCTUATE EVERY DAY" +5180 PRINT "AND INTEREST ON YOUR LOAN IS CALCULATED" +5190 PRINT "AS WELL. IF YOU DEAL TOO HEAVILY, YOU'LL" +5200 PRINT "ATTRACT THE ATTENTION OF THE POLICE. +5210 PRINT CHR$(10) +5220 PRINT "COMMANDS ARE USUALLY THE FIRST LETTER" +5230 PRINT "OF WHAT YOU WANT TO DO. Y = YES AND" +5240 PRINT "N = NO." +5250 INPUT "PRESS ENTER TO CONTINUE.";X$ +5260 GOTO 4950 +5270 REM->WEEDEND +5280 HOME +5290 GOSUB 90 +5300 INVERSE : PRINT " SMOKE WEED " : NORMAL +5310 PRINT "YOU HALLUCINATE ON THE WILDEST TRIP" +5320 PRINT "OF YOUR LIFE, STUMBLE ON TO THE TRACKS," +5330 PRINT "AND GET CREAMED BY A TRAIN!" +5340 PRINT CHR$(10) +5350 PRINT CHR$(10) +5360 PRINT "JUST SAY NO TO DRUGS!" +5370 GOSUB 120 +5380 GOTO 5620 +5390 REM->SCORECALCULATE +5400 K=(W+E)-V +5410 IF K<0 THEN K=0 : RETURN +5420 K=SQR((K/31.5)+.5) +5430 K=INT(K) +5440 IF K>100 THEN K=100 +5450 RETURN +5460 REM->ENDGAME +5470 HOME +5480 GOSUB 90 +5490 GOSUB 5400 +5500 INVERSE : PRINT " GAME OVER " : NORMAL +5510 PRINT CHR$(10) +5520 PRINT "YOUR SCORE ON A SCALE OF 1 TO 100: ";K +5530 PRINT CHR$(10) +5540 INPUT "WOULD YOU LIKE TO PLAY AGAIN? (Y/N)";X$ +5550 IF X$ = "Y" THEN GOTO 4950 +5560 PRINT "THANKS FOR PLAYING." +5570 PRINT "REMEMBER...WATCH YOUR BACK." +5580 PRINT "HAVE A NICE DAY!" +5590 GOSUB 5800 +5600 END +5610 REM->IRONICEND +5620 HOME +5630 GOSUB 90 +5640 GOSUB 5400 +5650 INVERSE : PRINT " GAME OVER " : NORMAL +5660 PRINT CHR$(10) +5670 PRINT "YOUR FINAL SCORE IS: ";K +5680 PRINT CHR$(10) +5690 PRINT "BUT YOU DIED FROM SMOKING WEED? IN A" +5700 PRINT "GAME ABOUT DEALING DRUGS? BUDDY, NO" +5710 PRINT "SCORE CAN REDEEM THAT STUPIDITY." +5720 PRINT CHR$(10) +5730 INPUT "WOULD YOU LIKE TO PLAY AGAIN? ";X$ +5740 IF X$= "Y" THEN GOTO 4950 +5750 IF X$= "N" THEN PRINT "I DON'T BLAME YOU." : END +5760 PRINT "WHAT? IF YOU'RE THAT DUMB, I'M LEAVING." +5770 GOSUB 5800 +5780 END +5790 REM->ANTICHEAT +5800 W=2000 +5810 E=0 +5820 V=5000 +5830 D=0 +5840 P$="THE BRONX" +5850 G=0 +5860 I=100 +5870 M=0 +5880 N=0 +5890 O=0 +5900 U=0 +5910 T=0 +5920 Q=0 +5930 RETURN diff --git a/drugwar2e.baz b/drugwar2e.baz index a1055db..c0816b1 100644 --- a/drugwar2e.baz +++ b/drugwar2e.baz @@ -1,207 +1,64 @@ -[ -Drugwar //e beta-7 -(c) 2018 Jay Moore -Licensed under GPLv3 -] +rem Drugwar//e - Beta 8 +rem Copyright 2018 Jay Moore +rem Released under GPL v3 +rem drugwar2e.sourceforge.io +rem twitter: _nq4t + goto @instructions {because we're sticking subroutines up here} £titlebar {this literally just draws the game title at the top of the screen} - print " DRUGWAR//e " + print ,"Drugwar//e", return -£wait +£wait {ubiquitious "Press ENTER to continue} print chr$(10) input "Press enter to continue.";x$ return +[ +"Common logic" has been moved to buy/sell subroutines. +This has cleaned the code up a bit +] + £howmuchbuy {some common purchase code} print "You can afford ";j - print "You can carry ";fs + print "You can carry ";f +£howmanybuy print chr$(10) input "How many? (Enter 0 cancel): ";k - gosub @nobuysell + if K=0 goto @menu + if k>f THEN inverse : print "You can't carry that much!" : normal : goto @howmanybuy + if k>j THEN inverse : print "You can't afford that much!" : normal : goto @howmanybuy return + £howmuchsell {common sell code} print "You can sell: ";j print chr$(10) -[ -I'm using this to test how some of the logic might work for buying -in a subroutine. In theory it should only loop if you put in more -than you can afford; check for 0 with the subroutine; and if that -condition isn't met...return to the subroutine which carries on -with the buy/sell. I just have to watch out for cases where -you do something invalid and it runs the purchase/sell anyway. -Checking valid freespace for buying can be put here too. But -lines that reference a specific drug are still in normal code. -] £howmanysell input "How many? (Enter 0 to cancel.): ";k - If k>j then print "You don't have that many!" : goto @howmanysell {this should work according to my testing} - gosub @nobuysell - return - -£nobuysell {I'll be reusing this a lot, so let's subroutine it.} - if K=0 goto @menu - return - -£statusbar - inverse:print "DAY: ";D,P$:normal - print chr$(10) - return - -£freespace {I'll probably call this from more than the menu} - fs=int(in-(ci+hi+ai+wi+si+li)+(gn*5)) + If k>j then print "You don't have that many!" : goto @howmanysell + if K=0 goto @menu return + + £daily {randomizes drug prices, adds a day, calculates interests, checks day number} c=int(rnd(1)*12000+16000.5) h=int(rnd(1)*7000+5000.5) a=int((rnd(1)*34+10)*100+.5) - w=int((rnd(1)*42+33)*10+.5) + z=int((rnd(1)*42+33)*10+.5) s=int((rnd(1)*15+7)*10+.5) l=int((rnd(1)*4+1)*10+.5) b=int(rnd(1)*20+.5) d=d+1 - gosub @interest - -£interest - if d = 1 then return - ls=int(ls*1.1+.5) - sa=int(sa*1.06+.5) - return - £checkday {so I can check the day by itself} if D >= 31 GOTO @endgame return -£subwayevents - if b=1 then goto @cheapludes - if b=2 then goto @cheepweed - if b=3 then goto @pigheroin - if b=4 then goto @heroinbust - if b=5 then goto @heroinbust - if b=6 then goto @cokebust - if b=7 then goto @cokebust - if b=8 then goto @mugged - if b=9 then goto @cops - if b=10 then goto @cops - if b=11 then goto @cops - if b=12 then goto @gunbuy - if b=13 then goto @gunbuy - if b=14 then goto @dedweed - if b=15 then goto @newcoat - if b=16 then goto @dedguy - if b=17 then goto @homeacid - return - -£cheapludes - print "Rival dealers are selling cheap ludes!" - l=2 - gosub @wait - goto @menu -£cheepweed - print "Weed prices have bottomed-out!" - w=122 - gosub @wait - goto @menu -£pigheroin - print "Pigs are selling cheap heroin" - print "from last week's raid!" - h=int((rnd(1)*1150)+850.5) - gosub @wait - goto @menu -£heroinbust - print "Addicts are buying heroin" - print "at outrageous prices!" - h=int((rnd(1)*25000)+18000.5) - gosub @wait - goto @menu -£cokebust - print "Pigs made a big coke bust!" - print "Prices are outrageous!!!!" - c=int((rnd(1)*60000)+80000.5) {the infamous line 930} - gosub @wait - goto @menu -£mugged - print "You got mugged!" - print chr$(10) - ms=int(wa/3) - ms=int(ms*2) - ml=int(wa-ms) - print "You lost $";ml - wa=ms - gosub @wait - gosub @menu -£cops - we=CI+HI+WI+AI+SI+LI -[ -my improved revisions will likely add some additional -conditions on how/when we run cops -] - if we<50 then return - print "It's the cops!" - print chr$(10) - print "Just kidding!" - print "Cops haven't been coded yet." - gosub @wait - goto @menu {goto @police} -£gunbuy - if wa < 500 THEN return - gosub @freespace - if fs < 5 THEN return - gx=int(rnd(1)*2) - if gx = 0 then ax$ = "Baretta" - if gx = 1 then ax$ = "Saturday Night Special" - if gx = 2 then ax$ = ".44 Magnum" - print "Will you buy a ";ax$ - input "for $400? (Y/N)";re$ - if re$ <> "Y" then goto @menu - gn = int(gn+1) - wa = int(wa-400) - goto @menu -£dedweed - print "There's some weed here that smells" - print "like good stuff!!" - print chr$(10) - input "Will you smoke it? (Y/N)";X$ - If X$ = "Y" THEN GOTO @weedend - return -£newcoat - if wa<300 then return - print "Will you buy a new trenchcoat" - input "with more pockets for $200? (Y/N)";X$ - if X$ <> "Y" then goto @menu - in=int(in+10) - wa=int(wa-200) - goto @menu -£dedguy - If fs<8 THEN return - dg=int((rnd(1)*7)+1.5) - xg=int(rnd(1)*5+.5) - if xg=0 THEN li=li+dg : ss$ = "Ludes" - if xg=1 THEN si=si+dg : ss$ = "Speed" - if xg=2 THEN wi=wi+dg : ss$ = "Weed" - if xg=3 THEN ai=ai+dg : ss$ = "Acid" - if xg=4 THEN hi=hi+dg : ss$ = "Heroin" - if xg=5 THEN ci=ci+dg : ss$ = "Cocaine" - print "You found ";dg;" units of" - print " ";ss$ - print "on a dead dude in the subway!" - print chr$(10) - gosub @wait - goto @menu -£homeacid - print "The market has been flooded" - print "with cheap home-made acid!" - a=int((rnd(1)*550)+250.5) - gosub @wait - goto @menu - - - -£menu +£menu {main menu. everything should loop back here} home + f=i-(m+n+o+u+t+q) {former sub-routine} gosub @titlebar - gosub @freespace {it might be more efficient to calculate freespace now} - inverse : print " Day:";D;" ";ph$ : normal + inverse : print "Day:";D,p$, : normal + print chr$(10) print "(C)heck Prices" print "(I)nventory" print "(B)uy" @@ -209,47 +66,43 @@ conditions on how/when we run cops print "(J)et" print "See (L)oan shark" print "(V)isit Bank" - input "Please make your selection: ";T$ - if t$ = "C" goto @prices - if t$ = "I" goto @inventory - if t$ = "B" goto @buy - if t$ = "S" goto @sell - if t$ = "J" goto @jet - if t$ = "L" goto @loan - if t$ = "V" goto @bank - print "Invalid Selection" {This should be enough to catch errors. I should have a loop timer on this.} + input "Please make your selection: ";x$ + if x$ = "C" goto @prices + if x$ = "I" goto @inventory + if x$ = "B" goto @buy + if x$ = "S" goto @sell + if x$ = "J" goto @jet + if x$ = "L" goto @loan + if x$ = "V" goto @bank goto @menu - £prices home - gosub @titlebar {this is literally recycled from the price and gosub demo} + gosub @titlebar inverse:print" PRICES ":normal print chr$(10) print"cocaine:","$"c print"heroin:","$"h print"acid:","$"a - print"weed:","$"w + print"weed:","$"z print"speed:","$"s print"ludes:","$"l - print"wallet:","$"wa + print"wallet:","$"w gosub @wait goto @menu - £inventory home gosub @titlebar inverse:print" INVENTORY ":normal print chr$(10) - print"cocaine:",ci - print"heroin:",hi - print"acid:",ai - print"weed:",wi - print"speed:",si - print"ludes:",li - print"free space:",fs + print"cocaine:",m + print"heroin:",n + print"acid:",o + print"weed:",u + print"speed:",t + print"ludes:",q + print"free space:",f gosub @wait goto @menu - £buy home gosub @titlebar @@ -263,87 +116,68 @@ conditions on how/when we run cops print "(W)eed" print "(S)peed" print "(L)udes" - input "Enter Selection: ";db$ - if db$="c" goto @cokebuy - if db$="h" goto @herbuy - if db$="a" goto @acidbuy - if db$="w" goto @weedbuy - if db$="s" goto @spdbuy - if db$="l" goto @ludbuy - goto @menu -[ -To "save space" the calculation for how much you can afford and carry -as well as looking for 0 to return to menu are a subroutine. I want to -subroutine some of the logic...but I'll have to try and organize the -code to allow that due to the gotos in the IF statements. Otherwise -it'll screw up. I'll work on that in a revision after the game mostly -works. -] + input "Enter Selection: ";x$ + if x$="c" goto @cokebuy + if x$="h" goto @herbuy + if x$="a" goto @acidbuy + if x$="w" goto @weedbuy + if x$="s" goto @spdbuy + if x$="l" goto @ludbuy +goto @menu + £cokebuy home gosub @titlebar inverse:print" BUY COCAINE ":normal print chr$(10) - j=int(wa/c) + j=int(w/c) {calculate how many we can buy} gosub @howmuchbuy - if k>fs THEN inverse : print "You can't carry that much!" : normal : goto @cokebuy - if k<=j then ci=ci+k : wa=wa-(c*k) - if k>j THEN inverse : print "You can't afford that much!" : normal : goto @cokebuy + m=m+k : w=w-(c*k) {when the subroutine sends us back when the purchase is valid} goto @menu £herbuy home gosub @titlebar inverse:print" BUY HEROIN ":normal print chr$(10) - j=int(wa/h) - gosub @howmuchbuy - if k>fs THEN inverse : print "You can't carry that much!" : normal : goto @herbuy - if k<=j then hi=hi+k : wa=wa-(h*k) - if k>j THEN inverse : print "You can't afford that much!" : normal : goto @herbuy + j=int(w/h) + gosub @howmuchbuy + n=n+k : w=w-(h*k) goto @menu £acidbuy home gosub @titlebar inverse:print" BUY ACID ":normal print chr$(10) - j=int(wa/a) + j=int(w/a) gosub @howmuchbuy - if k>fs THEN inverse : print "You can't carry that much!" : normal : goto @acidbuy - if k<=j THEN ai=ai+k : wa=wa-(a*k) - if k>j THEN inverse : print "You can't afford that much!" : normal : goto @acidbuy + o=o+k : w=w-(a*k) goto @menu £weedbuy home gosub @titlebar inverse:print" BUY WEED ":normal print chr$(10) - j=int(wa/w) + j=int(w/z) gosub @howmuchbuy - if k>fs THEN inverse : print "You can't carry that much!" : normal : goto @weedbuy - if k<=j THEN wi=wi+k : wa=wa-(w*k) - if k>j THEN inverse : print "You can't afford that much!" : normal : goto @weedbuy + u=u+k : w=w-(z*k) goto @menu £spdbuy home gosub @titlebar inverse:print" BUY SPEED ":normal print chr$(10) - j=int(wa/s) + j=int(w/s) gosub @howmuchbuy - if k>fs THEN inverse : print "You can't carry that much!" : normal : goto @spdbuy - if k<=j THEN si=si+k : wa=wa-(s*k) - if k>j THEN inverse : print "You can't afford that much!" : normal : goto @spdbuy + t=t+k : w=w-(s*k) goto @menu £ludbuy home gosub @titlebar inverse:print" BUY LUDES ":normal print chr$(10) - j=int(wa/l) + j=int(w/l) gosub @howmuchbuy - if k>fs THEN inverse : print "You can't carry that much!" : normal : goto @ludbuy - if k<=j THEN li=li+k : wa=wa-(l*k) - if k>j THEN inverse : print "You can't afford that much!" : normal : goto @ludbuy + q=q+k : w=w-(l*k) goto @menu £sell home @@ -359,14 +193,14 @@ works. print "(S)peed" print "(L)udes" £sellsel - input "Enter Selection: (0 to cancel)";db$ - if db$="c" goto @cokesell - if db$="h" goto @hersell - if db$="a" goto @acidsell - if db$="w" goto @weedsell - if db$="s" goto @spdsell - if db$="l" goto @ludsell - if db$="0" goto @menu + input "Enter Selection: (0 to cancel)";x$ + if x$="c" goto @cokesell + if x$="h" goto @hersell + if x$="a" goto @acidsell + if x$="w" goto @weedsell + if x$="s" goto @spdsell + if x$="l" goto @ludsell + if x$="0" goto @menu print "Invalid Selection!" goto @sellsel @@ -375,10 +209,10 @@ works. gosub @titlebar inverse:print" SELL COCAINE ":normal print chr$(10) - j=ci + j=m {write amount to variable} gosub @howmuchsell - ci=ci-k - wa=wa+(c*k) + m=m-k {sub sends back here if valid, adjusts inventory} + w=w+(c*k) {adds money to wallet} goto @menu £hersell @@ -386,10 +220,10 @@ works. gosub @titlebar inverse:print" SELL HEROIN ":normal print chr$(10) - j=hi + j=n gosub @howmuchsell - hi=hi-k - wa=wa+(h*k) + n=n-k + w=w+(h*k) goto @menu £acidsell @@ -397,10 +231,10 @@ works. gosub @titlebar inverse:print" SELL ACID ":normal print chr$(10) - j=ai + j=o gosub @howmuchsell - ai=ai-k - wa=wa+(a*k) + o=o-k + w=w+(a*k) goto @menu £weedsell @@ -408,10 +242,10 @@ works. gosub @titlebar inverse:print" SELL WEED ":normal print chr$(10) - j=wi + j=u gosub @howmuchsell - wi=wi-k - wa=wa+(w*k) + u=u-k + w=w+(z*k) goto @menu £spdsell @@ -419,10 +253,10 @@ works. gosub @titlebar inverse:print" SELL SPEED ":normal print chr$(10) - j=si + j=t gosub @howmuchsell - si=si-k - wa=wa+(s*k) + t=t-k + w=w+(s*k) goto @menu £ludsell @@ -430,10 +264,10 @@ works. gosub @titlebar inverse:print" SELL LUDES ":normal print chr$(10) - j=li + j=q gosub @howmuchsell - li=li-k - wa=wa+(l*k) + q=q-k + w=w+(l*k) goto @menu £jet home @@ -447,18 +281,18 @@ works. print "Coney (I)sland" print "Broo(K)lyn" print "(O)ops...stay!" - input "Where to dude? ";jt$ - if jt$="B" then pq$ = "The Bronx" : GOTO @jetb - if jt$="G" then pq$ = "The Ghetto" : GOTO @jetb - if jt$="C" then pq$ = "Central Park" : GOTO @jetb - if jt$="M" then pq$ = "Manhatten" : goto @jetb - if jt$="I" then pq$ = "Coney Island" : goto @jetb - if jt$="K" then pq$ = "Brooklyn" : goto @jetb - if jt$="O" then goto @menu + input "Where to dude? ";x$ + if x$="B" then y$ = "The Bronx" : GOTO @jetb {we can use strings} + if x$="G" then y$ = "The Ghetto" : GOTO @jetb + if x$="C" then y$ = "Central Park" : GOTO @jetb + if x$="M" then y$ = "Manhatten" : goto @jetb + if x$="I" then y$ = "Coney Island" : goto @jetb + if x$="K" then y$ = "Brooklyn" : goto @jetb + if x$="O" then goto @menu goto @jet £jetb - if pq$=ph$ then goto @alreadythere - ph$ = pq$ + if y$=p$ then goto @alreadythere {more advanced thatn Bronx only on TI} + p$ = y$ {it's valid, copy it and move along} goto @subway £alreadythere @@ -467,23 +301,146 @@ works. inverse:print" JET ":normal print chr$(10) print "You're already in:" - print " ";ph$ + print " ";p$ gosub @wait goto @jet £subway home gosub @daily + V=int(V*1.1+.5) {loan calculation} + E=int(E*1.06+.5) {savings calculation} gosub @titlebar inverse:print" SUBWAY ":normal print chr$(10) - gosub @subwayevents + if b=1 then goto @cheapludes + if b=2 then goto @cheepweed + if b=3 then goto @pigheroin + if b=4 then goto @heroinbust + if b=5 then goto @heroinbust + if b=6 then goto @cokebust + if b=7 then goto @cokebust + if b=8 then goto @mugged + if b=9 then goto @cops + if b=10 then goto @cops + if b=11 then goto @cops + if b=12 then goto @gunbuy + if b=13 then goto @gunbuy + if b=14 then goto @dedweed + if b=15 then goto @newcoat + if b=16 then goto @dedguy + if b=17 then goto @homeacid print chr$(10) {the only way you should wind up here is if nothing happens} - print "Welcome to ";ph$ {i hope} + print "Welcome to ";p$ {i hope} print chr$(10) input "Press ENTER to continue. ";X$ goto @menu + +£cheapludes + print "Rival dealers are selling cheap ludes!" + l=2 + gosub @wait + goto @menu +£cheepweed + print "Weed prices have bottomed-out!" + z=122 + gosub @wait + goto @menu +£pigheroin + print "Pigs are selling cheap heroin" + print "from last week's raid!" + h=int((rnd(1)*1150)+850.5) + gosub @wait + goto @menu +£heroinbust + print "Addicts are buying heroin" + print "at outrageous prices!" + h=int((rnd(1)*25000)+18000.5) + gosub @wait + goto @menu +£cokebust + print "Pigs made a big coke bust!" + print "Prices are outrageous!!!!" + c=int((rnd(1)*60000)+80000.5) {the infamous line 930} + gosub @wait + goto @menu +£mugged + print "You got mugged!" + print chr$(10) + j=int(w/3) + j=int(j*2) + k=int(w-j) + print "You lost $";k + w=j + gosub @wait + gosub @menu +£cops + k=m+n+u+o+t+p {cops only active when inventory < 50} +[ +my improved revisions will likely add some additional +conditions on how/when we run cops +] + if k<50 then return + print "It's the cops!" + print chr$(10) + print "Just kidding!" + print "Cops haven't been coded yet." + gosub @wait + goto @menu {goto @police} +£gunbuy + if w < 500 THEN return + f=int(i-(m+n+o+u+t+p)) + if f < 5 THEN return + j=int(rnd(1)*2) + if j = 0 then y$ = "Baretta" + if j = 1 then y$ = "Saturday Night Special" + if j = 2 then y$ = ".44 Magnum" + print "Will you buy a ";y$ + input "for $400? (Y/N)";x$ + if x$ <> "Y" then goto @menu + g = int(g+1) + w = int(w-400) + i = int(i-5) {I kept having problems calculating this with free space as guns * 5. gave up. put it here} + goto @menu +£dedweed {don't smoke the weed} + print "There's some weed here that smells" + print "like good stuff!!" + print chr$(10) + input "Will you smoke it? (Y/N)";X$ + If X$ = "Y" THEN GOTO @weedend + goto@menu +£newcoat + if w<300 then return {only if you can afford it} + print "Will you buy a new trenchcoat" + input "with more pockets for $200? (Y/N)";X$ + if X$ <> "Y" then goto @menu + i=int(i+10) + w=int(w-200) + goto @menu +£dedguy + If f<8 THEN return {only if you have enough freespace} + j=int((rnd(1)*7)+1.5) + k=int(rnd(1)*5+.5) + if k=0 THEN q=q+j : y$ = "Ludes" + if k=1 THEN t=t+j : y$ = "Speed" + if k=2 THEN u=u+j : y$ = "Weed" + if k=3 THEN o=o+j : y$ = "Acid" + if k=4 THEN n=n+j : y$ = "Heroin" + if k=5 THEN m=m+j : y$ = "Cocaine" + print "You found ";j;" units of" + print " ";y$ + print "on a dead dude in the subway!" + print chr$(10) + gosub @wait + goto @menu +£homeacid + print "The market has been flooded" + print "with cheap home-made acid!" + a=int((rnd(1)*550)+250.5) + gosub @wait + goto @menu + £notbronx print "you need to head to the bronx" print "to take care of this business." @@ -493,11 +450,11 @@ works. £loan home gosub @titlebar - inverse : print " LOAN SHARK " :NORMAL + inverse : print " LOAN SHARK ":normal print chr$(10) - if ph$ <> "THE BRONX" then goto @notbronx - print "Your debt is: $";ls - print "You have: $";wa + if p$ <> "THE BRONX" then goto @notbronx + print "Your debt is: $";v + print "You have: $";w print chr$(10) input "(R)epay, (B)orrow, (L)eave: ";X$ If X$ = "R" THEN goto @payme @@ -505,31 +462,34 @@ works. If X$ = "L" then goto @Menu goto @loan £payme - INPUT "Repay how much? ";PL - IF WALS THEN PRINT "YOU DON'T OWE THAT MUCH!" : INPUT"PRESS ENTER TO CONTINE. ";X$ : GOTO @LOAN - WA=WA-PL - LS=LS-PL + INPUT "Repay how much? ";k + IF k>w THEN PRINT "YOU DON'T HAVE THAT MUCH!" : INPUT "PRESS ENTER TO CONTINUE. ";X$ : GOTO @LOAN + IF k>v THEN PRINT "YOU DON'T OWE THAT MUCH!" : INPUT"PRESS ENTER TO CONTINE. ";X$ : GOTO @LOAN + W=W-k + v=v-k PRINT "THANK YOU." GOSUB @WAIT GOTO @MENU £borrow - Input "How much do you want? ";BL - if bl>5000 then print "He's not that stupid!" : goto @borrow - ls=ls+bl - wa=wa+bl + Input "How much do you want? ";K + if K>5000 then print "He's not that stupid!" : goto @borrow + v=v+k + w=w+k print "Here's your money." : PRINT CHR$(10) : PRINT "Remember, I break thumbs." gosub @wait goto @menu + + + £bank home gosub @titlebar - inverse : print " BANK O'MURICA ":NORMAL + inverse : print " BANK O'MURICA ":normal print chr$(10) - if ph$ <> "THE BRONX" then goto @notbronx - print "Your balance: $";sa - print "Your wallet: $";wa + if p$ <> "THE BRONX" then goto @notbronx + print "Your balance: $";e + print "Your wallet: $";w print chr$(10) INPUT "(D)EPOSIT, (W)ITHDRAW, (L)EAVE: ";X$ if x$ = "d" then goto @deposit @@ -538,18 +498,18 @@ works. goto @bank £deposit - INPUT "How much? ";dl - If wa
w then print "You don't have that much cash." : goto @deposit + e=e+j + w=w-j Print "Thank you for your deposit." gosub @wait goto @menu £mymoney - INPUT "How much? ";dl - If sa
e then print "You don't have sufficient funds." : goto @mymoney + e=e-j + w=w+j print "Thank you for your business." gosub @wait goto @menu @@ -558,32 +518,34 @@ works. home gosub @titlebar print chr$(10) - print "Welcome to DRUGWAR//e" + print "Welcome to DRUGWAR//e Beta 8" print chr$(10) print chr$(10) - input "Would you like instructions? (Y/N): ";Q$ + input "Would you like instructions? (Y/N): ";X$ £inserrorhandler {I'm hoping this will prevent crashes} - If Q$ = "Y" THEN GOTO @inst - IF Q$ = "N" THEN GOTO @gamestart - input "I don't understand you. Y or N only. ";Q$ - goto @inserrorhandler + If X$ = "Y" THEN GOTO @inst + GOTO @gamestart £gamestart {set wallet, debt, location, inventory space, zero out inventory} - wa=2000 - sa=0 - ls=5000 + w=2000 + e=0 + v=5000 d=0 {daily subroutine adds a day} - ph$="The Bronx" - gn=0 - dp=0 - in=100 - ci=0 - hi=0 - ai=0 - wi=0 - si=0 - li=0 + p$="The Bronx" + g=0 + i=100 + m=0 + n=0 + o=0 + u=0 + t=0 + q=0 gosub @daily {the only time we'll call this outside of the subway} goto @menu {the real start of the game} +£police + + + + £inst home gosub @titlebar @@ -615,11 +577,11 @@ works. goto @ironicend £scorecalculate - sc=(wa+sa)-ls - if sc<0 THEN sc=0 : return - sc=sqr((sc/31.5)+.5) - sc=int(sc) - if sc>100 then sc=100 + k=(w+e)-v + if k<0 THEN k=0 : return + k=sqr((k/31.5)+.5) + k=int(k) + if k>100 then k=100 return £endgame @@ -628,14 +590,14 @@ works. gosub @scorecalculate inverse : print " GAME OVER " : NORMAL print chr$(10) - print "Your score on a scale of 1 to 100: ";sc + print "Your score on a scale of 1 to 100: ";k print chr$(10) - input "Would you like to play again? (Y/N)";pa$ - if pa$ = "Y" then goto @gamestart + input "Would you like to play again? (Y/N)";x$ + if x$ = "Y" then goto @gamestart print "Thanks for playing." - print "Remember...watch your back." + print "Remember, watch your back." print "Have a nice day!" - gosub @anticheat + clear end £ironicend @@ -644,33 +606,15 @@ works. gosub @scorecalculate inverse : print " GAME OVER " : NORMAL print chr$(10) - print "Your final score is: ";sc + print "Your final score is: ";k print chr$(10) print "But you died from smoking weed? In a" print "game about dealing drugs? Buddy, no" print "score can redeem that stupidity." print chr$(10) - input "Would you like to play again? ";pa$ - if pa$= "Y" THEN GOTO @GAMESTART - if pa$= "N" THEN PRINT "I don't blame you." : end + input "Would you like to play again? ";x$ + if x$= "Y" THEN GOTO @GAMESTART + if x$= "N" THEN PRINT "I don't blame you." : end print "What? If you're that dumb, I'm leaving." - gosub @anticheat + clear end - -£anticheat {clears out all variables at endgame to force a start-over} - wa=2000 - sa=0 - ls=5000 - d=0 {daily subroutine adds a day} - ph$="The Bronx" - gn=0 - dp=0 - in=100 - ci=0 - hi=0 - ai=0 - wi=0 - si=0 - li=0 - return -