home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Ahoy 1988 October
/
Ahoy_Magazine_88-10_1988_Double_L.d64
/
Capture
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
6KB
|
152 lines
10 poke52,56:poke56,56:clr:goto590
20 gosub370:gosub440:pokes+5,4:pokes+1,3
30 forp=.tonp:sysjy,p:ifpeek(js)>.thend(p)=peek(js)
40 pokep(p),ts+p:x(p)=x(p)+vx(d(p)):y(p)=y(p)+vy(d(p))
50 p(p)=ad+x(p)+y(p)*c:ifpeek(p(p))<>ttthen90
60 pokep(p),tf+d(p):next
70 sysbm,x(.)-n9,y(.)-n9,.:ifnpthensysbm,x(n1)-n9,y(n1)-n9,n1
80 goto30
90 k=peek(p(p)):pokep(p),tf+d(p):sysbm,x(.)-n9,y(.)-n9,.
100 ifnpthensysbm,x(n1)-n9,y(n1)-n9,1
110 ifk=29then190
120 pokes+5,11:pokes+1,6:pokes+4,128:pokes+4,129
130 fori=1to10:poke55665+p*21,0:forj=1to100:next
140 poke55665+p*21,1:forj=1to100:next:next:pokep(p),k:syscb
150 ifpthens(0)=s(0)+100*l:goto170
160 ifnpthens(1)=s(1)+100*l
170 l(p)=l(p)-1:ifl(p)<1then280
180 gosub510:forj=1to1000:next:goto20
190 pokes+5,4:pokes+1,3:pokes+4,128:pokes+4,129
200 s(p)=s(p)+5*l:ob=ob-n1:gosub510:ifob=.then220
210 goto70
220 j=c:x=8:y=4:w=24:h=5:c=2:gosub570
230 syspl,11,5,2:print"bonus for player"p+1;
240 b=fnr(25*l)+25:s(p)=s(p)+b
250 syspl,11,7,10:print">>> "mid$(str$(b),2,3)" points >>>":gosub510
260 x=10:y=11:w=21:h=3:c=4:gosub570:l=l+1:ifl>8thenl=1
270 syspl,11,12,4:print"prepare for level"l:goto960
280 ifs(0)>hsthenhs=s(0)
290 ifs(1)>hsthenhs=s(1)
300 x=12:y=7:w=17:h=7:c=11:gosub570
310 fori=8to10:syspl,15,i,12:print" ":next:gosub440
320 syspl,15,9,12:print" game over ":a$=str$(hs)
330 syspl,14,12,12:print" high: "right$("0000"+right$(a$,len(a$)-1),5)" "
340 pokes+6,250:pokes+4,17
350 fori=5to1step-1:forj=i*5toi*2step-1:pokes+1,j:fork=1to20:nextk,j,i
360 pokes+4,16:fori=1to4000:next:goto700
370 p(0)=ad+15+15*c:x(0)=15:y(0)=15:p(1)=ad+c-15+(r-5)*c:x(1)=c-25:y(1)=r-5
380 d(0)=4:d(1)=3
390 ifpeek(p(0))=29thenp(0)=p(0)+2:x(1)=x(1)+2:goto390
400 ifpeek(p(1))=29thenp(1)=p(1)-2:x(1)=x(1)-2:goto390
410 return
420 forp=.tonp
430 fori=y(p)-5toy(p)+5:forj=x(p)-5tox(p)+5:pokead+j+i*c,32:nextj,i,p:return
440 fori=0to23:pokes+i,0:next:pokes+24,15:return
450 gosub440:pokes+1,fnr(40)+100:pokes+15,30:pokes+5,9
460 pokes+4,20:pokes+4,21:return
470 gosub440:pokes+12,13:pokes+13,0:pokes+5,9:pokes+6,220
480 pokes+11,21:fori=1to255step2:pokes+1,i:pokes+8,fnr(256):next
490 pokes+11,0:gosub440:return
500 pokes+5,4
510 a$=str$(s(0)):syspl,1,22,11:printright$("0000"+right$(a$,len(a$)-1),5);
520 a$=str$(s(1)):printspc(16)right$("0000"+right$(a$,len(a$)-1),5);
530 syspl,13,22,1:printleft$("###",l(0))" "
540 syspl,34,22,1:printleft$("###",l(1))" "
550 syspl,0,24,7:printleft$(sp$,ob+1)" ";
560 return
570 fori=0toh-1:syspl,x,y+i,c:print""left$(s$,w);:ifi>0thenprint"[146] "
580 next:syspl,x+1,y+i,c:print"[146]"left$(s$,w):return
590 poke53280,0:poke53281,0:print"[147]"chr$(142)chr$(8)"";
600 printtab(15)"working...":deffnr(x)=int(rnd(1)*x)
610 cb=49152:cm=49205:si=49535:bm=49333:pl=49591:wd=49476:jy=49494:js=49617
620 ad=16384:n9=9:tf=34:tt=32:ts=27:s=54272:n1=1
630 pokes+1,130:pokes+5,9:pokes+15,30
640 poke56334,0:poke1,51:poke781,9:poke782,0:poke90,0:poke91,216:poke88,0
650 poke89,64:sys41964:poke1,55:poke56334,1:poke54272,216:poke53272,30
660 readi:ifi>0theni=14336+i*8:forj=itoi+7:readk:pokej,k:next:goto660
670 fori=1to4:readvx(i),vy(i):next
680 fori=49152to49617:readj:pokei,j:next
690 sp$=" ":fori=1to40:p$=p$+"_":s$=s$+" ":sp$=sp$+"]":next:syssi
700 print"[147]";:fori=0to23:syspl,0,i,9:printp$;:next:printleft$(p$,39)"[157][148]_";
710 x=12:y=1:w=15:h=2:c=2:gosub570
720 syspl,17,1,2:print"ahoy!";:syspl,15,2,2:print"presents:"
730 x=5:y=6:w=30:h=5:c=5:gosub570
740 syspl,5,6,7:print"[175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175]"
750 syspl,5,7,9:print"_ [213][192][201] [213][192][201] [178][192][201][176][178][174][174] [176] [178][192][201] [178][192][174] [146] "
760 syspl,5,8,9:print"_ [194] [171][192][179] [194][192][203] [194] [194] [194] [194][178][203] [171][192] [146] "
770 syspl,5,9,9:print"_ [202][192][203] [189] [173] [177] [177] [202][192][189] [189][202][192] [177][192][189] [146] "
780 syspl,5,10,7:print"[183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183]"
790 x=7:y=14:w=26:h=2:c=8:gosub570
800 syspl,15,14,8:print"a game of";
810 syspl,8,15,8:print"survival of the quickest"
820 x=12:y=18:w=16:h=2:c=6:gosub570
830 syspl,15,18,6:print"written by";:syspl,14,19,6:print"michael hoyt"
840 x=4:y=22:w=32:h=1:c=4:gosub570
850 poke198,0:syspl,6,22,4:print"number of players 1 or 2 ?"
860 geta$:np=val(a$)-1:ifnp<0ornp>1then860
870 gosub450:syspl,4,22,12:print" enter 1 to 3 for maze width "
880 geta$:w=val(a$):ifw<1orw>3then880
890 gosub450:syspl,4,22,14:print" enter 1 to 4 for maze height "
900 geta$:h=val(a$):ifh<1orh>4then900
910 gosub450:syspl,4,22,2:print" enter starting level 1 to 8 "
920 geta$:l=val(a$):ifl<1orl>8then920
930 gosub450:fori=0to1:s(i)=0:l(i)=3:next
940 sz=w*h:c=w*40+20:r=h*25+10:j=c
950 x=4:y=13:w=32:h=10:c=6:gosub570:syspl,13,17,6:print"creating maze..."
960 gosub470:c=j:syscm,c-20,r:fori=1to12+2*sz+l
970 a=ad+fnr(c-20)+10+(fnr(r-10)+10)*c:k=fnr(2)
980 forj=0tofnr(10)+sz/2:ifkthen1010
990 ifpeek(a+j*c)<>31thenpokea+j*c,30:goto1030
1000 goto1020
1010 ifpeek(a+j)<>31thenpokea+j,30:goto1030
1020 j=99
1030 nextj,i:gosub370:gosub420:print"[147]":ob=3+l*3:fori=1toob
1040 xy=16384+fnr(c-30)+10+(fnr(r-10)+10)*c:ifpeek(xy)=29orpeek(xy)=30then1040
1050 pokexy,29:next:fori=0to1:syspl,i*21,19,14:print"[176][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][154][174]"
1060 forj=20to22:syspl,i*21,j,6:print"[194]"spc(17)"[194]";:next
1070 syspl,i*21,23,14:print"[173][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][154][189][157][148][192]";:next
1080 fori=0to23:syspl,19,i,6:print"[181][182][146]";:next
1090 syspl,5,20,12:print"player 1"spc(13)"player 2"
1100 syspl,1,21,11:print"score:"spc(15)"score:"
1110 syspl,12,21,11:print"lives:"spc(15)"lives:"
1120 syspl,33,24,14:print"lvl: [158]"mid$(str$(l),2,1);
1130 gosub510:goto20
1140 data27,255,255,255,255,255,255,255,255
1150 data28,255,255,255,255,255,255,255,255
1160 data29,0,60,78,223,255,255,126,60
1170 data30,255,129,129,129,129,129,129,255
1180 data31,196,200,49,50,76,140,19,35
1190 data35,0,0,0,24,60,126,255,0
1200 data36,0,255,126,60,24,0,0,0
1210 data37,0,12,60,252,252,60,12,0
1220 data38,0,48,60,63,63,60,48,0,-1
1230 data0,-1,0,1,-1,0,1,0
1240 data169,,141,21,192,141,36,192,169,64,141,22,192,141,37,192,160
1250 data,162,64,185,255,255,201,29,144,6,201,33,176,2,208,5,169
1260 data32,153,255,255,200,208,235,238,22,192,238,37,192,202,224,255,208
1270 data224,96,169,,141,70,192,169,64,141,71,192,169,31,160,,162
1280 data64,153,255,255,200,208,250,238,71,192,202,224,255,208,242,32,170
1290 data192,56,233,10,141,207,193,24,105,30,141,68,193,32,170,192,56
1300 data233,10,141,208,193,169,10,133,249,169,64,133,250,160,10,24,165
1310 data249,109,68,193,133,249,144,2,230,250,136,208,241,173,208,193,141
1320 data71,193,173,207,193,168,169,32,145,249,136,16,251,24,165,249,109
1330 data68,193,133,249,144,2,230,250,206,71,193,173,71,193,16,225,96
1340 data32,253,174,32,138,173,32,247,183,152,96,32,170,192,141,69,193
1350 data32,170,192,141,70,193,32,170,192,72,169,,133,249,169,64,133
1360 data250,172,70,193,240,15,24,165,249,109,68,193,133,249,144,2,230
1370 data250,136,208,241,173,69,193,24,101,249,133,249,169,,101,250,133
1380 data250,104,170,189,72,193,133,251,169,4,133,252,189,72,193,133,253
1390 data169,216,133,254,169,18,141,71,193,160,18,177,249,145,251,56,233
1400 data27,170,189,74,193,145,253,136,16,240,24,165,249,109,68,193,133
1410 data249,169,,101,250,133,250,24,165,251,105,40,133,251,144,2,230
1420 data252,24,165,253,105,40,133,253,144,2,230,254,206,71,193,16,197
1430 data96,100,,,,,21,5,6,7,8,2,,,,1,1
1440 data1,1,32,170,192,208,5,173,1,220,208,3,173,,220,41,15
1450 data73,15,170,189,111,193,141,209,193,96,,1,2,,3,,
1460 data,4,,,,,,,,120,169,145,141,20,3,169,193
1470 data141,21,3,169,6,141,206,193,88,96,206,206,193,240,3,76,49
1480 data234,169,6,141,206,193,173,248,56,72,162,1,189,248,56,202,157
1490 data248,56,232,232,224,8,208,243,104,141,255,56,208,223,32,170,192
1500 data72,32,170,192,72,32,170,192,141,134,2,104,170,104,168,24,32
1510 data240,255,96,,,,