home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Power Disk 64 1997 1
/
Power_Disk_64_97-01_1997-05_Lagune_de_Side_B.d64
/
burgenschlacht
(
.txt
)
next >
Wrap
Commodore BASIC
|
2023-02-26
|
18KB
|
359 lines
10 printchr$(142)
30 :
100 rem"[214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214]"
110 rem"[214][214][214][214][214][214] burgenschlacht [214][214][214][214][214][214][214]"
120 rem"[214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214]"
130 rem"[214][214][214][214][214] copyright 19.4.82 [214][214][214][214][214]"
140 rem"[214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214]"
150 rem"[214][214][214][214][214][214][214] by peter menke [214][214][214][214][214][214]"
160 rem"[214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214][214]"
170 :
180 :
190 :
300 v=53248:poke v+33,11:poke v+32,0
310 s=54272
315 for i=0to24:pokes+i,0:next
321 pokes+24,15
322 pokes+0,0
323 pokes+1,0
324 pokes+6,240
327 pokes+5,255
328 pokes+4,33
410 :
420 :
500 rem ******** spielernamen *******
510 print"[147][155]";
511 print" ";
512 print" pm video games ";
513 print" presents : ";
514 print" [198][198][198][198][198][198][198][198][198][198][198][198][198][198] ";
515 print" burgenschlacht ";
520 print" [197][197][197][197][197][197][197][197][197][197][197][197][197][197] ";
525 print"[146]spielernamen:"
530 print"name: spieler links"
532 print"(bedienungstaste: space)"
534 input"";l2$
540 print"name: spieler rechts"
542 print"(bedienungstaste: shift space)"
544 input"";r2$
550 :
560 :
570 :
580 :
590 :
600 rem ******* spielplan *******
610 print"[147]":for i=0to24:print"[149] ":next
620 gosub 1100
630 :
640 :
650 :
660 :
670 :
700 rem ******* toene *******
705 dim te(30),t(20,20),l(20,20),s(19)
706 restore
710 for i=1to27
720 read te(i)
730 next i
740 data 251,237,224,211,199,188,177,167
750 data 157,149,140,132,124,117,111,104
760 data 99,93,88,83,78,73,69,65,61,57,0
761 :
762 rem **** schlussmelodie *****
763 for i=1to19
764 read s(i)
765 next
766 :
767 data 100,15,107,15,110,15,117,15,110,15,120,15,127,15,130,15,137,15,140
770 :
780 :
790 :
800 :
805 nl(1)=1:nl(2)=2:nl(3)=4
810 ta=2
820 n=int(3*rnd(1)+1)
830 for i=1tota
835 tp=te(int(25*rnd(1)+1))
840 for ii=1to nl(n)
850 t(i,ii)=tp
860 l(i,ii)=nl(n)
870 next ii
880 next i
890 :
910 goto 1400
915 :
920 for i=1tota
930 for ii=1ton
935 poke s+1,0
940 poke s+1,t(i,ii)
950 for p=1to100-l(i,ii)*2:next p
955 poke s+1,0
970 next ii
980 next i
990 return
1000 :
1070 :
1080 :
1090 :
1100 rem ====== spielplan ======
1110 :
1120 poke v+33,14:poke v+32,0
1130 for i=1to40
1140 poke 1023+i,230:poke 55295+i,0
1150 poke 1983+i,230:poke 56255+i,0
1160 next i
1170 :
1180 for i=0to24
1190 poke 1024+i*40,230:poke55296+i*40,0
1200 poke 1063+i*40,230:poke55335+i*40,0
1210 next i
1220 :
1224 print"[144][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166]"
1225 print"[166][166][166][166][166][166][166][166][166][166][166][166] burgenschlacht [166][166][166][166][166][166][166][166][166][166][166]"
1226 print"[166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166]"
1230 print"";
1240 print"[149][166][166][146] [166][146] [166][166][146] [166][166] [166] [166][166]"
1250 print"[166][166][166][166][166][166][166][146] [166][166][166][166][166][166][166]"
1260 print"[166][166][166][166][166][146] [166][166][166][166][166]"
1270 print"[166][166][166][166][166][146] [166][166][166][166][166]"
1280 print"[166][166][166][166][166][146] [166][166][166][166][166]"
1290 print"[166][166][166][166][166][146] [166][166][166][166][166]"
1300 print"[149] [205][158][209][206][149] [149][166][166][166][166][166][146] [166][166][166][166][166] [159][205][158][215][159][206][149] "
1310 print"[149] [151][183][197][183][146][195][198][149] [221][149] [149][166][166][166][166][166][146] [166][166][166][166][166][149] [159][221][149] [151][198][195][183][146][197][183] "
1320 print"[149] [151][214][146][149] [206][163][205][149] [149][166][166][216][149][166][166][146] [166][166][159][216][149][166][166][149] [159][206][163][205][149] [151][214][146][149] "
1330 print"[153] [223][146][149] [153][169] "
1340 print" [223][146][149] [153][169] "
1350 print" "
1355 print" ":l9=0:r9=0
1356 print"";left$(l2$,12)
1358 print"punkte:";l9
1359 print"punkte:";r9
1360 print"";left$(r2$,11)
1361 return
1370 :
1380 :
1390 :
1400 rem ******** strings ********
1410 :
1420 l$="[149] [157][157][157][157][205][158][209][206][149] [157][157][157][157][149] [221][149] [157][157][157][157][206][163][205][149] "
1430 r$="[149] [157][157][157][157][149] [159][205][158][215][159][206][157][157][157][157][149] [159][221][149] [157][157][157][157][149] [159][206][163][205][149]"
1440 l1$="[151][205][205][223][146][205][149]"
1445 l3$="[149] [149]"
1450 r1$="[151][206][145][169][146][145][206][145][206][149]"
1455 r3$="[149] [145] [145] [145] [149]"
1460 u$=""
1470 :
1480 :
1490 :
1500 rem *************************
1510 rem ****** hauptprogramm ****
1520 rem *************************
1530 :
1540 :
1560 :
1570 l=1626:poke l+80,81:l1=0
1575 get ll$:if ll$<>" " then 1575
1577 for ii=1to300:next
1580 for i=1to38
1585 for ii=1to50:next
1590 get ll$
1600 if ll$=" " then l1=l1+1
1610 if ll$<>" " then goto 1630
1615 pokes+1,int(6.7*l1)
1620 next i
1630 if l1=0 then pokel+80,32:goto 2200
1640 l2=l1/100
1642 poke s+1,100:fori=1to300:next:pokes+1,0
1650 print "";left$(u$,15);tab(7);l$;"[157][157][157][157][157] "
1660 print "";left$(u$,14);tab(7);l$;"[157][157][157][157][157][149][198] "
1670 print "";left$(u$,13);tab(6);l$;"[157][157][157][157][157] "
1675 print "";left$(u$,12);tab(5);l$;"[157][157][157][157][157] "
1680 print "";left$(u$,13);tab(5);l$
1690 print "";left$(u$,14);tab(5);l$
1700 pokel+80,32:poke l+40,81:pokel+40,32:pokel,81
1710 print "";left$(u$,18);"";" "
1720 print "";left$(u$,16);"";l1$
1730 print "";left$(u$,15);tab(5);l$
1735 print "";left$(u$,15);tab(5);" [157] [157] [145][145]";l$
1737 print "";left$(u$,16);tab(6);" [157] [157] [145][145]";l$
1740 print "";left$(u$,16);"";l3$
1750 print "";left$(u$,18);"";"[151][183][197][183][146][195][198]"
1770 :
1810 :
1970 :
1990 :
2000 if l1>90*l2 then ll=-40:goto 2060
2010 if l1>70*l2 then ll=-39:goto2060
2020 if l1>20*l2 then ll=1:goto2060
2030 if l1>0 then ll=41:goto2060
2040 ll=40
2050 :
2060 l1=l1-1
2070 if peek(l+ll)=102 then pokel,32:l9=l9+1:l1=0:l2=0:goto 2130
2072 if peek(l+ll)=230 then pokel,32:l9=l9-1:l1=0:l2=0:goto 2130
2075 ifpeek(l+ll)=88thenpokel,32:l=l+ll:ss=l9:s$=l2$:vv=r9:v$=r2$:goto5000
2082 if peek(l+ll)=119 then l1=0:goto 2200
2085 ifpeek(l+ll)<>32thenpokel,32:l1=0:gosub920:goto2200
2090 poke l,32
2100 l=l+ll
2110 poke l,81
2120 goto2000
2122 :
2124 :
2130 if peek(l+1)=102 and ll<>1 then poke l+1,32:l9=l9+1:l3=l+1:gosub 3000
2135 if peek(l-1)=102 and peek(l+39) then poke l-1,32:l9=l9+1:l3=l-1:gosub3000
2140 if peek(l+1)=230 and ll<>1 then poke l+1,32:l9=l9-1:l3=l+1:gosub 3030
2145 if peek(l-1)=230 and peek(l+39) then poke l-1,32:l9=l9-1:l3=l-1:gosub3030
2150 if peek(l+ll)=102 then pokel+ll,32:gosub 3060
2160 if peek(l+ll)=230 then pokel+ll,32:gosub 3100
2200 :
2210 print"[153]punkte:";l9
2220 goto 3370
3000 if peek(l3-40)=102 then poke l3-40,32:l9=l9+1
3010 return
3020 :
3030 if peek(l3-40)=230 then poke l3-40,32:l9=l9-1
3040 return
3050 :
3060 l3=l+ll:gosub 3000:gosub 3200
3070 fori=1to50:poke s+1,int(255*rnd(1)):next:pokes+1,0
3080 return
3090 :
3100 l3=l+ll:gosub 3030:gosub 3240
3110 fori=1to255 step2:pokes+1,i:next:pokes+1,0
3120 return
3130 :
3200 if peek(l+ll+1)=102 and peek(l+ll+41)=32 then poke l=ll+1,32:l9=l9+1
3210 if peek(l+ll-1)=102 and peek(l+ll+39)=32 then poke l=ll-1,32:l9=l9+1
3220 return
3230 :
3240 if peek(l+ll+1)=230 and peek(l+ll+41)=32 then poke l=ll+1,32:l9=l9-1
3250 if peek(l+ll-1)=230 and peek(l+ll+39)=32 then poke l=ll-1,32:l9=l9-1
3260 return
3270 :
3280 :
3290 :
3300 :
3310 :
3350 rem ****** rechter spieler *****
3360 :
3370 r=1661:poke r+80,87:r1=0
3372 get rr$:if rr$<>"[160]" then 3372
3375 for ii=1to300:next
3380 for i=1to38
3385 for ii=1to50:next
3390 get rr$
3395 :
3400 if rr$="[160]" then r1=r1+1
3410 if rr$<>"[160]" then goto 3430
3415 pokes+1,int(6.7*r1)
3420 next i
3430 if r1=0 then poker+80,32:goto 3800
3440 r2=r1/100
3442 poke s+1,100:fori=1to300:next:pokes+1,0
3450 print "";left$(u$,15);tab(29);r$;"[157][157][157][157] "
3460 print "";left$(u$,14);tab(29);r$;"[157][157][157][157] "
3470 print "";left$(u$,13);tab(30);r$;"[157][157][157][157] "
3475 print "";left$(u$,12);tab(31);r$;"[157][157][157][157] "
3480 print "";left$(u$,13);tab(31);r$
3490 print "";left$(u$,14);tab(31);r$
3500 poker+80,32:poke r+40,87:poker+40,32:poker,87
3510 print "";left$(u$,18);tab(33);" "
3520 print "";left$(u$,19);tab(34);r1$
3530 print "";left$(u$,15);tab(31);r$
3535 print "";left$(u$,15);tab(29);"[149] [157][157] [157] [145][145][157][157][157][157][157]";r$
3537 print "";left$(u$,16);tab(29);"[149] [157][157] [157] [145][145][157][157][157][157][157]";r$
3540 print "";left$(u$,19);tab(34);r3$
3550 print "";left$(u$,18);tab(33);"[151][198][195][183][146][197][183]"
3580 :
3600 if r1>90*r2 then rr=-40:goto 3660
3610 if r1>70*r2 then rr=-41:goto3660
3620 if r1>20*r2 then rr=-1:goto3660
3630 if r1>0 then rr=39:goto3660
3640 rr=40
3650 :
3660 r1=r1-1
3670 if peek(r+rr)=230 then poker,32:r9=r9+1:r1=0:r2=0:goto 3730
3672 if peek(r+rr)=102 then poker,32:r9=r9-1:r1=0:r2=0:goto 3730
3675 ifpeek(r+rr)=216thenpoker,32:r=r+rr:ss=r9:s$=r2$:vv=l9:v$=l2$:goto5000
3682 if peek(r+rr)=119 then r1=0:goto 3800
3685 ifpeek(r+rr)<>32thenpoker,32:r1=0:gosub 920:goto3800
3690 poke r,32
3700 r=r+rr
3710 poke r,87
3720 goto3600
3722 :
3724 :
3730 if peek(r-1)=230 and rr<>-1 then poke r-1,32:r9=r9+1:r3=r-1:gosub 3930
3735 if peek(r+1)=230 and peek(r+41)=32then poker+1,32:r9=r9+1:r3=r+1:gosub3930
3740 if peek(r-1)=102 and rr<>-1 then poke r-1,32:r9=r9-1:r3=r-1:gosub 3900
3745 if peek(r+1)=102 and peek(r+41)=32then poker+1,32:r9=r9-1:r3=r+1:gosub3900
3750 if peek(r+rr)=230 then poker+rr,32:gosub 4000
3760 if peek(r+rr)=102 then poker+rr,32:gosub 3960
3800 :
3810 print"[153]punkte:";r9
3820 goto 1570
3900 if peek(r3-40)=102 then poke r3-40,32:r9=r9-1
3910 return
3920 :
3930 if peek(r3-40)=230 then poke r3-40,32:r9=r9+1
3940 return
3950 :
3960 r3=r+rr:gosub 3900:gosub 4130
3970 fori=1to50:poke s+1,int(255*rnd(1)):next:pokes+1,0
3980 return
3990 :
4000 r3=r+rr:gosub 3930:gosub 4140
4010 fori=1to255 step2:pokes+1,i:next:pokes+1,0
4020 return
4030 :
4040 :
4050 :
4070 :
4090 :
4100 if peek(r+rr+1)=102 and peek(r+rr+41)=32 then poke r+rr+1,32:r9=r9-1
4110 if peek(r+rr-1)=102 and peek(r+rr+39)=32 then poke r+rr-1,32:r9=r9-1
4120 return
4130 :
4140 if peek(r+rr+1)=230 and peek(r+rr+41)=32 then poke r+rr+1,32:r9=r9+1
4150 if peek(r+rr-1)=230 and peek(r+rr+39)=32 then poke r+rr-1,32:r9=r9+1
4160 return
4170 :
4180 :
4190 :
4200 :
4210 :
4990 rem ******** spielende *******
5000 for ii=1to4
5010 for i=1to19
5020 poke s+1,s(i)
5030 for h=1to40:next
5040 next i
5050 next ii
5055 poke s+1,0
5060 print"[147][155]";:poke v+33,11:poke 32,0
5061 print" ";
5062 print" pm video games ";
5063 print" presents : ";
5064 print" [198][198][198][198][198][198][198][198][198][198][198][198][198][198] ";
5065 print" burgenschlacht ";
5066 print" [197][197][197][197][197][197][197][197][197][197][197][197][197][197] ";
5080 print"[146] der spieler ";left$(s$,11)
5085 print" hat gewonnen !"
5090 print" er hat";ss
5095 print" punkte erreicht."
5100 if ss<=q then 5130
5110 print" damit hat ";left$(s$,11)
5115 print" den rekord von"
5120 print"";q;"punkten gebrochen !!!":q=ss:goto 5140
5130 print" der rekord ist"q"punkte."
5140 print" der verlierer "v$" hat"vv"
5150 [153]" punkte erreicht."
5160 [153]" noch ein spiel (j/n) ?"
5170 [161] a$
5180 [139] a$[178]"j" [167] 5200
5190 [139] a$[178]"n" [167] [151]v[170]32,14:[151]v[170]33,6:[151]s[170]4,0:[153]"loadcont":[128]
5195 [137] 5170
5200 [153]"load":[129]i[178]0[164]25:[153]"verify ":[130]
5210 [151] v[170]33,14:[141] 1100:[137] 800