home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Compute! Gazette 1985 February
/
1985-02.d64
/
crypt_64
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-09-20
|
11KB
|
387 lines
0 remopen15,8,15,"s0:dungeon/64":close15:save"0:dungeon/64",8
100 print"[147]please wait"
101 sn=54272:fori=sntosn+24:pokei,0:next:ad=54277:sr=ad+1:lf=sn:lh=sn+1
102 cr=sn+4:vl=54296
103 pokead,16:pokesr,240
104 pokevl,15
110 gosub820:gosub1810
115 t$=" [146]":p=5:sc=0:lv=1
116 fori=1to4:rm(i)=0:next
120 s$=" [146] [146]"
125 poke49194,7
130 deffnrx(x)=int(rnd(1)*87)+x:deffnry(y)=int(rnd(1)*57)+y:poke53280,0
140 poke53281,0:pl=1524:px=20:py=12:opl=1524:pokepl,81:pokepl+54272,4:en=53269
150 pokeen,255:poke49192,0:lv=1:sc=0:cs=53278:cd=53279:gosub330:goto115
160 print"[147]";:print:printt$;s$;s$;:gosub180:prints$;s$;:gosub180:prints$;s$;t$
170 print"":return
180 print" [146] [176][192][192][192][192][192][192][192][192][192][192][192][192][192][174] [176][192][192][192][192][192][192][192][192][192][192][192][192][192][174] [146]";
190 print" [146] [221] [221] [221] [221] [146]";
200 print" [146] [221] [221] [221] [221] [146]";
210 print" [146] i i i i [146]";
220 print" [146] [221] [221] [221] [221] [146]";
230 print" [146] [221] [221] [221] [221] [146]";
240 print" [146] [173][192][192][192][192][192][192][192][192][192][192][192][192][192][189] [173][192][192][192][192][192][192][192][192][192][192][192][192][192][189] [146]";
250 return
260 print"[147]";:print:printt$;
270 fori=1to20:prints$;:next:printt$:print"":print"";
280 d$="[182][181] [182][181]":printd$;d$;d$;d$:return
290 print"[158] score"sc" level"lv" lives"p"[154]":
291 print"":return
330 iftc<>4then340
335 tc=0:fori=1to4:rm(i)=0:next:lv=lv+1:gosub880
336 iflv/4=int(lv/4)thenp=p+1:v=7-int(lv/4):ifv>=0thenpoke49194,v
340 poke49192,0:poke53269,0:gosub160:gosub290:ifp=0then610
341 ifrm(1)=1thenpoke1315,160
342 ifrm(2)=1thenpoke1332,160
343 ifrm(3)=1thenpoke1675,160
344 ifrm(4)=1thenpoke1692,160
350 pokepl,81:pokepl+54272,4
360 m=peek(56320):m=(mand15)
370 ifm=15 then 360
380 dx=((m>8)and(m<12))-(m<8)
390 dy=((m=6)or(m=10)or(m=14))-((m=5)or(m=9)or(m=13))
400 px=px+dx:py=py+dy
410 pl=(py*40)+1024+px:ifpeek(pl)<>32then430
420 pokeopl,32:pokeopl+54272,0:pokepl,81:pokepl+54272,4:opl=pl:goto360
430 ifpeek(pl)<>9thengoto590
440 ifpy=7thenrm=1
450 ifpy=16thenrm=3
460 ifpx>19thenrm=rm+1
470 ifrm=1thencl=6
480 ifrm=2thencl=7
490 ifrm=3thencl=5
500 ifrm=4thencl=2
510 poke53292,cl
520 ifrm(rm)=1thenpx=px-dx:py=py-dy:pl=(py*40)+1024+px:opl=pl:goto420
530 fori=1to4:poke2040+i,230+rm:poke53287+i,cl+1:next:poke2045,235+rm:gosub650
540 x=peek(53248):y=peek(53249)
550 ifx<=46thenpx=-3*((rm=1)or(rm=3))-20*((rm=2)or(rm=4))
560 ifx>46thenpx=-19*((rm=1)or(rm=3))-36*((rm=2)or(rm=4))
570 py=-7*((rm=1)or(rm=2))-16*((rm=3)or(rm=4)):pl=(py*40)+1024+px:opl=pl
580 goto330
590 px=px-dx:py=py-dy
600 goto360
610 print"[158]game over[146]"
611 print"press any key to play again[154][146]":poke198,0
612 wait198,1
613 print"[147]":return
650 pokeopl,32:pokeopl+54272,0:pokepl,81:pokepl+54272,4:gosub260:gosub290
660 ifpx=18orpx=35then680
670 x=45:y=145:poke53264,peek(53264)and254:poke49189,0:goto690
680 x=45:y=145:poke53264,peek(53264)or1:poke49189,1
690 poke53248,x:poke53249,y:poke53264,peek(53264)and1:poke53269,0
700 pl=53250:pokepl,fnrx(58):pokepl+1,fnry(67):pokepl+2,fnrx(169)
710 pokepl+3,fnry(67):pokepl+4,fnrx(58):pokepl+5,fnry(146)
720 pokepl+6,fnrx(167):pokepl+7,fnry(146)
730 pokepl+8,int(rnd(1)*222)+33:pokepl+9,int(rnd(1)*139)+66:pokeen,255
740 gosub900:poke49178,0
750 sys49152:a=peek(49178)
760 ifa=1thenpoke49178,0:poke49190,0:return
770 ifa<>2then800
780 poke49178,0:poke49190,0:p=p-1:ifrm(rm)=1thenrm(rm)=0:sc=sc-300:tc=tc-1
785 fori=20to0step-1:pokelh,i:pokecr,17:forw=1to20:next:pokecr,16:next
790 pokecr,0:poke53261,0:return
800 ifa<>3then810
801 sc=sc+300:gosub290:tc=tc+1:poke49178,0:rm(rm)=1:poke53261,0
802 fori=0to100step10:pokelh,i:pokecr,17:forw=1to20:next:pokecr,16:next
803 pokecr,0:goto750
810 poke49178,0:poke49190,0:sc=sc+10:gosub290:goto750
820 poke2040,230:poke2041,231:poke2042,232:poke2043,233:poke2044,234
830 poke2045,236:poke2046,235
840 ch=0:fori=14720to15359:reada:pokei,a:ch=ch+a:next
845 ifch<>45651thenprint"bad data in sprite definitions":end
850 return
880 pokeen,0:print"[147]you have achieved level ";lv" !"
890 forw=1to1000:next:return
900 a=peek(49189):ona+1goto910,920
910 a=1424:goto930
920 a=1462
930 fori=atoa+120step40:pokei,160:pokei+1,160:nexti:return
960 data0,60,0,0,126,0,0,219
970 data0,0,255,0,0,255,0,0
980 data126,0,0,60,0,1,255,128
990 data3,255,192,3,126,192,3,126
1000 data192,3,126,192,3,126,192,3
1010 data126,192,0,102,0,0,102,0
1020 data0,102,0,0,102,0,0,102
1030 data0,0,102,0,0,231,0,0
1050 data0,0,0,0,0,0,0,0
1060 data112,0,0,216,0,1,240,0
1070 data1,192,0,1,192,0,0,224
1080 data0,0,56,0,0,28,0,0
1090 data14,0,240,14,131,252,14,199
1100 data255,14,207,15,158,254,7,252
1110 data124,3,248,56,0,224,0,0
1120 data0,0,0,0,0,0,0,0
1140 data0,0,0,12,0,48,30,0
1150 data120,18,24,72,51,60,204,97
1160 data60,134,13,153,176,30,255,120
1170 data51,127,204,45,255,180,110,255
1180 data118,219,255,219,53,255,172,110
1190 data255,118,219,255,219,48,60,12
1200 data32,24,4,96,0,6,64,0
1210 data2,64,0,2,0,0,0,0
1230 data0,24,0,0,60,0,0,126
1240 data0,0,195,0,0,195,0,0
1250 data102,0,0,60,0,0,255,0
1260 data1,255,128,3,189,192,3,189
1270 data192,7,126,224,7,126,224,9
1280 data126,144,16,255,8,9,126,144
1290 data6,255,96,0,255,0,1,255
1300 data128,3,255,192,0,0,0,0
1320 data2,0,64,14,66,112,63,90
1330 data252,127,255,254,255,129,255,255
1340 data165,255,221,129,187,136,195,17
1350 data0,195,0,0,102,0,0,126
1360 data0,0,60,0,0,60,0,0
1370 data60,0,0,60,0,16,56,0
1380 data48,248,0,255,224,0,127,128
1390 data0,48,0,0,16,0,0,16
1410 data0,0,0,0,0,0,0,0
1420 data0,0,0,0,0,0,0,0
1430 data0,0,0,126,0,1,153,128
1440 data2,60,64,6,255,96,6,255
1450 data96,2,60,64,1,153,128,0
1460 data126,0,0,0,0,0,0,0
1470 data0,0,0,0,0,0,0,0
1480 data0,0,0,0,0,0,0,255
1490 data0,0,0,0,0,0,0,0
1500 data0,0,0,0,0,0,0,0
1510 data0,0,0,0,0,0,0,0
1520 data0,0,0,63,255,252,96,0
1530 data6,192,0,3,255,255,255,192
1540 data20,3,192,28,3,192,0,3
1550 data192,0,3,255,255,255,0,0
1560 data0,0,0,0,0,0,0,255
1570 data0,0,0,0,0,0,0,0
1580 data0,0,0,0,0,0,0,0
1590 data0,0,0,0,0,97,255,134
1600 data146,0,73,147,129,201,137,255
1610 data145,135,255,225,128,255,1,65
1620 data255,130,34,126,68,28,60,56
1630 data0,255,0,3,255,192,31,255
1640 data248,0,0,0,0,0,0,255
1650 data1,255,128,3,255,192,7,129
1660 data224,12,195,48,24,102,24,56
1670 data60,28,60,126,60,54,195,108
1680 data51,153,204,49,189,140,49,189
1690 data140,51,153,204,54,195,108,60
1700 data126,60,56,60,28,24,102,24
1710 data12,195,48,7,129,224,3,255
1720 data192,1,255,128,0,0,0,0
1730 data0,0,0,0,0,0,0,0
1740 data0,0,0,0,0,126,0,0
1750 data195,0,0,195,0,0,126,0
1760 data0,60,0,0,60,0,0,60
1770 data0,0,126,0,0,255,0,0
1780 data255,0,1,255,128,1,255,128
1790 data3,255,192,3,255,192,3,255
1800 data192,1,255,128,0,255,0,0
1810 ch=0:i=49152:ifpeek(i)=76thenreturn
1820 read a:ch=ch+a:ifa=256then1840
1830 pokei,a:i=i+1:goto1820
1840 ifch<>141279thenprint"bad data error in ml data.":end
1850 return
1860 data 76,24,194,1,2,4
1870 data 8,16,32,64,128,254
1880 data 253,251,247,239,223,191
1890 data 127,0,0,0,0,0
1900 data 0,0,0,0,0,0
1910 data 0,0,0,0,0,0
1920 data 0,0,0,0,0,0
1930 data 0,0,173,20,192,10
1940 data 168,141,19,192,185,0
1950 data 208,141,21,192,172,20
1960 data 192,185,3,192,45,16
1970 data 208,141,22,192,172,19
1980 data 192,185,1,208,141,23
1990 data 192,173,21,192,24,109
2000 data 24,192,141,21,192,201
2010 data 255,240,19,201,0,240
2020 data 3,76,129,192,172,20
2030 data 192,185,3,192,141,22
2040 data 192,76,129,192,173,24
2050 data 192,16,12,173,21,192
2060 data 201,255,208,5,169,0
2070 data 141,22,192,173,23,192
2080 data 24,109,25,192,141,23
2090 data 192,172,20,192,173,22
2100 data 192,240,12,185,3,192
2110 data 13,16,208,141,16,208
2120 data 76,168,192,185,11,192