home *** CD-ROM | disk | FTP | other *** search
/ Tiger Disk 26 / Tiger_Disk_026_19xx_Tiger-Crew-Disk_de_Side_A.d64 / gam_slf (.txt) < prev    next >
Commodore BASIC  |  2023-02-26  |  8KB  |  262 lines

  1. 0 rem nicht vergessen:                                   aendern nicht erlaubt!(NULL)
  2. 1 c1%=1:c2%=15:c3%=12:c4%=11:yt$="taste f>r weiter.":poke53280,6
  3. 2 m=int(rnd(1)*ti):m=1:dimk$(2500):dimr(26):dd$="data":goto8
  4. 3 ifz%=1thenz%=.:goto9
  5. 4 print"[147]";
  6. 5 print"[155]----------------------------------------";
  7. 6 print"   bitte legen sie die datendisk ein."
  8. 7 print"[155]----------------------------------------[145][145]"spc(15);:gosub257:gosub254
  9. 8 gosub259:ifds$<>"00"then3
  10. 9 open1,peek(1023),2,"gebiete,s,r"
  11. 10 fora=1to5:input#1,wi$(a):input#1,at$(a):nexta:close1
  12. 11 forow=1to5:iflen(wi$(ow))>len(wi$(mn))thenmn=ow
  13. 12 nextow
  14. 13 fori=1to5:iflen(wi$(i))+len(at$(i))=len(wi$(mn))+len(at$(mn))thennexti
  15. 14 fora=len(wi$(i))+len(at$(i))tolen(wi$(mn))+len(at$(mn))-1:pl$(i)=pl$(i)+"."
  16. 15 nexta:ifi<5thennexti
  17. 16 print"[147][151]--------[183][146][218][151]---[153]stadt[155]-[129]land[155]-flu#[151]---[173][146][151]--------[152]";
  18. 17 print"--------z[218][146][152]----------------------[146][152]--------";:gosub257
  19. 18 printspc(13)"[155]spieloptionen"
  20. 19 printspc(13)"[170][170][170][170][170][170][170][170][170][170][170][170][170]"
  21. 20 print"[129]wie viele spieler (2-8)?  [157]";
  22. 21 geta$:ul=1:lo=50:hi=56:gosub232
  23. 22 printa$:a=val(wm$):gosub257
  24. 23 fori=1toa:gosub257
  25. 24 print:print"[158]name spieler"i"? ";:gosub245
  26. 25 ul=17:lo=65:hi=90:e%=1:sf(1)=60:sf(2)=62:sf(3)=64:slf(4)=35:gosub232
  27. 26 forw=1to4:sf(i)=.:nextw:e%=.
  28. 27 forw=1toa:ifwm$=n$(w)thenprint"[145]";:goto24
  29. 28 nextw:n$(i)=wm$:nexti
  30. 29 print:print"wie viele runden (anz.spieler-26)?   [157][157]";
  31. 30 geta$:ul=2:lo=48:hi=57:gosub232
  32. 31 ifval(wm$)<aorval(wm$)>26thenprint"[145][145][145]";:goto29
  33. 32 r=val(wm$):gosub257
  34. 33 print:print"[159]alles richtig (j/n)? ";
  35. 34 geta$:ifa$="n"thenfori=1toa:n$(i)="":nexti:goto16
  36. 35 ifa$<>"j"thengosub231:goto34
  37. 36 print"ja.":gosub254
  38. 37 forru=1tor:gosub257:gw=int(rnd(1)*26)+64:pk=pk+1:ifpk>athenpk=1
  39. 38 print"[147]"spc(15)"[144]runde"ru
  40. 39 printspc(15)"-------";:ifru>9thenprint"-";
  41. 40 cs%=11:gosub250:cs%=12:gosub250:cs%=.:gosub254
  42. 41 print"[147]";:z=int((39-len(n$(pk))))/2-1:fori=1toz:print" ";:nexti
  43. 42 printn$(pk);"!":gw=int(rnd(1)*26)+65:tc=.
  44. 43 print""spc(13)" stoppen...";:poke198,.
  45. 44 gw=gw+1:ifgw=91thengw=65
  46. 45 geta$:ifa$<>""then47
  47. 46 gosub231:goto44
  48. 47 fortt=1tor:ifgw=r(tt)thenprint:printspc(9)"[145] "chr$(gw);:tc=1
  49. 48 iftc=1thentc=.:print" war schon einmal![153]":gosub258:gosub254:goto41
  50. 49 nexttt:r(ru)=gw
  51. 50 forx=1toa:gosub257
  52. 51 print"[147]";:z=int((31-len(n$(x))))/2-1:printspc(z);
  53. 52 print""n$(x)" ist dran!":printspc(z);
  54. 53 fori=1tolen(n$(x)):print"-";:nexti:print"----------"
  55. 54 gosub254:gosub257:fori=1to500:nexti
  56. 55 print"[147]"n$(x)"!"" [153]es wird mit "chr$(gw):print"[153]gespielt.":e%=1:ul=18
  57. 56 lo=65:hi=90:lk=45:sf(1)=35:sf(2)=60:sf(3)=62:sf(4)=64:ol=48:ih=57
  58. 57 forop=1to5
  59. 58 print:print"[155]"at$(op)" "wi$(op)"[154]"pl$(op)"[155]? ";:gosub245
  60. 59 gosub232:ifleft$(wm$,1)<>chr$(gw)thentc=1
  61. 60 iftc=1thentc=.:ifwm$<>"-"thenprint"[145][145]";:goto58
  62. 61 ifop=1thenv$(x)=wm$
  63. 62 ifop=2thenw$(x)=wm$
  64. 63 ifop=3thenx$(x)=wm$
  65. 64 ifop=4theny$(x)=wm$
  66. 65 ifop=5thenz$(x)=wm$
  67. 66 nextop:gosub258:nextx
  68. 67 forx=1toa:ifx<>1thengosub254
  69. 68 print"[147][144]";n$(x);":":fori=1tolen(n$(x))+1:print"[170]";:nexti:print""
  70. 69 gosub253:gosub257
  71. 70 forkl=1to5:forbr=1toij:k$(br)="":nextbr
  72. 71 ifkl=1thenr$=v$(x):d$(1)=wi$(1)+"[154]"+pl$(1)
  73. 72 ifkl=2thenr$=w$(x):d$(2)=wi$(2)+"[154]"+pl$(2)
  74. 73 ifkl=3thenr$=x$(x):d$(3)=wi$(3)+"[154]"+pl$(3)
  75. 74 ifkl=4thenr$=y$(x):d$(4)=wi$(4)+"[154]"+pl$(4)
  76. 75 ifkl=5thenr$=z$(x):d$(5)=wi$(5)+"[154]"+pl$(5)
  77. 76 print"[155]"d$(kl)"[155]: "r$
  78. 77 ifr$="-"thenprint"[150]keine punkte!":onklgosub96,97,98,99,100:nextkl,x:goto106
  79. 78 u=.:u$=" "+right$(str$(kl),1)+chr$(gw)
  80. 79 open1,peek(1023),2,u$+",s,r"
  81. 80 u=u+1:input#1,k$(u)
  82. 81 ifk$(u)="*"thenk$(u)=r$:ij=u:goto84
  83. 82 ifr$=k$(u)thenij=u:close1:print"gefunden!":nextkl,x:goto106
  84. 83 goto80
  85. 84 close1:print"[153]richtig? (j/n)"spc(19);
  86. 85 geta$:ifa$="n"thenprint"nein.":onklgosub101,102,103,104,105:nextkl,x:goto106
  87. 86 ifa$="j"thenprint"ja.":goto88
  88. 87 gosub231:goto85
  89. 88 print"[158]ist die mehrheit einverstanden?  ";
  90. 89 geta$:ifa$="j"thenprint"ja.":goto92
  91. 90 ifa$="n"thenprint"nein.":onklgosub101,102,103,104,105:nextkl,x:goto106
  92. 91 gosub231:goto89
  93. 92 open1,peek(1023),15,"s:"+u$:close1:open1,8,2,u$+",s,w"
  94. 93 foru=1to255:ifk$(u)<>""thenprint#1,k$(u):nextu
  95. 94 print#1,"*":close1
  96. 95 nextkl:gosub257:nextx:goto106
  97. 96 v(x)=.:v$(x)="-":return
  98. 97 w(x)=.:w$(x)="-":return
  99. 98 x(x)=.:x$(x)="-":return
  100. 99 y(x)=.:y$(x)="-":return
  101. 100 z(x)=.:z$(x)="-":return
  102. 101 v(x)=-20:v$(x)="-ung>ltig-":return
  103. 102 w(x)=-20:w$(x)="-ung>ltig-":return
  104. 103 x(x)=-20:x$(x)="-ung>ltig-":return
  105. 104 y(x)=-20:y$(x)="-ung>ltig-":return
  106. 105 z(x)=-20:z$(x)="-ung>ltig-":return
  107. 106 gosub254:print"[147][144]bitte warten, ich rechne die punkte aus!"
  108. 107 cs%=11:gosub250:cs%=.
  109. 108 forx=1toa:foru=1to5
  110. 109 ifu=1thenforbi=1toa:r$(bi)=v$(bi):nextbi
  111. 110 ifu=2thenforbi=1toa:r$(bi)=w$(bi):nextbi
  112. 111 ifu=3thenforbi=1toa:r$(bi)=x$(bi):nextbi
  113. 112 ifu=4thenforbi=1toa:r$(bi)=y$(bi):nextbi
  114. 113 ifu=5thenforbi=1toa:r$(bi)=z$(bi):nextbi
  115. 114 form=1toa
  116. 115 ifm=xthennextm,u,x:goto124
  117. 116 ifleft$(r$(x),1)="-"thennextu,x:goto124
  118. 117 ifr$(x)=r$(m)thenonugosub119,120,121,122,123:nextu,x:goto124
  119. 118 nextm,u,x:goto124
  120. 119 v(x)=5:return
  121. 120 w(x)=5:return
  122. 121 x(x)=5:return
  123. 122 y(x)=5:return
  124. 123 z(x)=5:return
  125. 124 forx=1toa:foru=1to5
  126. 125 ifu=1thenforbi=1toa:r$(bi)=v$(bi):nextbi
  127. 126 ifu=2thenforbi=1toa:r$(bi)=w$(bi):nextbi
  128. 127 ifu=3thenforbi=1toa:r$(bi)=x$(bi):nextbi
  129. 128 ifu=4thenforbi=1toa:r$(bi)=y$(bi):nextbi
  130. 129 ifu=5thenforbi=1toa:r$(bi)=z$(bi):nextbi
  131. 130 ifleft$(r$(x),1)="-"thennextu,x:goto141
  132. 131 z=.:fori=1toa
  133. 132 ifr$(i)="-"thenz=z+1
  134. 133 nexti
  135. 134 ifz=a-1thenonugosub136,137,138,139,140
  136. 135 nextu,x:goto141
  137. 136 v(x)=20:return
  138. 137 w(x)=20:return
  139. 138 x(x)=20:return
  140. 139 y(x)=20:return
  141. 140 z(x)=20:return
  142. 141 forx=1toa:foru=1to5
  143. 142 ifu=1thenr$(x)=v$(x):li(x)=v(x)
  144. 143 ifu=2thenr$(x)=w$(x):li(x)=w(x)
  145. 144 ifu=3thenr$(x)=x$(x):li(x)=x(x)
  146. 145 ifu=4thenr$(x)=y$(x):li(x)=y(x)
  147. 146 ifu=5thenr$(x)=z$(x):li(x)=z(x)
  148. 147 ifleft$(r$(x),1)<>"-"andli(x)=.thentc=1
  149. 148 iftc=1thentc=.:onugosub150,151,152,153,154:nextu,x:goto155
  150. 149 nextu,x:goto155
  151. 150 v(x)=10:return
  152. 151 w(x)=10:return
  153. 152 x(x)=10:return
  154. 153 y(x)=10:return
  155. 154 z(x)=10:return
  156. 155 fori=1toa
  157. 156 ifleft$(v$(i),1)="-"thend$=v$(i):v$(i)="[150]"+d$
  158. 157 ifleft$(w$(i),1)="-"thend$=w$(i):w$(i)="[150]"+d$
  159. 158 ifleft$(x$(i),1)="-"thend$=x$(i):x$(i)="[150]"+d$
  160. 159 ifleft$(y$(i),1)="-"thend$=y$(i):y$(i)="[150]"+d$
  161. 160 ifleft$(z$(i),1)="-"thend$=z$(i):z$(i)="[150]"+d$
  162. 161 nexti
  163. 162 gosub258:gosub254
  164. 163 forx=1toa
  165. 164 print"[147][144]gesamtauswertung:"
  166. 165 printspc(11)"-----------------[153]"
  167. 166 printn$(x);":"
  168. 167 fori=1tolen(n$(x)):print"[170]";:nexti:print"[170]"
  169. 168 print"[158]"d$(1)": "v$(x):printspc(len(wi$(mn))+2)"[155]punkte: [152]"v(x)
  170. 169 print"[158]"d$(2)": "w$(x):printspc(len(wi$(mn))+2)"[155]punkte: [152]"w(x)
  171. 170 print"[158]"d$(3)": "x$(x):printspc(len(wi$(mn))+2)"[155]punkte: [152]"x(x)
  172. 171 print"[158]"d$(4)": "y$(x):printspc(len(wi$(mn))+2)"[155]punkte: [152]"y(x)
  173. 172 print"[158]"d$(5)": "z$(x):printspc(len(wi$(mn))+2)"[155]punkte: [152]"z(x)
  174. 173 pr(x)=v(x)+w(x)+x(x)+y(x)+z(x)
  175. 174 print"[154][153]punkte f>r diese runde: "pr(x)
  176. 175 hp(x)=hp(x)+pr(x)
  177. 176 print"[159]gesamtpunktzahl: "hp(x)
  178. 177 gosub253:gosub254:nextx:goto178
  179. 178 foro=1to2:ifo=1thend$="rundenstand:"
  180. 179 ifo=2thend$="gesamtstand:"
  181. 180 ifo=2andru=rthend$="final-stand:"
  182. 181 print"[147][144]"d$:printspc(13)"------------[158]"
  183. 182 forx=1toa
  184. 183 ifo=1thenbj(x)=pr(x):bz(x)=x:nextx
  185. 184 ifo=2thenbj(x)=hp(x):bz(x)=x:nextx
  186. 185 foru=1toa:forx=1toa-1
  187. 186 ifbj(x)<bj(x+1)thenbj=bj(x+1):bj(x+1)=bj(x):bj(x)=bj:bz=bz(x+1):tc=1
  188. 187 iftc=1thentc=.:bz(x+1)=bz(x):bz(x)=bz
  189. 188 nextx,u
  190. 189 fori=1toa
  191. 190 print"[155]platz"i":"n$(bz(i)):print"[157][157][157][157][157][157][157][157][157][157][157][157][157][157][158]"bj(i)"[159]punkte"
  192. 191 nexti
  193. 192 gosub253:gosub254:nexto
  194. 193 bc=.:fori=1toa:v(i)=.:w(i)=.:x(i)=.:y(i)=.:z(i)=.:nexti,ru
  195. 194 fori=1toa:pr(i)=int(hp(i)/r):nexti
  196. 195 print"[147]"spc(14)"[216]w[146][216][217][215][214][214][146][217][216]w"
  197. 196 printspc(14)"[216][146] [216][216][216][216][216][216]"
  198. 197 printspc(14)"[213]w[146][216][216][216][216][216][146][213]w"
  199. 198 printspc(14)"[216][146] [216][216][216][216][216][216]"
  200. 199 printspc(14)"yw[146][215]y[217][146][214]v[217]yw"
  201. 200 forx=0to4:fori=55711+x*40to55720+x*40:pokei,1:nexti,x
  202. 201 open1,peek(1023),2,"bestenliste,s,r"
  203. 202 fori=1to10:input#1,na$(i),pu(i):nexti:close1
  204. 203 forx=1toa:print"[147][144]         die liste der besten:"
  205. 204 printspc(9)"---------------------":gosub253
  206. 205 fori=1to10:a$=right$(str$(i),2)
  207. 206 print"[151]     platz [152]"a$":[155]"na$(i)"[154]";
  208. 207 printleft$(".................",17-len(na$(i)));
  209. 208 printright$(" "+str$(pu(i)),7):nexti
  210. 209 ifoo=1thenreturn
  211. 210 print"[150]"n$(x)"'s punkte:[158]"pr(x)
  212. 211 ifpr(x)>pu(10)thenprint"[159]gratuliere, du bist in der highscore!!!"
  213. 212 ifpr(x)<=pu(10)thenprint"[159]kein eintrag f>r dich!!! schade.":goto218
  214. 213 fori=1to10:ifpr(x)<pu(i)thennexti
  215. 214 k=10
  216. 215 ifk=ithen217
  217. 216 pu(k)=pu(k-1):na$(k)=na$(k-1):k=k-1:goto215
  218. 217 pu(k)=pr(x):na$(k)=n$(x)
  219. 218 gosub254:nextx:fori=1to1000:nexti:oo=1:gosub203
  220. 219 open1,peek(1023),15,"s:bestenliste":close1
  221. 220 open1,peek(1023),2,"bestenliste,s,w"
  222. 221 fori=1to10:print#1,na$(i):print#1,pu(i):nexti:close1:gosub254
  223. 222 print"[147]   noch ein ([155]s)piel oder ([155]a)ufh<ren?"
  224. 223 geta$:ifa$<>"s"anda$<>"a"then223
  225. 224 ifa$="s"thenclr:z%=1:goto1
  226. 225 printspc(12)"wirklich (j/n)? ";
  227. 226 gosub231:geta$:ifa$<>"j"anda$<>"n"then226
  228. 227 ifa$="n"then222
  229. 228 poke646,peek(53281)
  230. 229 print"[147]new":print"sys64738";
  231. 230 poke631,13:poke632,13:poke198,2:end
  232. 231 tc=peek(646):print"[155] [157]";:print"[155] [146][157]";:poke646,tc:tc=.:return
  233. 232 wm$=""
  234. 233 geta$:gosub231:ifa$=""then233
  235. 234 ifwm$<>""anda$=""thenprint"";:wm$=left$(wm$,len(wm$)-1)
  236. 235 ifa$=chr$(32)ande%=1andlen(wm$)<ulthenprinta$;:wm$=wm$+a$:goto233
  237. 236 ifa$=chr$(lk)andwm$=""thenwm$="-":printwm$" ";:return
  238. 237 foriu=1to4
  239. 238 ifa$=chr$(sf(iu))andlen(wm$)<ulthenprinta$;:wm$=wm$+a$:goto233
  240. 239 nextiu
  241. 240 ifa$=chr$(13)andwm$<>""thenprint" ";:return
  242. 241 ifa$<chr$(lo)ora$>chr$(hi)theniu=1
  243. 242 ifiu=1thenifa$<chr$(ol)ora$>chr$(ih)then233
  244. 243 iflen(wm$)=ulthen233
  245. 244 wm$=wm$+a$:printa$;:goto233
  246. 245 print"                    [157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";:return
  247. 246 ds$="":open1,8,2,"id2,s,r"
  248. 247 fori=1to4:input#1,a$:ds$=ds$+a$:next:close1
  249. 248 ifds$<>dd$thentc=.:return
  250. 249 tc=1:return
  251. 250 fori=cs%*40tocs%*40+37:poke55295+i,c1%:poke55296+i,c2%:poke55297+i,c3%
  252. 251 poke55298+i,c4%:nexti:poke55295+i,c1%:poke55296+i,c1%
  253. 252 poke55297+i,c1%:return
  254. 253 cs%=.:gosub250:cs%=1:gosub250:cs%=.:return
  255. 254 fori=1to18
  256. 255 print""left$(yt$,i);:nexti:poke198,.
  257. 256 geta$:ifa$=""thencs%=24:gosub250:cs%=.:goto256
  258. 257 s=54272:pokes+24,15:pokes+1,110:pokes+6,9:pokes+4,17:pokes+4,16:return
  259. 258 gosub257:fori=1to720:nexti:gosub257:return
  260. 259 open1,peek(1023),2,"id2,s,r":close1:open1,peek(1023),15:get#1,a$:ds$=a$:get#1,a$
  261. 260 ds$=ds$+a$:close1:return
  262.