home *** CD-ROM | disk | FTP | other *** search
Wrap
30 poke53280,0:poke53281,0:printchr$(142)chr$(8):dima(64),b(7,7):print"[147]"tab(17)"[158]addit":b$=" ":b1$="[176][192][192][178][192][192][178][192][192][178][192][192][178][192][192][178][192][192][178][192][192][178][192][192][174]":b2$="[221] [221] [221] [221] [221] [221] [221] [221] [221]" 60 b3$="[171][192][192][219][192][192][219][192][192][219][192][192][219][192][192][219][192][192][219][192][192][219][192][192][179]":b4$="[173][192][192][177][192][192][177][192][192][177][192][192][177][192][192][177][192][192][177][192][192][177][192][192][189]":d$="":l$=left$(d$,22):print"do you require instructions (y/n) ? ";:gosub720:printa$:ifa$="y"thengosub760 90 print"how many players ? ";:gosub740:printa$:n=val(a$):ifn=2then110 100 print:input"what is your name ";p1$:p2$="the computer":goto130 110 print:input"what is your name, player 1 ";p1$:print:input"what is your name, player 2 ";p2$:p2$=left$(p2$,12) 130 p1$=left$(p1$,12):n1=25+int((15-len(p1$))/2):n2=25+int((15-len(p2$))/2) 140 print"[147]"b1$:fory=0to6:printb2$:printb3$:next:printb2$:printb4$:print""tab(29)"scores":printtab(29)"[192][192][192][192][192][192]":printleft$(d$,6)tab(n1)p1$:printleft$(d$,12)tab(n2)p2$:n3=n1-20:n4=n2-20:printl$tab(10)"please wait a moment":r=1:forc=1to64:a(c)=c:next:forc=64to1step-1:readd:e=int(rnd(0)*c)+1:v=a(e)-1 190 ife<cthenforh=etoc-1:a(h)=a(h+1):next 200 h=int(v/8):v=v-8*h:b(h,v)=d:gosub330:next:s1=0:s2=0:gosub590 210 p=1:gosub380:iff=0then230 220 p=2:gosub400:iff<>0then210 230 printl$b$l$;:onsgn(s2-s1)+2gosub260,290,300:printd$tab(10)"another game (y/n) ?";:gosub720:ifa$="y"thenrestore:goto140 250 print"[147]"chr$(9):end 260 t=20-int((len(p1$)+17)/2):printtab(t)p1$" won by"(s1-s2)"point";:ifs1-s2>1thenprint"s" 280 return 290 printtab(12)"it's a draw ! ":return 300 t=20-int((len(p2$)+17)/2):printtab(t)p2$" won by"(s2-s1)"point";:ifs2-s1>1thenprint"s" 320 return 330 cd=h*2+2:l1$=left$(d$,cd):cr=v*3+1:d=b(h,v):printl1$tab(cr)"[146]";:ifr=2thenprint""; 350 ifd=50thenprint"**[146]":b1=h:b2=v:return 380 f=300:forv=0to7:f=f+b(b1,v):next:iff=0thenreturn 400 f=300:forh=0to7:f=f+b(h,b2):next:iff=0thenreturn 420 y=b1:x=b2:ifn=2orp=1then440 430 printl$b$l$tab(12)"i'm thinking....":gosub600:goto540 440 t=20-int((len(n$)+12)/2):printl$b$l$tab(t)"your turn, "n$ 450 geta$:ifa$=""then450 460 ifa$<>" "then520 470 x1=x:y1=y 480 y=y+yy:ify>7theny=0 490 x=x+xx:ifx>7thenx=0 500 z=b(y,x):ifabs(z)=50then480 510 r=1:h=y1:v=x1:gosub330:r=2:h=y:v=x:gosub330:goto450 520 ifa$<>chr$(13)then450 530 ifabs(b(y,x))=50then450 540 ifn=1andp=2thenr=2:h=y:v=x:gosub330 550 r=1:h=b1:v=b2:b(h,v)=-50:gosub330:h=y:v=x:z=b(h,v):b(h,v)=50:gosub330:ifp=1thens1=s1+z 570 ifp=2thens2=s2+z 580 printleft$(d$,19)tab(13)"last taken :"z"[157] " 590 printleft$(d$,8)tab(30)s1"[157] ":printleft$(d$,14)tab(30)s2"[157] ":return 600 m=-50:g=-1:fora1=0to7:d=b(a1,b2):ifabs(d)=50then710 610 x2=-50:fora2=0to7:ifa2<>b2thenk=b(a1,a2):ifk<>-50andk>x2thenx2=k:s=a2 620 next:ifx2<>-50then640 630 ifd>mthenm=d:g=a1:goto710 640 ifg<0theng=a1 650 fora2=0to7:q=b(a2,s):ifq=-50ora2=a1then700 660 y2=-50:fora3=0to7:w=b(a2,a3):ifa3=sthen680 670 ifabs(w)<>50andw>y2theny2=w 680 next:ify2=-50theny2=0 690 l=d-x2+q-y2:ifl>mthenm=l:g=a1 700 next 710 next:y=g:return 720 geta$:ifa$<>"y"anda$<>"n"then720 730 return 740 geta$:ifa$<>"1"anda$<>"2"then740 750 return 760 print" addit is a board game for 1-2 players.":print" every square on the board has a value,":print" and you score points by landing on the":print" squares. you may move in one direction":print" only - horizontally or vertically. you" 810 print" must press the space bar to move from":print" square to square and then press return":print" to score, but beware - some squares on":print" the board contain minus values !":printtab(6)"press space bar to continue." 860 geta$:ifa$<>" "then860 870 print"[147]":return:data15,10,9,9,8,8,7,7,7,6,6,6,5,5,5,5,4,4,4,4,3,3,3,3,3:data2,2,2,2,2,1,1,1,1,1,0,0,0,0,0,-1,-1,-1,-1,-2,-2,-2,-2:data-3,-3,-3,-3,-4,-4,-4,-5,-5,-5,-6,-6,-7,-7,-9,50