home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Publication 8
/
Publication_08_1996_High-Tech_de_Side_B.d64
/
pharao
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2023-02-26
|
9KB
|
253 lines
100 rem ******* tut-en amun ***********
110 rem *******************************
120 rem ******* wolke *****************
130 data 0,28,0,124,62,0,254,126,0,255,255,0,255,255,128,255,255,224,255,255,240
140 data 255,255,240,255,255,240,127,255,240,127,255,224
150 fori=0to32:readq:poke832+i,q:next
160 fori=33to62:pokei+832,0:next:v=53248:pokev+16,0:i=rnd(-ti)
170 poke2040,13:poke2041,13:pokev+39,1:pokev+40,1:pokev+29,2:pokev+21,0
180 rem ******* sonne ******************
190 data 0,016,0,0,16,0,16,16,0,8,144,136,4,145,16,2,90,32,9,126,64,6,255,144,3
200 data 255,224,1,255,128,255,255,254,1,255,128,1,255,96,2,127,16,4,124,128,0
210 data 170,64,1,41,32,2,72,16,4,8,0,0,8,0,0,8,0
220 fori=0to62:readq:poke704+i,q:next
230 poke2042,11:pokev+41,7
240 poke53280,0:poke53281,0:printchr$(14)
250 wk=40000+int(rnd(1)*20000):vw=700+int(rnd(1)*500):w2=19
260 rem ****** anfang ****************
270 print"[147][158] [196]er [208]harao [212][213][212]-[197][206][195][200] [193][205][207][206] gibt [201]hnen"
280 print" die ehrenvolle [193]ufgabe, der [197]rbauer"
290 print" seiner [208]yramide zu sein."
300 print" [197]r gibt [201]hnen 13 [202]ahre."
310 print" [211]ie erhalten die [208]rovinz [193][204]-[208][193][210][193][211][195][200][193]"
320 print" um [193]rbeiter zu besorgen"
330 print" [206]ehmen sie diese [197]hre an ? ";
340 poke204,0:poke198,0:wait198,1:geta$:ifa$<>"j"anda$<>"n"then340
350 poke204,1:ifa$="j"then380
360 print:print" [198]uer diese [198]rechheit werden [211]ie "
370 print" von [204]oewen zerrissen.[144]":end
380 p=100000:g=200:pg=0:ja=1:f=1500:ab=0:te=0:je=13
390 ko$="[178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][146]"
400 al$="[147][158] [193][204]-[208][193][210][193][211][195][200][193] [146] [202]ahr :"
410 printal$;ja:printko$
420 print" [197]inwohner : "p
430 print" [211]peicher : "g
440 print" [198]elder : "f
450 print" [215]ieviel [197]inwohner sollen zum"
460 input" [198]rondienst herangezogen werden";ab$:ab=val(ab$):ifab<0orab>pthen940
470 p=p-ab:print" [215]ieviel [211]peicher mit [203]orn bekommen die"
480 input" [193]rbeiter zugeteilt";ak$:ak=int(val(ak$)):ifak<0orak>gthen940
490 g=g-ak:ifak<(ab/vw)thenta=1:al=int(ak*vw):al=ab-al:ab=ab-al:is=is+al
500 print" [215]ieviel [211]peicher bekommen die"p
510 input" anderen [197]inwohner";ek$:ek=int(val(ek$)):ifek<0orek>gthen940
520 g=g-ek:ifek<(p/vw)thenet=1:el=int(ek*vw):el=p-el:p=p-el:is=is+el
530 print" [215]ieviel [198]elder sollen bestellt"
540 input" werden ";fb$:fb=int(val(fb$)):iffb<0orfb>fthen940
550 fori=1to500:next:printal$;ja:printko$
560 iffb>(g*25)thenfb=int(g*25):print"[211]ie koennen nur"fb" [198]elder bestellen.":u=1
570 ifint(fb*9)>pthenfb=int(p/9):print"[211]ie haben zu wenig [194]auern. [198]elder :"fb:u=1
580 ifu=1thenu=0:fori=1to4000:next
590 ifp=0orab=0then940
600 g=g-int(fb/25)
610 pg=int(50*rnd(1))/100
620 printal$;ja:printko$:print" [196]ie [197]rnte betrug in diesem [202]ahr"
630 printpg" [211]peicher pro [198]eld.":g=g+(pg*fb)
640 ifet=1thenet=0:print" [210]ebellion der [197]inwohner wegen [200]unger.":print" [197]inwohner :"p
650 ifta=1thenta=0:print" [210]ebellion der [193]rbeiter wegen [200]unger":print" [193]rbeiter :"ab
660 g=int(g):print" [211]ie haben nun"g" [211]peicher voll."
670 w=int(w2*rnd(1)+1)
680 fori=1to5000:next:printal$;ja:printko$
690 onwgosub980,1010,1050,1090,1130,1170,1210,1250,1300,1340,1720,1770,1820
700 w=w-13:ifw<1then720
710 onwgosub1880,1940,2000,2110,2220,2270
720 fori=1to9000:next:ifrnd(1)>.5andw<>w1thenw1=w:goto670
730 printal$;ja:printko$:g=int(g)
740 ifab<vw/2thenprint"[218]um [194]auen sind es zuwenig [193]rbeiter":goto810
750 print" [196]er [194]au der [208]yramide geht weiter ..."
760 fori=1to1500:next
770 ts=ts+18*(ab/wk+ak*300/ab)
780 ifts=>324thenen=1:ts=324
790 gosub2490
800 print"[147]"chr$(14)
810 iff<vw/2thenprint" [211]ie [210]uinieren alles ...":fori=1to400:next:goto940
820 printal$;ja:print" [202] a h r e s b e r i c h t":printko$
830 ifab+p<wk/1.5thenprint" [196]as [204]eiden der [194]ewohner ist gross.":uu=1
840 ifuu=1thenprint" [201]hre [194]evoelkerung ist zu klein ! : "
850 ifuu=1thenprint" [194]evoelkerung :"ab+p
860 ifuu=1thenprint" [201]hr [212]od ist sehr grausam ! ":goto1400
870 ja=ja+1:ifja=int(je/2)thenprint" [196]ie [200]aelfte der [218]eit ist um ..."
880 nw=int(vw*ts/2*rnd(1))+1:printnw"[197]inwohner wurden geboren..."
890 nt=int(vw*ts/2*rnd(1))+1:printnt"[197]inwohner starben ...":p=p+nw-nt
900 ifja>jethenprintal$;ja:printko$:print" [213]nfaehig eine [208]yramide zu bauen":goto940
910 is=is+nt:ie=ie+nw
920 print" [197]in neues [202]ahr bricht an ...."
930 p=p+ab:ab=0:fori=1to9000:next:goto410
940 rem ******* fehler ****************
950 poke214,20:print:print" [196]er [208]harao mag keine [198]ehler ..."
960 print" [196]eshalb wirst du hingerichtet ...":goto1400
970 rem ******* priester **************
980 kl=int(g*rnd(1))+1:print" [196]ie [208]riester des [212]otengottes [193][206][213][194][201][211]"
990 print" beschlagnahmen"kl"[211]peicher mit [203]orn."
1000 g=g-kl:n=2:gosub1590:return
1010 rem ******* felder weg ************
1020 kl=int(f/2*rnd(1))+1:print" [197]infallende [203]reuzritter rauben"
1030 printkl" [198]elder der [208]rovinz ..."
1040 f=f-kl:n=2:gosub1590:return
1050 rem ******* sondersteuer **********
1060 gi=int(100*rnd(1)):print" [197]ine [211]ondersteuer erbrachte"
1070 print""gi"[146] [211]peicher voll [203]orn ..."
1080 g=g+gi:n=1:gosub1590:return
1090 rem ****** geschenk **************
1100 gi=int(1000*rnd(1)):print" [196]er [208]harao belohnt gute [193]rbeit."
1110 print" [196]ehalb schenkt er"gi" [198]elder ..."
1120 f=f+gi:n=1:gosub1590:return
1130 rem ****** flutwelle *************
1140 kl=int(100*rnd(1)):print" [197]ine [198]lutwelle verwuestete"
1150 printkl"[198]elder unserer [208]rovinz ..."
1160 f=f-kl:n=2:gosub1590:return
1170 rem ****** einwanderung **********
1180 da=int(p*rnd(1))+1:print" [213]nsere [208]rovinz ist beliebt !"
1190 printda"[204]eute wanderten ein ..."
1200 p=p+da:n=2:gosub1590:return
1210 rem ****** sterben ***************
1220 we=int(p*rnd(1))+1:print" [196]urch eine [197]pedemie starben "
1230 print" leider"we"[204]eute."
1240 is=is+we:p=p-we:n=2:gosub1590:return
1250 rem ****** erdbeben **************
1260 ifts<10thenprint" [199]lueck gehabt !! ":return
1270 ei=int(ts*rnd(1))+1:print" [196]urch [197]rdbeben wurden"
1280 printei*199"[211]teinbloecke der [208]yramide zerstoert."
1290 ts=ts-ei:n=2:gosub1590:return
1300 rem ****** streik ****************
1310 tt=int(ab*rnd(1))+1:print" [201]hre [193]rbeiter streiken."
1320 print" [197]s kam zu blutigen [203]aempfen. [197]s starben"tt" [193]rbeiter"
1330 is=is+tt:ab=ab-tt:n=2:gosub1590:return
1340 rem ****** mordversuch ***********
1350 xx=int(100*rnd(1)):ifxx<40then1380
1360 print" [211]ie sind knapp einem [205]ordanschlag entkommen. [193]mon sei [196]ank"
1370 n=1:gosub1590:return
1380 print" [196]er [205]oerder war erfolgreich und hat [211]ie von hinten "
1390 print" getoetet. [196]as [214]olk trauert um [211]ie ! ":n=2:gosub1590
1400 rem ****** angabe ****************
1410 print"[158]":for t=1to9000:next:print"[147]":printko$
1420 print" [197]s starben"is"[204]eute."
1430 print" [197]s wanderten"ie" [204]eute ein."
1440 ifw=10then1470
1450 print" [205]oegen ihre [199]ebeine 1000 [202]ahre "
1460 print" im [211]ande vergraben sein ..."
1470 printko$:end
1480 rem ******* ende *****************
1490 print"[147][158]"al$;ja:printko$:print" [211]ie haben es wider [197]rwarten"
1500 print" geschaftt, die [208]yramide zu [197]rbauen."
1510 print" [201]hnen wird nun die ungeheuere [197]hre"
1520 print" zu [212]eil, mit [201]hrem [208]harao darin"
1530 print" begraben zu werden."
1540 print"[144]":end
1550 rem ******* positiv **************
1560 fort1=0to255step2:pokem,t1:next:return
1570 rem ******* negativ **************
1580 fort1=255to1step-4:pokem,t1:pokem,t1/1.5:next:return
1590 rem ******* ton ******************
1600 si=54272:m=si+8:pokesi+24,15:pokesi+7,0:pokesi+13,240:pokesi+12,0
1610 pokesi+9,125:pokesi+10,7:pokesi+11,65
1620 onngosub1550,1570
1630 pokem,0:return
1640 end
1650 rem ******* invers ***************
1660 fori=1024to1863:w1=peek(i)
1670 pokei,w1+128*sgn(128-w1)
1680 next:return
1690 printsk"[211]klaven als [193]rbeiter ..."
1700 printfe"[198]elder ..."
1710 printge"[211]peicher mit [199]etreide ..."
1720 rem ******* diebe ****************
1730 print" [196]iebe waren taetig !"
1740 we=int(g/2*rnd(1)+1)
1750 printwe"[203]ornspeicher wurden leergeraeumt."
1760 g=g-we:n=2:gosub1590:return
1770 rem ******* pharao stibt *********
1780 print" [196]er [208]harao wird bald sterben !"
1790 j1=int(rnd(1)*(je-ja)/2)+1
1800 print" [211]ie haben"j1"[202]ahre weniger [218]eit."
1810 je=je-j1:n=2:gosub1590:return
1820 rem ******* schatzraub ***********
1830 print" [211]ie haben wertvolle [211]chaetze geraubt !"
1840 j1=int(rnd(1)*(je-ja)/2)+1
1850 print" [196]a man [211]ie erwischt und verurteilt"
1860 print" hat, werden [211]ie"j1"[202]ahre eingesperrt."
1870 ja=ja+j1:n=2:gosub1590:return
1880 rem ******* baufehler ************
1890 print" [211]ie haben [194]aufehler begangen."
1900 we=int(rnd(1)*ts+1)
1910 print" [196]eshalb werden sie die letzten"
1920 printwe*199"[211]teinbloecke neu bauen muessen."
1930 ts=ts-we:n=2:gosub1590:return
1940 rem ******* erbschaft ************
1950 print" [201]hr [194]ruder ist gestorben. [211]ie erben von ihm ein [214]ermoegen."
1960 a1=int(rnd(1)*ab/2+1)
1970 printa1"[211]klaven koennen [211]ie nun kaufen,"
1980 print" um rascher bauen zu koennen."
1990 ts=ts+1:ab=ab+a1:n=1:gosub1590:return
2000 rem ******* schlacht + ***********
2010 sk=int(rnd(1)*ab/2):ab=ab+sk:ie=ie+sk
2020 f1=int(rnd(1)*vw):f=f+f1
2030 ge=int(rnd(1)*vw/3):g=g+ge
2040 print" [196]er [208]harao gewann[146] eine grosse [211]chlacht"
2050 print" gegen [206]ubien."
2060 print" [197]r erbeutete :"
2070 printsk"[211]klaven als [193]rbeiter ..."
2080 printf1"[198]elder ..."
2090 printge"[211]peicher konnten mit [203]orn gefuellt werden."
2100 n=1:gosub1590:return
2110 rem ******* schlacht - ***********
2120 sk=int(rnd(1)*p/2):p=p-sk:is=is+sk
2130 f1=int(rnd(1)*fb):f=f-f1
2140 ge=int(rnd(1)*g/3):g=g-ge
2150 print" [196]er [208]harao verlor[146] eine grosse [211]chlacht"
2160 print" gegen [206]ubien."
2170 print" [211]ein [194]esitz wurde vermindert um :"
2180 printsk"[197]inwohner ..."
2190 printf1"[198]elder ..."
2200 printge"[211]peicher mit korn ..."
2210 n=2:gosub1590:return
2220 rem ******* lebenselexier ********
2230 j1=int(rnd(1)*5)
2240 print" [196]er [208]harao hat von einem [205]agier ein [204]ebenselexier erhalten."
2250 print" [197]r kann[146] nun"j1"[202]ahre laenger leben !"
2260 je=je+j1:n=1:gosub1590:return
2270 rem ******* fischseuche *********
2280 print" [196]urch [205]achenschaften der [206]ubier ist"
2290 print" der [206]il verseucht."
2300 ge=int(rnd(1)*g/1.5)+1
2310 print" [196]amit die [197]inwohner nicht verhungern,"
2320 print" muessen [211]ie"ge"weitere [203]ornspeicher":print" ausgeben."
2330 print " [196]er [208]harao befiehlt es so !!"
2340 g=g-ge:n=2:gosub1590:return
2350 rem ******* bauwerk **************
2360 print"[147]":poke214,23:print:print" [144]das bauergebnis bis heute ..."
2370 y=1865:printchr$(142)
2380 fori=1864to1904+39:pokei,160:pokei+54272,13:next:i7=0
2390 fori=1to18:y=y+1
2400 fort=1to37-i*2:w3=160:pokem,0
2410 po=y-40*i+t:ift=1thenw3=233
2420 ift=37-i*2thenw3=223
2430 ifi=18thenw3=81
2440 pokepo,w3:pokepo+54272,0:pokem,10
2450 ifi7=>tsthent=40:i=20
2460 i7=i7+1:pokem,0:next:next
2470 pokev+5,60:pokev+4,80:pokev+21,4
2480 return
2490 rem ****** sprites ***************
2500 poke53280,14:poke53281,14:pokev+27,2:pokev,0:pokev+2,0
2510 gosub2350:xo=0:x1=0:y=80:pokev+21,7:pokev+3,y:pokev+1,y-25
2520 forx=1to360:x0=x:x1=x+20
2530 pokev+16,int(x0/255)+int(x1/255)*2
2540 ifx1>255thenx1=x1-255
2550 ifx0>255thenx0=x0-255
2560 pokev,x0:pokev+2,x1
2570 next:fori=1to400:next
2580 pokev+16,0:pokev+21,0:pokev+21,4
2590 ifen=1thengosub1650:gosub1650
2600 print"[147]":poke53280,0:poke53281,0:ifen=1thenprintchr$(14):goto1480
2610 pokev+21,0:return