master
Jay 6 years ago
parent 07f85a27ce
commit 771b990901

File diff suppressed because it is too large Load Diff

@ -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 WA<PL THEN PRINT "YOU DON'T HAVE THAT MUCH!" : INPUT "PRESS ENTER TO CONTINUE. ";X$ : GOTO @LOAN
IF PL>LS 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<dl then print "You don't have that much cash." : goto @deposit
sa=sa+dl
wa=wa-dl
INPUT "How much? ";j
If j>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<dl then print "You don't have sufficient funds." : goto @mymoney
sa=sa-dl
wa=wa+dl
INPUT "How much? ";j
If j>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

Loading…
Cancel
Save