home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tiger Disk 53
/
Tiger_Disk_053_1998-08_Tiger-Crew-Disk_de_Side_C.d64
/
armbrust
(
.txt
)
next >
Wrap
Commodore BASIC
|
2023-02-26
|
4KB
|
143 lines
100 print"[147] armbrustschiessen"
105 geta$:ifa$=""goto105
110 dimz(37),f(37),z1(37),f1(37):poke650,64:poke53281,15:poke53280,2
115 a$(0)=" [213][219][201][157][157][157]":tm$(1)="000000":tm$(2)="000000"
120 a$(1)=" [157][157][157][157][213][219][201] [157][157][157][157]"
125 bi(0)=32:bi(1)=42:sf(0)=15:sf(1)=5:ss(1)=66:ss(0)=32
130 si=54272:fl=si:fh=si+1:tl=si+2:th=si+3:w=si+4:a=si+5:h=si+6:l=si+24
135 print"[147]wieviele spieler ( 1 oder 2 ) ?";
140 getsw$:ifsw$=""then140
145 sw=val(sw$):ifsw<1orsw>2then140
150 ifsw=1thenprint" einer"
155 ifsw=2thenprint" zwei"
160 gosub390:gosub510
165 gosub485
170 forrd=1to3:print"augenblick bitte !":gosub220
175 forsp=1tosw:p=0:k=1
180 gosub470:gosub600:ti$=tm$(sp):gosub270:tm$(sp)=ti$
185 gosub485
190 print"weiter >return< ?"
195 getw$:ifw$><chr$(13)then195
200 print"[147]";:next
205 next
210 goto640
215 :
220 forx=1to36:z1(x)=1:f1(x)=1:next
225 forx=1to10
230 y=int(rnd(1)*36+1):ifz1(y)=0then230
235 z1(y)=0:next
240 forx=1to36:ifz1(x)=0then265
245 y=int(rnd(1)*15+1)
250 ify=2ory=4ory=6ory=8ory=9ory=10ory=14then260
255 goto245
260 f1(x)=y
265 next:return
270 forx=1to19:print:next
275 k=abs(k-1):ifk=0thenaa=1:bb=36:cc=1
280 ifk=1thenaa=36:bb=1:cc=-1
285 :
290 forx=aatobbstepcc:print""a$(k);
295 fory=1tog:next
300 getx$:ifx$=""then315
305 gosub325
310 ifp=26thenreturn
315 next:printtab(x)a$(abs(k-1));
320 goto275
325 rem....schuss
330 si=54272:pokesi+24,15
335 pokesi,200:pokesi+1,90
340 pokesi+5,96:pokesi+4,17
345 :
350 print"[196][157][145][144]^";:pu=peek(211):su=su+1
355 fori=1to17:print"[157] [157][145]^";:fory=1to5:next:pokesi+1,90+y:next:print"[157] ";
360 pokesi+4,0:gosub430
365 poke198,0:print""
370 print"[144]"tab(17);rd;tab(23);su;tab(30)" [157][157][157][157]"pt
375 print"";:fori=1to19:print:next:printtab(x+k-1)a$(k);
380 :
385 return
390 si=54272:pokesi+24,15
395 pokesi,200:pokesi+1,60
400 pokesi+5,5:pokesi+6,0:pokesi+4,17
405 fory=1to200:next
410 fory=1to100:next
415 pokesi,200:pokesi+1,50
420 pokesi+5,6:pokesi+6,0:pokesi+4,17
425 pokesi+4,0:return
430 rem.....punkte rechnen
435 ifz(pu-2)=1then450
440 pt=pt-10
445 return
450 ifpu-2>34orpu-2<3thenpt=pt+100:goto460
455 pt=pt+20
460 p=p+1:z(pu-2)=0:gosub390
465 return
470 rem blumen pro spieler
475 forx=1to36:z(x)=z1(x):f(x)=f1(x):next
480 return
485 remzaehler fuer spieler 1 + 2
490 su(sp)=su(sp)+su:su=0
495 pt(sp)=pt(sp)+pt:pt=0
500 :
505 return
510 rem wagl der geschwindigkeit
515 print" ";:ifsw=1thenprint"[144]willst du";
520 ifsw=2thenprint"[144]wollt ihr";
525 printtab(15)"s[146]chnell"
530 printtab(15)"n[146]ormal"
535 printtab(15)"l[146]angsam [144]spielen ?"
540 print""tab(7)"anfangsbuchstaben eingeben. ";
545 getg$:ifg$=""then545
550 ifg$="s"theng=0:print"s"
555 ifg$="n"theng=50:print"n"
560 ifg$="l"theng=100:print"l"
565 ifg$="l"org$="n"org$="s"then575
570 goto545
575 print"[144] vorname eingeben u. >return< druecken":forn=1tosw
580 print" vorname von spieler";n;:inputn$(n)
585 iflen(n$(n))<3thenprint"[144]name zu kurz[145][145]":goto580
590 iflen(n$(n))>11thenprint"[144]name zu lang[145][145]":goto580
595 next:return
600 rem blumen setzen
605 print"[147]";:forx=1to36:poke55337+x,f(x):poke1065+x,bi(z(x))
610 poke55377+x,sf(z(x)):poke1105+x,ss(z(x))
615 next
620 forx=1to21:print:next:print" spieler[146] runde[146] schuss[146] punkte[146]"
625 print"[144] "n$(sp);tab(17);rd;tab(23);su;tab(30)" [157][157][157][157]"pt
630 print"";
635 return
640 print"[147] e r g e b n i s s e "
645 print""tab(19-len(n$(1)))n$(1);:ifsw=2thenprinttab(34-len(n$(2)))n$(2);
650 pt$(1)=str$(pt(1)):pt$(2)=str$(pt(2))
655 print"":print" punkte"tab(19-len(pt$(1)))pt$(1);
660 ifsw=2thenprinttab(34-len(pt$(2)))pt$(2);
665 su$(1)=str$(su(1)):su$(2)=str$(su(2))
670 print:print" schuss"tab(19-len(su$(1)))su$(1);
675 ifsw=2thenprinttab(34-len(su$(2)))su$(2);
680 print:print" zeit "tab(10)val(mid$(tm$(1),3,2))"min";
685 printval(right$(tm$(1),2))"sek";
690 ifsw<2thenprint:goto700
695 printtab(26)val(mid$(tm$(2),3,2))"min"val(right$(tm$(2),2))"sek"
700 ifsw=1then740
705 sg=1:ifpt(2)>pt(1)thensg=2
710 ifpt(1)=pt(2)andsu(2)<su(1)thensg=2
715 tt(1)=val(mid$(tm$(1),3,2))*60+val(right$(tm$(1),2))
720 tt(2)=val(mid$(tm$(2),3,2))*60+val(right$(tm$(2),2))
725 ifpt(1)=pt(2)andsu(2)=su(1)andtt(2)<tt(1)thensg=2
730 print" "n$(sg)" ist sieger."
735 :
740 print" noch ein spiel (j/n) ?"
745 geta$:ifa$=""then745
750 ifa$="j"thenrun
755 ifa$="n"then765
760 goto745
765 print"[147]vielen dank fuers spiel"
770 if sw=1thenprint"du warst wieder ";
775 ifsw=2thenprint"ihr wart wieder ";
780 n=int(rnd(x)*6+1)
785 nm$(1)="super":nm$(2)="klasse":nm$(3)="eine wucht"
790 nm$(4)="schnuckelig":nm$(5)="bombig":nm$(6)="ganz hervorragend"
795 printnm$(n):fora=1to5000:next
800 geta$:ifa$=""thengoto800
805 poke631,19:poke632,13:poke633,13:poke198,3:poke650,0:end