Samurai
Samurai ist ein Strategiespiel für zwei Personen. Gespielt wird auf einem acht mal acht Felder großem Spielplan. Jeder Spieler besitzt 16 Spielfiguren, darunter der König. Ziel des Spieles ist es, den gegnerischen König zu schlagen oder so viele Spielsteine zu entfernen, daß außer dem König nur eine Figur übrig bleibt. Geschlagen werden Spielsteine, ähnlich wie bei Schach, wenn ein eigener Spielstein auf das Feld des Gegners gesetzt wird. Die Zahl auf jedem Spielstein zeigt an, wie weit der Stein ziehen muß. Nach jedem Zug ändert sich diese Zahl des bewegten Spielsteines. Bei dem König erscheinen nur die Eins und die Zwei, bei den übrigen Steinen Eins bis Vier.
Die Spielsteine dürfen nur waagerecht oder senkrecht bewegt werden. Dabei darf der Spieler einmal rechtwinklig abbiegen. Es dürfen keine Spielsteine übersprungen werden.
Der Computer überwacht die Züge. Sind diese falsch, erscheint auf dem Bildschirm »N. möglich«. Wird ein Spielstein geschlagen, so erscheint »F. geschlagen«. Rechts oben steht immer der Name des Spielers, der am Zug ist.
Man kann die Steine bewegen, indem man die Koordinaten der Anfangs- und Endposition der Steine eingibt. Eine weitere Möglichkeit ist, die Spielsteine durch den Joystick zu steuern.
Mit dem Joystick kann man die Spielsteine folgendermaßen bewegen: am Anfang erscheint ein Pfeil. Der Spieler mit dem roten Stein hat einen weißen Pfeil und umgekehrt. Diesen Pfeil kann man nun beliebig, mit Hilfe des Joysticks, über das Spielfeld bewegen. Hat man den Pfeil auf dem Spielstein, den man aufnehmen will, so muß man auf den Feuerknopf drücken. Nun kann man entsprechend der Zahl auf dem Spielstein fahren. Der Spielstein bleibt aber auf seiner Position. Wenn man den Stein nun absetzen will, so muß man wiederum auf den Feuerknopf drücken. Der Rahmen um den Pfeil verschwindet nun und der Stein wird dort hingesetzt. Wenn man den Stein mit Hilfe der Koordinaten bewegen will, muß man am Anfang (nach der Anleitung) ein »K« drücken. Der jeweilige Spieler muß dann während des Spieles die Zeile und Spalte des Anfangs- und Endpunktes des Spielsteines über Tastatur eingeben. Falls man keinen oder nur einen Joystick besitzt, kann man den fehlenden durch die Tastatur ersetzen.
Man muß folgende Zeilen ändern (Am Beispiel für Spieler 1, Joystickport 1):
22210 | GET A$ | |
22220 | IFA$= "Tastaturbelegung” ANDY1-24 > 50THENY1 =Y1-24: GOTO22230 | (nach oben) |
22221 | IFA$= "Tastaturbelegung” ANDX1-24 > 20THENX1 =X1-24: GOTO22230 | (nach links) |
22222 | IFA$= "Tastaturbelegung” ANDY1 + 24 < 230THENY1 =Y1 + 24:GOTO22230 | (nach unten) |
22223 | IFA$ = "Tastaturbelegung” ANDX1 + 24 < 210THENX1 = X1 + 24:GOTO22230 | (nach rechts) |
22224 | IFA$= "Tastaturbelegung” THENGOTO22300 | (absetzen, aufnehmen) |
22232 | GOTO22210 | |
22314 | QR=1:U1=6:POKEV+21,24 |
1 rem ------------------------- 2 rem samurai, 3 rem written by 4 rem thomas strigl 5 rem austr.25,7585 lichtenau 6 rem ------------------------- 11 : 12 : 13 dim fe(8,8) 15 si=54272:fl=si:fh=si+1:w=si+4:a=si+5:h=si+6:l=si+24 20 fa=2:z=1:s=1:sw=8:sr=8:x1=32:y1=61:x2=32:y2=229 30 poke53281,0:poke53280,0 40 gosub 9210 95 : 96 : 97 rem * spielfeld * 98 print"{gry2} 1 2 3 4 5 6 7 8 99 print" {rvon}{gry2} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght}" 100 print"1{rvon}{gry2} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght}" 101 print" {rvon}{gry2} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght}" 102 print" {rvon}{gry2}{rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} " 103 print"2{rvon}{gry2}{rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} " 104 print" {rvon}{gry2}{rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} " 106 print" {rvon}{gry2} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght}" 107 print"3{rvon}{gry2} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght}" 108 print" {rvon}{gry2} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght}" 109 print" {rvon}{gry2}{rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} " 110 print"4{rvon}{gry2}{rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} " 111 print" {rvon}{gry2}{rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} " 112 print" {rvon}{gry2} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght}" 113 print"5{rvon}{gry2} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght}" 114 print" {rvon}{gry2} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght}" 115 print" {rvon}{gry2}{rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} " 116 print"6{rvon}{gry2}{rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} " 117 print" {rvon}{gry2}{rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} " 118 print" {rvon}{gry2} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght}" 119 print"7{rvon}{gry2} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght}" 120 print" {rvon}{gry2} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght}" 121 print" {rvon}{gry2}{rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} " 122 print"8{rvon}{gry2}{rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} " 123 print" {rvon}{gry2}{rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {rght}{rght}{rght} {home}" 129 print"{home}" 131 printtab(26)" written by" 132 printtab(26)"thomas strigl" 133 printtab(25)"{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}" 198 : 199 : 200 rem *** grundstellung *** 201 b=1065:f=55337:y=1:v=12:c=9 209 forq=1to2 211 ify=2thenb=1905:f=56177 212 forx=1tov 220 pokeb,160:pokef,y 230 b=b+1:f=f+1:nextx 240 forx=1to3 250 pokeb,160:pokef,7 260 b=b+1:f=f+1 261 pokev+5,61 265 nextx 266 forx=1toc 267 pokeb,160:pokef,y 268 b=b+1:f=f+1:nextx 269 b=b+16:f=f+16 270 forx=1to24 271 pokeb,160:pokef,y 272 b=b+1:f=f+1:nextx 273 b=b+16:f=f+16 274 forx=1to24 275 pokeb,160:pokef,y 276 b=b+1:f=f+1:nextx 277 ify=1thena=4:za=3:b=1106:f=55378 278 ify=2thenb=1946:f=56218 280 forx=1toa 281 zu=int(4*rnd(1))+1 282 pokeb,zu+176:pokef,y 284 ify=1thenfe(1,x)=zu+10 285 ify=2thenfe(8,x)=zu 286 b=b+3:f=f+3:nextx 289 zk=int(2*rnd(1))+1 290 pokeb,zk+176:pokef,y 291 b=b+3:f=f+3 293 ify=1thenfe(1,5)=zk+30 294 ify=2thenfe(8,4)=zk+20 300 forx=1toza 305 zu=int(4*rnd(1))+1 306 pokeb,zu+176:pokef,y 307 ify=1thenfe(1,x+5)=zu+10 308 ify=2thenfe(8,x+4)=zu 310 b=b+3:f=f+3:nextx 350 a=a-1:za=za+1:y=2:c=12:v=9:nextq 360 ifqm$="s"thengosub22000 370 ifqm$="s"thengoto22100 398 : 399 : 400 rem *** ziehen *** 401 gosub20100 402 gosub800 420 poke214,11:poke211,25:sys58640 430 input"{lblu}von: zeile";z1 440 input"{lblu}{down}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}spalte";s1 450 input"{lblu}{down}{down}{down}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}nach:zeile";z2 460 input"{lblu}{down}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}{rght}spalte";s2 598 : 599 : 600 rem *** fig. setzen *** 601 goto7000 620 p=((z2*3-2)*40+s2*3-2+1024) 621 f=((z2*3-2)*40+s2*3-2+55296) 625 forx=1to3 630 pokep,160:pokef,fa 640 p=p+1:f=f+1 641 nextx 650 gosub3000 660 p=p+37:f=f+37 661 pokep,160:pokef,fa 662 p=p+1:f=f+1 670 pokep,zu+176:pokef,fa 672 p=p+1:f=f+1 680 pokep,160:pokef,fa 681 p=p+38:f=f+38 685 forx=1to3 690 pokep,160:pokef,fa 695 p=p+1:f=f+1 696 nextx 710 iffa=2thenfe(z2,s2)=zu 711 iffa=1thenfe(z2,s2)=zu+10 720 goto6500 721 : 722 : 800 rem * name * 810 poke214,8:poke211,25:sys58640 820 ifsp$=n1$thensp$=n2$:print"{yel}{rght}{rght}{rght}";sp$:return 830 ifsp$=n2$thensp$=n1$:print"{yel}{rght}{rght}{rght}";sp$:return 2205 pokev+21,60 2998 : 2999 : 3000 rem * zufallszahl * 3005 zu=int(4*rnd(1))+1 3010 return 3998 : 3999 : 4000 rem *** koenig *** 4010 p=((z2*3-2)*40+s2*3-2+1024) 4020 f=((z2*3-2)*40+s2*3-2+55296) 4030 forx=1to3 4040 pokep,160:pokef,7 4050 p=p+1:f=f+1 4060 nextx 4070 gosub5000 4080 p=p+37:f=f+37 4090 pokep,160:pokef,fa 4100 p=p+1:f=f+1 4110 pokep,zk+176:pokef,fa 4120 p=p+1:f=f+1 4130 pokep,160:pokef,fa 4140 p=p+38:f=f+38 4150 forx=1to3 4160 pokep,160:pokef,fa 4170 p=p+1:f=f+1 4180 nextx 4200 iffa=2thenfe(z2,s2)=zk+20 4210 iffa=1thenfe(z2,s2)=zk+30 4220 goto6500 4998 : 4999 : 5000 rem *** zufall k. *** 5010 zk=int(2*rnd(1))+1 5020 return 5998 : 5999 : 6500 rem *** feld loeschen *** 6505 r=z1+s1:fa=0 6510 ifr=2orr=4orr=6orr=8orr=10thenfa=12 6520 ifr=12orr=14orr=16orr=18thenfa=12 6530 p=((z1*3-2)*40+s1*3-2+1024) 6540 f=((z1*3-2)*40+s1*3-2+55296) 6545 forq=1to3 6550 forx=1to3 6551 pokep,160:pokef,fa 6552 p=p+1:f=f+1:nextx 6553 p=p+37:f=f+37:nextq 6554 fe(z1,s1)=0 6555 ifsw=2orsr=2thengoto9100 6560 goto8000 6998 : 6999 : 7000 rem *** zug richtig? *** 7001 goto9000 7010 iffe(z1,s1)<10thenfa=2 7020 iffe(z1,s1)>10thenfa=1 7030 iffe(z1,s1)>20thenfa=2 7040 iffe(z1,s1)>30thenfa=1 7041 iffa=1andsp$=n2$thengoto8100 7042 iffa=2andsp$=n1$thengoto8100 7050 iffe(z2,s2)=0thengoto7200 7060 iffe(z2,s2)<10thensa=2 7065 iffe(z2,s2)>10thensa=1 7070 iffe(z2,s2)>20thensa=51 7075 iffe(z2,s2)>30thensa=52 7076 iffa=1andsa=1thengoto8100 7077 iffa=1andsa=52thengoto8100 7078 iffa=2andsa=51thengoto8100 7079 iffa=2andsa=2thengoto8100 7085 ifsa=51andfa=1thengoto9100 7087 ifsa=52andfa=2thengoto9100 7088 iffe(z1,s1)>20andsa=1thensw=sw-1:goto4000 7089 iffe(z1,s1)>30andsa=2thensr=sr-1:goto4000 7090 iffa=2andsa=1thensw=sw-1:printtab(26)"{down}{rvon}{grn}f.geschlagen":gosub20000 7100 iffa=1andsa=2thensr=sr-1:printtab(26)"{down}{rvon}{grn}f.geschlagen":gosub20000 7200 iffe(z1,s1)>20thengoto4000 7210 goto620 7998 : 7999 : 8000 rem * loeschen * 8009 print"{home}{down}{down}{down}{down}" 8010 fori=1to19 8011 printtab(25)" " 8012 next 8030 ifsx=1thensx=0:poke214,8:poke211,25:sys58640:print"{yel}{rght}{rght}{rght}";sp$:goto8033 8031 ifqm$="s"thengoto22100 8032 goto400 8033 ifqm$="s"thengoto22200 8034 goto420 8098 : 8099 : 8100 rem * n.moeglich * 8110 printtab(26)"{down}{rvon}{grn}n.moeglich" 8120 gosub20000 8130 sx=1:goto8000 8998 : 8999 : 9000 rem * zahl * 9001 ifs2>8orz2>8thengoto8100 9002 ifs1>8orz1>8thengoto8100 9010 ifz1<z2thenri=z2-z1 9011 ifz1>z2thenri=z1-z2 9012 ifs1<s2thenra=s2-s1 9013 ifs1>s2thenra=s1-s2 9014 ifz1=z2thenri=0 9015 ifs1=s2thenra=0 9024 iffe(z1,s1)<10thengoto9030 9025 iffe(z1,s1)<20thengoto9040 9026 iffe(z1,s1)<30thengoto9050 9027 iffe(z1,s1)<40thengoto9060 9030 rem stein rot 9031 ifri+ra<>fe(z1,s1)thengoto8100 9032 goto10000 9040 rem stein weiss 9041 ifri+ra<>fe(z1,s1)-10thengoto8100 9042 goto10000 9050 rem koenig rot 9051 ifri+ra<>fe(z1,s1)-20thengoto8100 9052 goto10000 9060 rem koenig weiss 9061 ifri+ra<>fe(z1,s1)-30thengoto8100 9062 goto10000 9098 : 9099 : 9100 rem * gewonnen * 9101 pokev+21,0 9105 print"{clr}" 9110 print"{down}{down}{rght}{rght}{rght}{rght}glueckwunsch !!!" 9111 print"{down}{down}{down}{down}{rght}{rght}{rght}{rght}";sp$;" hat gewonnen" 9112 gosub20000 9113 input"{rght}{rght}{rght}{rght}{down}{down}{down}noch ein spiel (j/n)";xy$ 9114 ifxy$="n"thenend 9115 ifxy$="j"thenclr:goto1 9116 : 9117 : 9118 rem *** anleitung *** 9119 poke56322,255 9210 printchr$(14)"{clr} 9211 print"{yel} {rvon} S A M U R A I {rvof},written by Thomas" 9212 print" Strigl 9213 print"{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}{CBM-@}" 9398 : 9399 : 9400 print"{down}{down}{down}{yel} Ziel des{$a0}Spiels: 9401 print" 9402 print"{grn} Bei Samurai geht es darum ,die Haupt- 9403 print" figur des Gegenspielers,seinen Koenig, 9404 print" zu besiegen oder seine Spielsteine zu 9405 print" schlagen, dass nur noch der Koenig und 9406 print" ein weiterer Stein uebrigbleiben. 9407 print"{orng} Die Zahl auf jedem Spielstein gibt 9408 print" an,wie weit der Stein ziehen muss. 9409 print" Das Besondere ist, dass sich die Zahl 9410 print" bei jedem Zug aendert.Man muss deshalb 9411 print" Glueck und Ueberraschungen in seine 9412 print" Strategie einbeziehen ! 9420 print"{yel}{down} >>>> taste <<<< 9422 geta$:ifa$=""thengoto9422 9450 print"{clr}{lgrn}{down}{down}{down} Wie die Spielsteine gezogen werden: 9451 print" 9452 print"{lblu} Die Zahl, die im Spielstein sichtbar 9453 print" ist, zeigt an, wie viele Felder weit 9454 print" der Stein ziehen muss. Beim Koenig 9456 print" erscheinen nur die Zahlen 1 und 2 , 9457 print" bei den uebrigen Steinen die Zahlen 9458 print" 1 bis 4. 9459 print" Die Spielsteine duerfen nur 9460 print" waagrecht und senkrecht gezogen werden" 9461 print" werden, nicht schraeg. 9462 print" Bei jedem zug darf man nur einmal 9463 print" rechtwinklig abbiegen. 9464 print" Es duerfen keine Spielsteine 9465 print" uebersprungen werden !!!!!!. Spieler 1 9466 print" faengt mit weiss an. 9468 print"{down} viel Spass !!! 9470 input"{down}{down} name spieler 1";n1$ 9471 input" name spieler 2";n2$ 9472 sp$=n2$ 9473 print"{clr}" 9474 print:print:print 9475 print"{yel} Halt !!!! ":print 9476 print"{yel} Es gibt 2 Moeglichkeiten um " 9477 print" die Figuren zu bewegen.":print:print 9478 print" k - durch Eingabe von Koordinaten" 9479 print 9480 print" s - durch Bewegen u. Steuern ueber" 9481 print" Joystick" 9482 print:print:print 9483 input" Buchstabe";qm$ 9980 printchr$(142)"{clr}":return 9981 : 9982 : 10000 rem * fig. uebersprungen? * 10001 ifz1=z2thengoto10088 10002 ifs1=s2thengoto10094 10010 ifz1>z2thengoto10050 10020 ifz2>z1thengoto10070 10050 : 10051 fori=z1-1toz2step-1 10052 iffe(i,s1)<>0thengoto10059 10053 next 10054 fori=s1tos2-1 10055 ifs1>s2thenfori=s2+1tos1 10056 iffe(z2,i)<>0thengoto10059 10057 next:goto7010 10059 fori=s1+1tos2 10060 ifs1>s2thenfori=s1-1tos2step-1 10061 iffe(z1,i)<>0thengoto8100 10062 next 10063 fori=z2+1toz1 10064 iffe(i,s2)<>0thengoto8100 10065 next:goto7010 10070 : 10071 fori=z1+1toz2 10072 iffe(i,s1)<>0thengoto10079 10073 next 10074 fori=s2+1tos1 10075 ifs1<s2thenfori=s1+1tos2-1 10076 iffe(z2,i)<>0thengoto10079 10077 next:goto7010 10079 fori=s2tos1-1 10080 ifs1<s2thenfori=s1+1tos2 10081 iffe(z1,i)<>0thengoto8100 10082 next 10083 fori=z1toz2-1 10084 iffe(i,s2)<>0thengoto8100 10085 : 10088 ifs1-s2=1thengoto7010 10089 ifs2-s1=1thengoto7010 10090 fori=s1+1tos2-1 10091 ifs1>s2thenfori=s1-1tos2+1step-1 10092 iffe(z1,i)<>0thengoto8100 10093 next:goto7010 10094 ifz1-z2=1thengoto7010 10095 ifz2-z1=1thengoto7010 10096 fori=z1+1toz2-1 10097 ifz1>z2thenfori=z1-1toz2+1step-1 10098 iffe(i,s1)<>0thengoto8100 10099 next:goto7010 10100 : 10101 : 20000 rem *** toene *** 20010 pokel,15 20020 pokea,16+9 20040 pokeh,4*16+4 20041 forq=1to5 20050 pokefh,29:pokefl,69 20060 pokew,33 20070 fort=1to40:nextt 20071 pokefh,17:pokefl,103 20072 pokew,33 20073 fort=1to40:nextt 20074 nextq 20080 pokew,0:pokea,0:pokeh,0 20082 return 20100 : 20110 pokel,15 20120 pokea,16+9 20140 pokeh,4*16+4 20150 pokefh,29:pokefl,69 20160 pokew,33 20170 fori=1to500:next 20180 pokew,0:pokea,0:pokeh,0 20190 return 20998 : 20999 : 22000 rem ** daten f. sprites ** 22001 : 22002 sp$=n2$ 22004 v=53248 22005 pokev+21,60 22006 poke 2042,13:poke2043,14 22007 poke 2044,13:poke2045,14 22009 : 22010 rem sprite 2 22012 forn=0to62:readq:poke832+n,q:next 22014 data0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 22015 data0,0,0,0,0,0,0,0,0,0,0,0 22016 data0,0,0,0,0,0,0,0,0,0,255,0 22017 data1,255,128,3,255,192,7,255,224 22018 data15,255,240,31,255,248 22019 data63,255,252,127,255,254,255,255,255 22020 pokev+39+5,7 22021 : 22050 rem sprite 3 22051 forn=0to62:readq:poke896+n,q:next 22052 data255,255,255,128,0,1,128,0,1,128,0,1,128,0,1 22053 data128,0,1,128,0,1,128,0,1,128,0,1 22054 data128,0,1,128,0,1,128,0,1,128,255,1 22055 data129,255,129,131,255,193,135,255,225 22056 data143,255,241,159,255,249 22057 data191,255,253,255,255,255,255,255,255 22058 pokev+4,32:pokev+5,61 22059 pokev+8,32:pokev+9,230 22060 pokev+41,2:pokev+42,2:pokev+43,1:pokev+44,1 22070 return 22071 : 22072 : 22100 rem *** sprites bewegen *** 22101 gosub800 22200 gosub20100:ifsp$=n2$thengoto22400 22201 rem ** spieler 1 ** 22202 u1=4:qr=0 22210 j=peek(56321) 22220 if(jand1)=0andy1-24>50theny1=y1-24:goto22230 22221 if(jand4)=0andx1-24>20thenx1=x1-24:goto22230 22222 if(jand2)=0andy1+24<230theny1=y1+24:goto22230 22223 if(jand8)=0andx1+24<210thenx1=x1+24:goto22230 22224 if(jand16)=0thengoto22300 22225 goto22210 22230 pokev+u1,x1:pokev+u1+1,y1 22231 fori=1to80:nexti:goto22210 22300 ifqr<>0thengoto22350 22310 z1=((y1-61)/24)+1 22312 s1=((x1-32)/24)+1 22313 iffe(z1,s1)=0thengoto22210 22314 qr=1:u1=6:pokev+21,24:fori=1to160:next 22315 pokev+u1,x1:pokev+u1+1,y1 22316 goto 22210 22350 z2=((y1-61)/24)+1 22352 s2=((x1-32)/24)+1 22354 u1=4:pokev+21,20:pokev+u1,x1:pokev+u1+1,y1 22356 goto600 22357 : 22400 rem ** spieler 2 ** 22402 u2=8:qr=0 22403 poke56322,255 22410 j=peek(56320) 22420 if(jand1)=0andy2-24>50theny2=y2-24:goto22500 22421 if(jand4)=0andx2-24>20thenx2=x2-24:goto22500 22422 if(jand2)=0andy2+24<230theny2=y2+24:goto22500 22423 if(jand8)=0andx2+24<210thenx2=x2+24:goto22500 22424 if(jand16)=0thengoto22520 22425 goto22410 22500 pokev+u2,x2:pokev+u2+1,y2 22510 i=0:fori=1to80:nexti:goto22410 22520 ifqr<>0thengoto22600 22525 z1=((y2-61)/24)+1 22530 s1=((x2-32)/24)+1 22531 iffe(z1,s1)=0thengoto22410 22535 qr=1:u2=10:pokev+21,36:fori=1to160:next 22536 pokev+u2,x2:pokev+u2+1,y2 22537 goto 22410 22600 z2=((y2-61)/24)+1 22601 s2=((x2-32)/24)+1 22602 u2=8:pokev+21,20:pokev+u2,x2:pokev+u2+1,y2 22603 goto600