You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			818 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			Plaintext
		
	
			
		
		
	
	
			818 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			Plaintext
		
	
| rem Drugwar//e - Version 1.03
 | |
| rem 20-OCT-2018
 | |
| rem Copyright 2018 Jay Moore
 | |
| rem Released under GPL v3
 | |
| rem drugwar2e.sourceforge.io
 | |
| rem twitter: _nq4t
 | |
| 	rv=1.03
 | |
| 	goto @instructions {because we're sticking subroutines up here}
 | |
| £titlebar {this literally just draws the game title at the top of the screen}
 | |
| 	HTAB 16 : print "Drugwar//e"
 | |
| 	inverse:print"                                        ":normal
 | |
| 	return
 | |
| £wait {ubiquitious "Press ENTER to continue}
 | |
| 	print chr$(10)
 | |
| 	input "Press enter to continue.";x$
 | |
| 	return
 | |
| £twofifteen
 | |
| 	vtab 2 : htab 15
 | |
| 	return
 | |
| £twosixteen
 | |
| 	vtab 2:htab 16
 | |
| 	return
 | |
| £twoseventeen
 | |
| 	vtab 2:htab 17
 | |
| 	return
 | |
| £twoeighteen
 | |
| 	vtab 2: htab 18
 | |
| 	return
 | |
| £twonineteen
 | |
| 	vtab 2:htab 19
 | |
| 	return
 | |
| £jetalthere
 | |
| 	inverse:gosub @twonineteen:print"Jet":normal
 | |
| 	return
 | |
| £timera
 | |
| 	for j = 1 to 2500
 | |
| 	next j
 | |
| 	k = int(rnd(2)+.5)
 | |
| 	return
 | |
| £timerb
 | |
| 	for j = 1 to 1000
 | |
| 	next j
 | |
| 	return
 | |
| £timerc
 | |
| 	for j = 1 to 2000
 | |
| 	next j
 | |
| 	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  ";f
 | |
| £howmanybuy	
 | |
| 	print chr$(10)
 | |
| 	input "How many? (Enter 0 cancel): ";k
 | |
| 		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)
 | |
| £howmanysell
 | |
| 	input "How many? (Enter 0 to cancel.): ";k
 | |
| 		If k>j then print "You don't have that many!" : goto @howmanysell 
 | |
| 		if K=0 goto @menu
 | |
| 	return
 | |
| 	
 | |
| £freespace
 | |
| 	f=i-((g*5)+m+n+o+u+t+q)
 | |
| 	return
 | |
| £chase
 | |
| 	inverse:gosub @twofifteen: print"Being Chased":normal
 | |
| 	return
 | |
| £gmod
 | |
| 	speed=100:gosub @twosixteen:inverse:print"Game Over":normal:speed=255
 | |
| 	return
 | |
| £bronxcheck
 | |
| 	if p$ = "THE BRONX" then return
 | |
| 	print "you need to head to the bronx"
 | |
| 	print "to take care of this business."
 | |
| 	gosub @timerc
 | |
| 	goto @menu
 | |
| 
 | |
| 	
 | |
| £daily {randomizes drug prices, adds a day, calculates interests, checks day number}
 | |
| 	c=int(rnd(5)*12000+16000.5)
 | |
| 	h=int(rnd(5)*7000+5000.5)
 | |
| 	a=int((rnd(5)*34+10)*100+.5)
 | |
| 	z=int((rnd(5)*42+33)*10+.5)
 | |
| 	s=int((rnd(5)*15+7)*10+.5)
 | |
| 	l=int((rnd(5)*4+1)*10+.5)
 | |
| 	b=int(rnd(5)*20+.5)
 | |
| 	d=d+1
 | |
| £checkday {so I can check the day by itself}
 | |
| 	if D >= 31 GOTO @endgame
 | |
| 	return
 | |
| 
 | |
| £scorecalculate
 | |
| 	k=(w+e)-v
 | |
| 	if k<0 THEN k=0 : return
 | |
| 	k=int(sqr((k/31.5)+.5))
 | |
| 	if k>100 then k=100
 | |
| 	return
 | |
| 
 | |
| £gamestart {set wallet, debt, location, inventory space, zero out inventory}
 | |
| 	w=2000
 | |
| 	e=0
 | |
| 	v=5000
 | |
| 	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}
 | |
| 	
 | |
| £menu {main menu. everything should loop back here}
 | |
| 	home
 | |
| 	gosub @freespace
 | |
| 	gosub @titlebar
 | |
| 	inverse : vtab 2:htab 4:print "Day: "D : vtab 2:htab 18:print"Location: "p$ :normal
 | |
| 	print chr$(10)
 | |
| 	print "(C)heck Prices"
 | |
| 	print "(T)renchcoat"
 | |
| 	print "(B)uy"
 | |
| 	print "(S)ell"
 | |
| 	print "(J)et"
 | |
| 	print "See (L)oan shark"
 | |
| 	print "(V)isit Bank"
 | |
| 	print chr$(10)
 | |
| 	input "Please make your selection: ";x$
 | |
| 		if x$ = "C" goto @prices
 | |
| 		if x$ = "T" 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
 | |
| 		{if x$="debug" goto @debug}
 | |
| 	goto @menu
 | |
| 
 | |
| [
 | |
| £debug
 | |
| print "Testing Screen"
 | |
| print chr$(10)
 | |
| print "(w)allet,(g)uns,(v)debt,(e)savings,(i)nventory space"
 | |
| input "What to change?";db$
 | |
| input "To?";dx
 | |
| if db$ = "w" then w=dx
 | |
| if db$ = "g" then g=dx
 | |
| if db$="v" then v=dx
 | |
| if db$="e" then e=dx
 | |
| if db$="i" then i=dx
 | |
| goto @menu
 | |
| ]
 | |
| 
 | |
| £prices
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse:gosub @twoeighteen:print"Prices":normal
 | |
| 	print chr$(10)
 | |
| 	print"cocaine:","$"c
 | |
| 	print"heroin:","$"h
 | |
| 	print"acid:","$"a
 | |
| 	print"weed:","$"z
 | |
| 	print"speed:","$"s
 | |
| 	print"ludes:","$"l
 | |
| 	print"wallet:","$"w
 | |
| 	gosub @wait
 | |
| 	goto @menu
 | |
| £inventory
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse:gosub @twosixteen :print"Trenchcoat":normal
 | |
| 	print chr$(10)
 | |
| 	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
 | |
| 	inverse:gosub @twonineteen: print"Buy":normal
 | |
| 	print chr$(10)
 | |
| 	print"What do you want to buy?"
 | |
| 	print chr$(10)
 | |
| 	print "(C)ocaine"
 | |
| 	print "(H)eroin"
 | |
| 	print "(A)cid"
 | |
| 	print "(W)eed"
 | |
| 	print "(S)peed"
 | |
| 	print "(L)udes"
 | |
| 	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
 | |
| 
 | |
| £sell
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse: gosub @twoeighteen: print"Sell":normal
 | |
| 	print chr$(10)
 | |
| 	print "What would you like to sell?"
 | |
| 	print chr$(10)
 | |
| 	print "(C)ocaine"
 | |
| 	print "(H)eroin"
 | |
| 	print "(A)cid"
 | |
| 	print "(W)eed"
 | |
| 	print "(S)peed"
 | |
| 	print "(L)udes"
 | |
| £sellsel
 | |
| 	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
 | |
| £jet
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	gosub @jetalthere
 | |
| 	print chr$(10)
 | |
| 	print "(B)ronx"
 | |
| 	print "(G)hetto"
 | |
| 	print "(C)entral Park
 | |
| 	print "(M)anhattan"
 | |
| 	print "Coney (I)sland"
 | |
| 	print "Broo(K)lyn"
 | |
| 	print "(O)ops...stay!"
 | |
| 	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$ = "Manhattan" : 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
 | |
| 		{if x$="COPTEST" then b = 5 : goto @police}
 | |
| 		goto @jet
 | |
| £jetb
 | |
| 	{input "event: ";ev testing/debug}
 | |
| 	if y$=p$ then goto @alreadythere {more advanced thatn Bronx only on TI}
 | |
| 	p$ = y$ {it's valid, copy it and move along} : y$ = ""
 | |
| 	goto @subway
 | |
| 
 | |
| £loan
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse : gosub @twosixteen:print "Loan Shark":normal
 | |
| 	print chr$(10)
 | |
| 	gosub @bronxcheck
 | |
| 	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
 | |
| 		If X$ = "B" Then goto @borrow
 | |
| 		If X$ = "L" then goto @Menu
 | |
| 	goto @loan
 | |
| 
 | |
| £bank
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse : gosub @twofifteen: print"Bank O'Murica":normal
 | |
| 	print chr$(10)
 | |
| 	gosub @bronxcheck
 | |
| 	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
 | |
| 		if x$ = "w" then goto @mymoney
 | |
| 		if x$ = "l" then goto @menu
 | |
| 		if x$ = eg$ then goto @egg
 | |
| 	goto @bank
 | |
| 
 | |
| £cokebuy
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse:gosub @twosixteen: print"Buy Cocaine":normal
 | |
| 	print chr$(10)
 | |
| 	j=int(w/c) {calculate how many we can buy}
 | |
| 	gosub @howmuchbuy
 | |
| 	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:gosub @twosixteen: print"Buy Heroin":normal
 | |
| 	print chr$(10)
 | |
| 	j=int(w/h)
 | |
| 	gosub @howmuchbuy
 | |
| 	n=n+k : w=w-(h*k)
 | |
| 	goto @menu
 | |
| £acidbuy
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse:gosub @twoseventeen:print"Buy Acid":normal
 | |
| 	print chr$(10)
 | |
| 	j=int(w/a)
 | |
| 	gosub @howmuchbuy
 | |
| 	o=o+k : w=w-(a*k)
 | |
| 	goto @menu
 | |
| £weedbuy
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse:gosub @twoseventeen: print"Buy Weed":normal
 | |
| 	print chr$(10)
 | |
| 	j=int(w/z)
 | |
| 	gosub @howmuchbuy
 | |
| 	u=u+k : w=w-(z*k)
 | |
| 	goto @menu
 | |
| £spdbuy
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse:gosub @twoseventeen: print"Buy Speed":normal
 | |
| 	print chr$(10)
 | |
| 	j=int(w/s)
 | |
| 	gosub @howmuchbuy
 | |
| 	t=t+k : w=w-(s*k)
 | |
| 	goto @menu
 | |
| £ludbuy
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse:gosub @twoseventeen: print"Buy Ludes":normal
 | |
| 	print chr$(10)
 | |
| 	j=int(w/l)
 | |
| 	gosub @howmuchbuy
 | |
| 	q=q+k : w=w-(l*k)
 | |
| 	goto @menu
 | |
| 
 | |
| 
 | |
| £cokesell
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse:gosub @twofifteen:print"Sell Cocaine":normal
 | |
| 	print chr$(10)
 | |
| 	j=m {write amount to variable}
 | |
| 	gosub @howmuchsell {some buy logic}
 | |
| 	m=m-k {sub sends back here if valid, adjusts inventory}
 | |
| 	w=w+(c*k) {adds money to wallet}
 | |
| 	goto @menu
 | |
| 
 | |
| £hersell
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse:gosub @twoseventeen:print"Sell Heroin":normal
 | |
| 	print chr$(10)
 | |
| 	j=n
 | |
| 	gosub @howmuchsell
 | |
| 	n=n-k
 | |
| 	w=w+(h*k)
 | |
| 	goto @menu
 | |
| 
 | |
| £acidsell
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse:gosub @twoseventeen: print"Sell Acid":normal
 | |
| 	print chr$(10)
 | |
| 	j=o
 | |
| 	gosub @howmuchsell
 | |
| 	o=o-k
 | |
| 	w=w+(a*k)
 | |
| 	goto @menu
 | |
| 
 | |
| £weedsell
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse:gosub @twoseventeen:print"Sell Weed":normal
 | |
| 	print chr$(10)
 | |
| 	j=u
 | |
| 	gosub @howmuchsell
 | |
| 	u=u-k
 | |
| 	w=w+(z*k)
 | |
| 	goto @menu
 | |
| 
 | |
| £spdsell
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse:gosub @twosixteen:print"Sell Speed":normal
 | |
| 	print chr$(10)
 | |
| 	j=t
 | |
| 	gosub @howmuchsell
 | |
| 	t=t-k
 | |
| 	w=w+(s*k)
 | |
| 	goto @menu
 | |
| 
 | |
| £ludsell
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse:gosub @twosixteen:print"Sell Ludes":normal
 | |
| 	print chr$(10)
 | |
| 	j=q
 | |
| 	gosub @howmuchsell
 | |
| 	q=q-k
 | |
| 	w=w+(l*k)
 | |
| 	goto @menu
 | |
| 
 | |
| £alreadythere
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	gosub @jetalthere
 | |
| 	print chr$(10)
 | |
| 	print "You're already in:"
 | |
| 	print "            ";p$
 | |
| 	gosub @timerc
 | |
| 	goto @jet
 | |
| 
 | |
| £subway
 | |
| 	home
 | |
| 	gosub @daily
 | |
| 	{b=ev debugging code}
 | |
| 	V=int(V*1.1+.5) {loan calculation}
 | |
| 	E=int(E*1.06+.5) {savings calculation}
 | |
| 	gosub @titlebar
 | |
| 	inverse:gosub @twoeighteen:print"Subway":normal
 | |
| 	print chr$(10)
 | |
| 		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 
 | |
| £nothinghappened
 | |
| £nothinghappens	
 | |
| 	print chr$(10) {the only way you should wind up here is if nothing happens}
 | |
| 	print "Welcome to ";p$ {i hope}
 | |
| 	print chr$(10)
 | |
| 	gosub @timerc
 | |
| 	goto @menu
 | |
| 	
 | |
| 
 | |
| £cheapludes
 | |
| 	print "Rival dealers are selling cheap ludes!"
 | |
| 	l=2
 | |
| 	gosub @timerc
 | |
| 	goto @menu
 | |
| £cheepweed
 | |
| 	print "Weed prices have bottomed-out!"
 | |
| 	z=122
 | |
| 	gosub @timerc
 | |
| 	goto @menu
 | |
| £pigheroin
 | |
| 	print "Pigs are selling cheap heroin"
 | |
| 	print "from last week's raid!"
 | |
| 	h=int((rnd(9)*1150)+850.5)
 | |
| 	gosub @timerc
 | |
| 	goto @menu
 | |
| £heroinbust
 | |
| 	print "Addicts are buying heroin"
 | |
| 	print "at outrageous prices!"
 | |
| 	h=int((rnd(9)*25000)+18000.5)
 | |
| 	gosub @timerc
 | |
| 	goto @menu
 | |
| £cokebust
 | |
| 	print "Pigs made a big coke bust!"
 | |
| 	print "Prices are outrageous!!!!"
 | |
| 	c=int((rnd(9)*60000)+80000.5) {the infamous line 930}
 | |
| 	gosub @timerc
 | |
| 	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 @timerc
 | |
| 	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 goto @nothinghappened
 | |
| 	if b=9 then b = 2
 | |
| 	if b=10 then b=4
 | |
| 	if b=11 then b=5
 | |
| 	print "It's the cops!"
 | |
| 	print chr$(10)
 | |
| 	print "Officer Hardass and ";B-1;" of his"
 | |
| 	print "deputies are after you!"
 | |
| 	print
 | |
| 	gosub @timerc
 | |
| 	goto @police
 | |
| £police
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	gosub @chase 
 | |
| 	print
 | |
| 	print 
 | |
| 	print "View (G)uns"
 | |
| 	print "View (D)amage"
 | |
| 	print "(N)umber of pigs"
 | |
| 	print "(R)un"
 | |
| 	print "(F)ight"
 | |
| 	print
 | |
| 	input "What do you want to do? ";x$
 | |
| 		if x$="G" goto @pgun
 | |
| 		if x$ = "D" goto @damage
 | |
| 		if x$ = "N" goto @ncops
 | |
| 		if x$ = "R" goto @run
 | |
| 		if X$="F" goto @fight
 | |
| 	goto @police
 | |
| £pgun
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	gosub @chase 
 | |
| 	print
 | |
| 	print 
 | |
| 	print "You have ";g;" guns.
 | |
| 	print
 | |
| 	gosub @wait
 | |
| 	goto @police
 | |
| £damage
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	gosub @chase 
 | |
| 	print
 | |
| 	print 
 | |
| 	print "Your current damage is ";bb;"."
 | |
| 	print
 | |
| 	print "50 and you die!"
 | |
| 	print
 | |
| 	gosub @wait
 | |
| 	goto @police
 | |
| £ncops
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	gosub @chase 
 | |
| 	print
 | |
| 	print 
 | |
| 	print "There are ";b;" pigs still chasing you!"
 | |
| 	print
 | |
| 	print
 | |
| 	gosub @wait
 | |
| 	goto @police
 | |
| £run
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	gosub @chase  
 | |
| 	print
 | |
| 	print 
 | |
| 	print "RUNNING..."
 | |
| 	gosub @timera
 | |
| 		if k = 0 then print "You lost them in an alley!" : goto @loserun
 | |
| 	print "You can't shake them!"
 | |
| 	print
 | |
| 	gosub @wait
 | |
| 	goto @police
 | |
| £loserun
 | |
| 	print
 | |
| 	gosub @wait
 | |
| 	goto @menu
 | |
| £fight
 | |
| 	if g<=0 then print : print : print "YOU DON'T HAVE ANY GUNS!" : gosub @wait : goto @police
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	gosub @chase 
 | |
| 	print
 | |
| 	print "You shoot!"
 | |
| 	gosub @timera
 | |
| 		If K=0 THEN GOTO @miss
 | |
| 	print "You got one!" : b = b-1 : goto @next
 | |
| £miss 
 | |
| 	print "You missed!"
 | |
| £next
 | |
| 	print
 | |
| 	print
 | |
| 		If b <= 0 THEN goto @allgone
 | |
| 	gosub @timerb
 | |
| 	print "They're firing at you!"
 | |
| 	gosub @timera
 | |
| 		if k=0 then goto @theymiss
 | |
| 	print "You've been hit!"
 | |
| 	bb=bb+3
 | |
| 	if bb >= 50 goto @ded
 | |
| 	goto @nexta
 | |
| £theymiss
 | |
| 	print "They missed!"
 | |
| £nexta
 | |
| 	gosub @wait
 | |
| 	goto @police
 | |
| £ded
 | |
| 	print
 | |
| 	print "You've been killed!"
 | |
| 	gosub @wait
 | |
| 	goto @endgame
 | |
| 
 | |
| £allgone
 | |
| 	print "You killed all of them!"
 | |
| 	print
 | |
| 	gosub @timera
 | |
| 	j=int(((rnd(7)*1250)+750)+.5)
 | |
| 	w=w+j
 | |
| 	print "You found $";j;" on officer Hardass'" 
 | |
| 	print "carcass!"
 | |
| 		if w>=1200 then goto @doctor
 | |
| 	goto @menu
 | |
| £doctor
 | |
| 	gosub @timerc
 | |
| 	print
 | |
| 	print "Will you pay $1000 for a doctor"
 | |
| 	input "to sew you up? (Y/N)";x$
 | |
| 		if X$ <> "Y" then goto @menu
 | |
| 	w=w-1000
 | |
| 	bb=0
 | |
| 
 | |
| £gunbuy
 | |
| 	if w < 500 THEN goto @nothinghappened
 | |
| 	gosub @freespace
 | |
| 	if f < 5 THEN goto @nothinghappened
 | |
| 	j=int((rnd(4)*2)+.5)
 | |
| 		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 = g+1
 | |
| 	w = w-400
 | |
| 	{i = i-5}
 | |
| 	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 goto @nothinghappens {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=i+10
 | |
| 		w=w-200
 | |
| 		goto @menu
 | |
| £dedguy
 | |
| 	gosub @freespace
 | |
| 	If f<8 THEN goto @nothinghappens {only if you have enough freespace}
 | |
| 	j=int((rnd(3)*7)+1.5)
 | |
| 	k=int(rnd(3)*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 @timerc
 | |
| 	goto @menu
 | |
| £homeacid
 | |
| 	print "The market has been flooded"
 | |
| 	print "with cheap home-made acid!"
 | |
| 	a=int((rnd(4)*550)+250.5)
 | |
| 	gosub @timerc
 | |
| 	goto @menu
 | |
| 
 | |
| 		
 | |
| £payme
 | |
| 	INPUT "Repay how much? ";k
 | |
| 		IF k>w THEN PRINT:PRINT "YOU DON'T HAVE THAT MUCH!" : GOSUB @timerb : GOTO @LOAN
 | |
| 		IF k>v THEN PRINT:PRINT "YOU DON'T OWE THAT MUCH!" : GOSUB @timerb : GOTO @LOAN
 | |
| 	W=W-k
 | |
| 	v=v-k
 | |
| 	PRINT:PRINT "THANK YOU." 
 | |
| 	GOSUB @timerc
 | |
| 	GOTO @MENU
 | |
| £borrow
 | |
| 	print chr$(10)
 | |
| 	Input "How much do you want? ";K
 | |
| 		print
 | |
| 		j=int((rnd(10)*10000)+5000)
 | |
| 		if K>14000 then print "He's not that stupid!" : gosub @timerc : goto @menu
 | |
| 		if K > J then print "He doesn't feel like it." : gosub @timerb : goto @menu
 | |
| 		v=v+k
 | |
| 		w=w+k
 | |
| 		print chr$(10)
 | |
| 		print "Here's your money." : PRINT CHR$(10) : PRINT "Remember, I break thumbs."
 | |
| 		gosub @timerc
 | |
| 		goto @menu
 | |
| 
 | |
| £deposit
 | |
| 	print chr$(10)
 | |
| 	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 chr$(10)
 | |
| 	Print "Thank you for your deposit."
 | |
| 	gosub @timerc
 | |
| 	goto @menu
 | |
| [
 | |
| £egg
 | |
| 	print "You found the easter egg!"
 | |
| 	print
 | |
| 	print "$1,000,000 has been deposited in to your account."
 | |
| 	gosub @timerc
 | |
| 	goto @bank
 | |
| ]
 | |
| £mymoney
 | |
| 	print chr$(10)
 | |
| 	INPUT "How much? ";j
 | |
| 		If j>e then print "You don't have sufficient funds." : goto @mymoney
 | |
| 	e=e-j
 | |
| 	w=w+j
 | |
| 	print chr$(10)
 | |
| 	print "Thank you for your business."
 | |
| 	gosub @timerc
 | |
| 	goto @menu
 | |
| 
 | |
| £instructions
 | |
| 	home
 | |
| 	vtab 2:htab10:print "Welcome to Drugwar//e":htab14:print"Version ";rv
 | |
| 	vtab 8:htab 3:print "Based on the classic TI-BASIC clone":htab2:print"of John E. Dell's 1984 IBM/TRS80 game."
 | |
| 	vtab12:htab6:print "Applesoft version by: Jay Moore"
 | |
| 	vtab19:input "Would you like instructions? (Y/N): ";X$
 | |
| 	j =RND(-1 *(PEEK(78)+256*PEEK(79)))
 | |
| 		If X$ = "Y" THEN GOTO @inst
 | |
| 	GOTO @gamestart
 | |
| 
 | |
| £inst
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	print chr$(10)
 | |
| 	print "This is a game of buying and selling."
 | |
| 	print "Your goal is to pay off your debt and"
 | |
| 	print "make as much money as possible in a one"
 | |
| 	print "month period. Prices fluctuate every dayand interest on your loan is calculated as well."
 | |
| 	print:print "If you deal too heavily, you'll attract the attention of the police."
 | |
| 	print CHR$(10)
 | |
| 	print "Commands are entered using the letter   highlighted (L)ike (S)o. Y is yes and   anything counts as no."
 | |
| 	gosub @wait
 | |
| 	goto @gamestart 
 | |
| £weedend
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	inverse : gosub @twofifteen: print "SMOKE Weed" : NORMAL
 | |
| 	speed = 50 :print "You hallucinate on the wildest trip"
 | |
| 	print "of your life, stumble on to the tracks,"
 | |
| 	print "and get creamed by a train!"
 | |
| 	print chr$(10)
 | |
| 	print chr$(10)
 | |
| 	htab 10:print "Just say NO to drugs!":speed=255
 | |
| 	gosub @timerc
 | |
| 	gosub @timerb
 | |
| 	goto @ironicend
 | |
| 	
 | |
| £endgame
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	gosub @scorecalculate
 | |
| 	gosub @gmod
 | |
| 	print chr$(10)
 | |
| 	print "Your score on a scale of 1 to 100: ";k
 | |
| 	print chr$(10)
 | |
| 	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 "Have a nice day!"
 | |
| 	clear
 | |
| 	end
 | |
| 
 | |
| £ironicend
 | |
| 	home
 | |
| 	gosub @titlebar
 | |
| 	gosub @gmod
 | |
| 	print chr$(10)
 | |
| 	speed = 50 : print "You died from smoking weed."
 | |
| 	print chr$(10)
 | |
| 	print chr$(10)
 | |
| 	gosub @timerc: print"See? Games are totally fake." : speed = 255
 | |
| 	print chr$(10)
 | |
| 	input "Would you like to play again? ";x$
 | |
| 	if x$= "Y" THEN GOTO @GAMESTART
 | |
| 	clear
 | |
| 	end
 |