1 :'**** SKYCAPERS ****
2 :'** BY DAVID MCLEAN ** 3 :'**** & **** 4 :'** ALAN GORTON ** 5 KEY 139,"mode 2:pen 3:paper 0:cls:list"+CHR$(13):KEY 138,CHR$(140) 6 IF flag=0 THEN GOSUB 5000:flag=1 8 GOSUB 8000 9 ll%=0:IF i=1 THEN GOSUB 10000 10 MODE 1 15 screen%=1:doll%=100:poun%=200 20 lives%=3:man%=15:sc%=0 30 x%=INT(1+29*RND(1)):y%=6:dx%=1:dy%=1 50 GOSUB 6000 60 PEN 3 62 LOCATE man%,23:PRINT top$:PEN 0:LOCATE man%,24:PRINT bottom$ 65 :'**** Main Loop **** 70 GOSUB 1000 80 j=JOY(0):IF j=0 THEN FOR t=1 TO 43:NEXT 85 IF j=4 AND man%-1>0 THEN GOSUB 2010 90 IF j=8 AND man%+1<29 THEN GOSUB 2040 100 IF scf%=1 THEN GOSUB 4500:scf%=0 110 IF ll%=1 THEN GOSUB 4000 998 GOTO 70 999 :'**** Move Suicide Merchant **** 1000 IF z%<>1 THEN LOCATE x%,y%:PRINT CHR$(32); ELSE z%=0 1010 x%=x%+dx%:IF x%=30 OR x%=1 THEN dx%=-dx%:SOUND 1,200,15,5 1020 y%=y%+dy%:IF y%=6 THEN SOUND 1,200,15,5:GOSUB 3000 1022 IF y%<>23 THEN 1030 1025 IF y%=23 AND x%<>man%+1 AND x%<>man%+2 THEN ll%=1 ELSE dy%=-dy%:SOUND 1,200,15,5 1030 FOR t=1 TO screen%:IF y%=cloudy(t) AND x%>=cloudx(t) AND x%<cloudx(t)+3 THEN dy%=-dy%:z%=1:SOUND 1,200,15,5 1035 NEXT 1037 IF z%=1 THEN GOTO 1060 1040 LOCATE x%,y% 1050 PRINT CHR$(INT(193+4*RND(1))) 1060 b=b+1:IF b=3 THEN GOSUB 1500:b=0 1499 RETURN 1500 :'**** Move Bailiff **** 1510 bailiff=bailiff+1:IF bailiff=30 THEN LOCATE bailiff,6:PRINT CHR$(32);CHR$(32);CHR$(11);CHR$(8);CHR$(32):bailiff=1 1520 LOCATE bailiff,6:PRINT bailiff$ 1530 PEN 3:LOCATE bailiff+2,6:PRINT head$ 1540 PEN 0 1550 poun%=poun%-1:PEN 2:LOCATE 2,3:PRINT"#";poun%:SOUND 2,1,5,15 1560 IF poun%<1 THEN GOTO 4000 1570 PEN 0:b=0 1599 RETURN 2000 :'**** Move Stretcher Team **** 2010 LOCATE man%,23:PRINT CHR$(32);CHR$(9);CHR$(9);CHR$(32);CHR$(10);CHR$(8);CHR$(32):man%=man%-1 2020 LOCATE man%,23:PEN 3:PRINT top$ 2030 LOCATE man%,24:PEN 0:PRINT bottom$ 2035 RETURN 2040 LOCATE man%,23:PRINT CHR$(32);CHR$(8);CHR$(10);CHR$(32);CHR$(11);CHR$(9);CHR$(9);CHR$(32):man%=man%+1 2060 LOCATE man%,23:PEN 3:PRINT top$ 2070 LOCATE man%,24:PEN 0:PRINT bottom$ 2999 RETURN 3000 :'**** Collisions? **** 3010 IF x%>=bailiff AND x%<bailiff+3 THEN scf%=1:SOUND 2,16,20,15,1,10 3020 dy%=-dy% 3999 RETURN 4000 :'**** Lose A Life **** 4010 lives%=lives%-1:IF lives%<1 THEN GOTO 9000 4015 PEN 2:LOCATE 18,2:PRINT"MEN";lives% 4020 PEN 2:LOCATE 15,12:PRINT"AAARGH !":SOUND 1,1500,15,15,5,5,12 4030 FOR t=1 TO 400:NEXT 4100 ll%=0:poun%=200:man%=15 4110 GOTO 30 4500 :'**** Score **** 4505 sc%=sc%+poun% 4510 PEN 3 4520 LOCATE 2,2:PRINT"1UP ";sc% 4530 doll%=100:poun%=200 4535 PEN 2:LOCATE 2,3:PRINT"#";poun%:LOCATE 30,3:PRINT"$";doll% 4540 screen%=screen%+1 4590 RETURN 5000 :'*** Characters **** 5010 SYMBOL AFTER 139 5020 SYMBOL 193,2,5,10,140,80,36,216,192 5030 SYMBOL 194,192,220,32,80,142,144,24 5040 SYMBOL 195,130,68,36,28,42,75,83,0 5050 SYMBOL 196,6,230,24,23,48,72,140,0 5060 SYMBOL 140,238,0,187,0,238,0,187,0 5070 SYMBOL 197,63,127,127,255,255,127,63,14 5080 SYMBOL 198,12,190,191,223,255,255,251,112 5090 SYMBOL 199,56,124,126,254,252,248,112 5095 SYMBOL 207,0,0,0,0,60,126,126,255 5100 SYMBOL 200,62,88,170,95,182,120,60,24 5120 SYMBOL 202,60,94,33,221,247,15,126,60 5125 SYMBOL 203,126,118,247,251,60,118,102,119 5130 SYMBOL 204,0,0,0,255,127,128,0,0 5140 SYMBOL 205,126,110,239,223,60,110,102,238 5145 SYMBOL 206,0,0,0,255,254,1,0,0 5150 SYMBOL 208,62,88,170,95,178,110,56,128 5160 SYMBOL 209,252,42,21,255,255,143,4,7 5170 :'**** Set character strings **** 5180 bottom$=CHR$(203)+CHR$(9)+CHR$(9)+CHR$(205) 5190 top$=CHR$(200)+CHR$(10)+CHR$(204)+CHR$(206)+CHR$(11)+CHR$(202) 5200 cloud$=CHR$(197)+CHR$(198)+CHR$(199) 5210 bailiff$=CHR$(32)+CHR$(209)+CHR$(11)+CHR$(8)+CHR$(32)+CHR$(207) 5220 head$=CHR$(208) 5999 RETURN 6000 :'*** Set Screen Up **** 6020 BORDER 11:PAPER 1:CLS 6030 a$(1)=" " 6040 a$(2)="" 6045 PEN 2:PAPER 0 6050 FOR t=5 TO 25:LOCATE 32,t:PRINT a$(1);:NEXT 6060 FOR t=5 TO 25 STEP 4:LOCATE 32,t:PRINT a$(2);:NEXT 6070 PLOT 1,340,0:DRAW 636,340,0:DRAW 636,399,0:DRAW 1,399,0:DRAW 1,340,0 6080 PAPER 1:LOCATE 2,2:PEN 3:PRINT"1UP";sc%:LOCATE 30,2:PRINT"HI";hi%:PEN 2:LOCATE 2,3:PRINT"#";poun%:LOCATE 30,3:PRINT"$";doll% :LOCATE 18,2:PRINT"MEN";lives% 6090 PEN 3:FOR t=1 TO screen%:cloudx(t)=INT(1+26*RND(1)):cloudy(t)=INT(8+5*RND(0)):LOCATE cloudx(t),cloudy(t):PRINT cloud$:NEXT 6999 RETURN 8000 :'**** Title Screen **** 8005 INK 1,11:INK 2,6:INK 0,0:INK 3,26:MODE 1:PAPER 1:CLS 8010 t$="S Y A E S":b$=" K C P R ":yc=2 8020 IF yc=1 THEN yc=2:cy=1 ELSE yc=1:cy=2 8030 PEN 0:LOCATE 4,7:PRINT"The Cast":PEN 2:LOCATE 4,8:PRINT"--- ----" 8040 PEN 3:LOCATE 4,10:PRINT top$:PEN 0:LOCATE 4,11:PRINT bottom$;" ..... Fred & Bill" 8050 LOCATE 5,13:PRINT bailiff$:PEN 3:LOCATE 7,13:PRINT head$;:PEN 0:PRINT" ..... Super Bailiff" 8060 LOCATE 6,15:PRINT CHR$(196);" ..... The Debtter" 8070 PEN 3:LOCATE 5,17:PRINT cloud$;:PEN 0:PRINT" ..... The Cloud" 8080 PEN 2:LOCATE 10,20:PRINT"Press i for instructions":LOCATE 10,22:PRINT"Press any key to play" 8085 PEN 3:LOCATE 16,yc:PRINT t$:PEN 0:LOCATE 16,cy:PRINT b$ 8090 c$=INKEY$:IF c$="" THEN 8020 8100 IF c$="i" OR c$="I" THEN i=1 8999 RETURN 9000 :'**** Game over **** 9010 a$="GAME OVER" 9020 PEN 2:LOCATE 18,2:PRINT"MEN";lives% 9035 PEN 0 9040 IF sc%>hi% THEN hi%=sc% 9050 FOR t=1 TO 9:l$=MID$(a$,t,1):LOCATE t+14,12:PRINT l$;:FOR s=1 TO 200:NEXT 9060 NEXT 9999 GOTO 8 10000 :'Instructions 10010 MODE 1:PEN 0:PAPER 1:CLS:LOCATE 14,1:PRINT"Instructions" 10020 LOCATE 14,2:PRINT"------------" 10030 PRINT:PRINT"Once upon a time in the city of London acertain female politician who will remain unamed, became Prime Minister of jolly old England. 10040 PRINT "Suddenly jolly old England became not sojolly as the # went down aginst the $. 10050 PRINT"As this happened the people of England became bankrupt and started commiting suicide." 10060 PRINT:PRINT"You guide Fred & Bill the tax collectorsleft & right with your joystick to try to bounce the people uP to SUPER BAILIFFat the top of the screen." 10070 PRINT"If you do this you get the tax the person owes you if you don't before the # reaches 0 then you lose a life." 10080 PRINT:PRINT:PRINT:PRINT" Press a key to start" 10090 c$=INKEY$:IF c$="" THEN 10090 10100 RETURN |