home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er Special 3
/
64er_Magazin_Sonderheft_03_86-03_1986_Markt__Technik_de_Side_B.d64
/
hamurabi
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
11KB
|
317 lines
0 rem -----------------------------
1 rem -----------------------------
2 rem ---- ----
3 rem ---- dominik eisele ----
4 rem ---- ----
5 rem ---- alfred-kubin-str.13 ----
6 rem ---- ----
7 rem ---- 5090 leverkusen 1 ----
8 rem ---- ----
9 rem ---- west germany ----
10 rem ---- ----
11 rem ---- tel.0214/94695 ----
12 rem ---- ----
13 rem -----------------------------
14 rem -----------------------------
15 rem ^ rem-zeilen nicht abtippen ^
16 rem -----------------------------
17 print"[147][144]";:(NULL)0,11,6:(NULL)4,1,1:printchr$(8),chr$(142)
18 print" musik von "
20 print"[176][174][176][174][176][174] [176][174][176][174][176][174] gerald "
21 print"[221][173][189][173][189][221] [221][173][189][173][189][221] [204][186] hanisch "
22 print"[202][201] [213][203] [202][201] [213][203] [221][221] "
23 print" [221] [187][221] [221][172] [221] [221][221] "
24 print" [221] [190][221][176][174][176][174][176][174][176][174][221][188] [221] [206][205][221][221] [206][205] [206] "
25 print" [221] [173][189][173][189][173][189][173][189][173][189] [221][205] [206] [205][221] [206][205] [206] [205] [206] "
26 print"[206][205] [221] [187] [172] [221][221] [206] [205][206] [205] [221][182] [221] [206] "
27 print"[205][221] [190] [172] [213][201] [187] [188] [221][221][206] [205][221] [221][206] "
28 print" [221] [188] [203][202] [190] [171][203] [176][174][176][174][176][174][176][174][221][182] [221][176][174] "
29 print" [221] [221] [221][173][189][173][189][173][189][173][189] [173][189][221] "
30 print" [221] [213][201] [221] [221] [172] [172] [172] [172] [221] "
31 print" [221] [213][201][221][221][213][201] [221] [221] [213][201] [221] "
32 print" [173][192][192][192][192][177][177][177][177][177][177][192][192][192][192][189] [173][192][192][192][192][192][192][192][192][177][177][192][192][189] "
97 print"*dominik eisele* praesentiert :"
99 print"[149]+ +"
100 print" [166] [166] [166][166] [166][166][166][166][166] [166] [166] [166][166][166][166] [166][166] [166][166][166][166] [166][166] "
101 print" [166] [166] [166] [166] [166] [166] [166] [166] [166] [166] [166] [166] [166] [166][166] [166] [166][166] "
102 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] "
103 print" [166] [166] [166] [166] [166] [166] [166] [166] [166] [166] [166] [166] [166] [166][166] [166] [166][166] "
104 print" [166] [166] [166] [166] [166] [166] [166] [166][166][166][166] [166] [166] [166] [166] [166][166][166][166] [166][166] ";
105 print"+ +[146]";
106 restore 200
107 (NULL)8
108 (NULL)
109 read x,y
110 (NULL)1,x,y:(NULL)0:fort=1to5:nextt:(NULL)8
111 (NULL) (NULL) x=0:goto 850
200 data 810,25,810,25,810,50,822,25,822,25,822,50,870,25,870,25,870,25
201 data 870,12,810,112,798,25,798,25,798,50,784,25,784,25,784,50,770,25,770,25
202 data 770,25,770,12,770,37,810,25,834,18,854,6,864,18,881,6,897,25,897,12
203 data 897,63,881,25,881,12,881,63,870,25,870,25,870,25,870,12,810,112
204 data 864,25,864,25,881,25,881,25,897,25,897,12,870,38,870,25,897,11,897,11
205 data 897,11,897,11,881,25,881,25,864,25,810,12,864,62,1,1,0,0
850 getr$:ifr$="+" then (NULL)8:(NULL)1,810,20:goto 860
855 goto 850
860 ka=15000:aa=0:bg=23000:ew=int(257*rnd(1))+500:lb=10000:ja=1:mp=0:kk=0:gm=0
870 kr=int(10000*rnd(1))+60000:bj=0:mp=1:bb=0
871 print"[147]altes spiel laden ?"
872 print"(j/n)"
873 getd$:ifd$="j"then(NULL)8:goto 15000
876 ifd$="n" then (NULL)8:(NULL)1,810,20:goto890
877 goto 873
890 gosub 1000
900 goto 890
1000 (NULL) 4,1,7:(NULL)0,1,1:print"[147]"
1004 gosub 3000
1005 gosub 2000
1006 print"[147]"kr"[158]scheffel korn werden angeboten"
1007 print"[158]ernteertraege :"int(ee)"scheffel"
1008 printvk"[158]% eurer kornreserven sind verfault"
1009 gosub 3000
1010 bk=ew*9
1011 print"[192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]";
1012 print"[158]kornreserven (scheffel) --- [155]";int(ka)
1020 print"[158]benoetigtes korn --- [155]";int(bk)
1030 print"[158]kornpreis (taler) --- [155]";int(kp)
1040 print"[158]landpreis (taler) --- [155]";int(lp)
1050 print"[158]landbesitz (hektar) --- [155]";int(lb)
1060 print"[158]bargeld (taler) --- [155]";int(bg)
1070 print"[192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][153]";
1081 print"1 ----- korn kaufen ----- [207][183][183][183][183][183][183][183][183][183]";
1082 print"2 ----- korn verkaufen ----- [180]weiter "
1083 print"3 ----- land kaufen ----- [180]mit"chr$(130)" [151]space[153][146]"
1084 print"4 ----- land verkaufen ----- [204][175][175][175][175][175][175][175][175][175]";
1088 get a$:ifa$=" " then (NULL)8:(NULL)1,900,10:goto 9000
1089 ifa$="1" then (NULL)8:(NULL)1,100,10:goto 5000
1090 ifa$="2" then (NULL)8:(NULL)1,150,10:goto 6000
1091 ifa$="3" then (NULL)8:(NULL)1,250,10:goto 7000
1092 ifa$="4" then (NULL)8:(NULL)1,340,10:goto 8000
1093 goto 1088
1100 return
2000 rem --- kornreserven ---
2010 k1=ka/100
2015 vk=int(100*rnd(1))
2020 ko=k1*vk
2030 ka=ka-ko
2035 if ka<=0 then ka=0
2040 return
3000 if bb=1 then printw$:return
3005 kp=int(370*rnd(1))+119
3010 if kp<192 then w$=" tolles wetter sehr reiche ernte":hl=2
3020 if kp>=192 and kp<284thenw$=" gutes wetter gewoehnliche ernte":hl=3
3030 if kp>=284 and kp<380 then w$=" regen schlechte ernte":hl=4
3040 if kp>=380 then w$=" duerre hungersnot droht":hl=5
3050 lp=int(70*rnd(1))+19
3100 bb=1:return
5000 input"wieviel korn wollt ihr kaufen";km
5001 ifaa=1andkr<=0thenprint"ihr bekommt nun kein korn mehr !!!!!![146]":goto 5010
5003 if kr<=0 then kr=0
5005 if km<0 then 1006
5006 ifkm>krthengoto 5050
5007 ka=ka+km:kr=kr-km:bg=bg-km*kp/1000
5010 (NULL)8:(NULL)1,900,15:fort=1to500:nextt
5020 goto 1006
5050 print"so viel korn wird nicht angeboten ![146]":aa=1:goto5010
6000 input"wieviel korn wollt ihr verkaufen";kv
6010 if kv>ka then print"ihr habt nicht so viel korn !!![146]":goto 5010
6020 if kv<0 then 1006
6035 kr=kr+kv:ka=ka-kv:bg=bg+kv*kp/1000
6040 goto 5010
7000 input"wieviel land wollt ihr kaufen";lw
7010 bg=bg-lw*lp/10
7020 lb=lb+lw
7025 if lw<0 then 1006
7030 (NULL)8:(NULL)1,900,15:fort=1to500:nextt
7040 return
8000 input"wieviel land wollt ihr verkaufen";lv
8005 if lv>lb then print"so viel land habt ihr nicht !!![146]":goto 7030
8010 bg=bg+lp*lv/10
8020 if lv<0 then 1006
8030 lb=lb-lv
8040 goto 7030
9000 print"[147]":(NULL) 0,1,1:(NULL)4,11,1
9005 print"kornverteilung"
9010 print"o hamurabi von babylon ich frage"
9020 print"euch, wieviel korn wollt ihr den"
9022 print"hungernden zur verfuegung stellen?"
9025 print"ihr besizt"int(ka)"scheffel korn"
9026 print"die benoetigte kornmenge ist"int(bk)
9027 print"die einwohnerzahl betraegt"ew
9030 input"betrag ";vs
9032 if vs>ka then (NULL)8:(NULL)1,150,15:goto9000
9033 if vs<0 then (NULL)8:(NULL)1,150,15:goto 9000
9035 ka=ka-vs
9040 vr=int(vs/ew):tw=ew
9050 (NULL)8:(NULL)1,350,15:gosub 9500
9055 print"weiter mit"chr$(130)" space[146]"
9070 gets$:ifs$=" " then (NULL)8:(NULL)1,900,15:goto 9100
9080 goto 9070
9100 print"[147]":(NULL)0,11,4:(NULL)4,11,6
9101 print"o hamurabi von babylon"
9102 print"ich berichte euch ueber eure stadt.. "
9103 print"jahr"ja
9105 print""int(tw)" [144]einwohner sind verhungert."
9110 ifss=1 then print""zw"[144]einwohner sind zugewandert"
9120 ag=int(47*rnd(1))+20
9130 print"[158]"int(ag)" [144]einwohner wurden geboren."
9140 at=int(47*rnd(1))+20
9150 print"[158]"int(at)" [144]einwohner sind im alter gestorben":ew=ew+ag-at+zw-tw
9151 print"[158]eure marktplaetze brachten"int(mp*495):bg=bg+int(mp*495)
9152 print"[158]eure kornmuehlen brachten"int(kk*589):bg=bg+int(kk*589)
9153 print"[158]eure gr. kornmuehlen brachten"int(gm*678):bg=bg+(gm*678)
9154 print"[144](angaben in talern)[158]"
9155 sv=sv+ew*2:if sv<0 then sv=0
9156 print"das volk zahlte"sv"taler steuern."
9157 bg=bg+sv
9158 sv=0
9160 print"[144]weiter mit"chr$(130)" space[146]"
9170 getc$:ifc$=" " then (NULL)8:(NULL)1,900,15:goto 17000
9180 goto 9170
9200 goto 10000
9500 for r=1 to 8
9510 if vr<=r then ew=int(ew-(tw/(r+r))):tw=tw-ew:return
9520 nextr
9530 if vr=>9 andvr<=25then tw=0:return
9540 for r=26 to 20000
9550 ifr=vrthen zw=int((tw*(r/2))/98):ew=int(ew+(tw*(r/2))/98):tw=0:ss=1:return
9560 nextr
9600 return
9700 print"[147]":(NULL) 0,1,1:(NULL) 4,11,2
9705 print"einsaehen"
9710 print"weiterhin o hamurabi frage ich euch :"
9720 print"wieviel land wollt ihr einsaeen ?"
9730 print"ihr besizt"lb"hektar land."
9740 print"ihr habt"int(bg)"taler."
9745 print"das einsaeen pro hektar land"
9746 print"kostet"hl"taler."
9750 input"(hektar) ";es
9760 if es>lb then (NULL)8:(NULL)1,150,15:goto9700
9770 if es<0 then (NULL)8:(NULL)1,150,15:goto9700
9775 zf=int(24*rnd(1))+72
9780 bg=int(bg-hl*es):ka=ka+(es/hl)*zf:ee=int((es/hl)*zf):(NULL)8:(NULL)1,350,15
9785 print"weiter mit"chr$(130)" space[146]"
9795 getr$:ifr$=" " then (NULL)8:(NULL)1,900,15:goto 9800
9796 goto 9795
9800 print"[147][144]":(NULL) 0,12,4:(NULL)4,1,4
9810 print"o edler hamurabi,"
9820 print"um die staatskasse aufzubessern,"
9830 print"waere es von vorteil einnahmequellen"
9840 print"zu errichten."
9850 print"eure wahl :"
9860 iflb/(mp+kk+gm)<1000thenprint"ihr benoetigt mehr bauland![146]":goto 9990
9959 print"taler"bg
9960 input"wieviel marktplaetze - 2000 taler";tm
9961 mp=mp+tm
9962 bg=bg-tm*2000
9965 (NULL)8:(NULL)1,180,15
9969 print"taler"bg
9970 input"wieviel kornmuehlen - 3000 taler";tk
9971 kk=kk+tk
9972 bg=bg-tk*3000
9975 (NULL)8:(NULL)1,250,15
9979 print"taler"bg
9980 input"wieviel grosse muehlen - 5000 taler";tg
9981 gm=gm+tg
9982 bg=bg-tg*5000
9985 (NULL)8:(NULL)1,300,15
9986 print"taler"bg
9990 kr=int(10000*rnd(1))+60000
9991 if bg<0 then bj=bj+bg
9992 if bj<-90000 then 10000
9993 if ew<500 then 10000
9994 if ja=65 then 12000
9995 print"s=saven![146]"
9996 print"weiter mit"chr$(130)" space[146]"
9997 ifr$="s" then bb=0:aa=0:ss=0:ja=ja+1:gosub 16000
9998 getr$:ifr$=" " then bb=0:aa=0:ss=0:ja=ja+1:(NULL)8:(NULL)1,900,15:goto1000
9999 goto 9997
10000 fort=1to2000:nextt:print"[147]":(NULL)0,1,1:(NULL)4,1,1
10005 print"hamurabi ich muss euch sagen,dass ihr"
10010 print"ein schlechter herrscher wart."
10020 print"euer volk zaehlte nach"ja"jahren"
10030 print""ew"menschen."
10040 print"euer land war"lb"hektar gross und"
10050 print"eure schatzkammer war mit"
10060 print""bg"talern gefuellt."
10070 print"doch schaetzt eure faehigkeiten selbst"
10080 print"ein und ueberlegt ob fuer euch eine"
10090 print"wiederwahl in frage kommt....."
10095 gosub10500
10100 print"(j[146]a/n[146]ein)"
10110 getf$:iff$="j" then (NULL)8:(NULL)1,700,20:run
10120 iff$="n" then (NULL)8:(NULL)1,200,20:print"[147]":goto 13000
10130 goto10110
10500 restore 10510
10505 (NULL)8
10510 (NULL)
10515 read x,y
10516 (NULL)1,x,y:(NULL)0:fort=1to5:nextt:(NULL)8
10517 (NULL) (NULL) x=0:return
10518 data 453,60,453,45,453,15,453,60
10519 data 488,45,345,15,453,45,345,15,453,45,345,15,453,120,1,1,0,0
12000 fort=1to2000:nextt:print"[147]":(NULL)0,1,1:(NULL)4,1,1
12010 print"hamurabi von babylon ich sage euch"
12020 print"nachdem ihr 65 jahre lang der stadt"
12030 print"vorgestanden habt wird es nun"
12040 print"schwer sein einen ebenbuertigen"
12050 print"nachfolger zu finden."
12060 print"ihr wart seit jahrhunderten der beste"
12065 print"herrscher ueber b a b y l o n !!!!!"
12070 print"landbesitz :"lb"hektar."
12080 print"bargeld :"bg"taler."
12090 print"einwohner :"ew
12091 gosub12500
12095 print"space[146] druecken..."
12100 getaa$:ifaa$=" "then print"[147]":(NULL)1,300,20:goto13000
12110 goto12100
12500 restore12520:(NULL)8
12510 (NULL)
12515 read x,y
12516 (NULL)1,x,y:(NULL)0:fort=1to4:nextt:(NULL)8
12517 (NULL) (NULL) x=0:return
12520 data 596,20,596,20,704,20,739,20,770,40,704,10,685,10,643,20,784,20
12521 data 784,20,784,40,770,10,784,10,810,30,704,10,704,20,704,20,685,20
12522 data 704,20,739,100,596,10,596,10,596,20,704,20,739,20,770,40,704,10
12523 data 685,10,643,20,784,20,784,20,784,40,784,10,784,10,770,30,739,10,704,20
12524 data 596,20,685,20,739,20,704,100,810,20,834,20,834,20,834,20,834,20
12525 data 854,30,864,10,810,20,810,20,810,20,770,40,810,10,810,10,864,30
12526 data 810,10,810,20,810,20,784,20,770,20,739,100,810,10,810,10,834,20
12527 data 834,20,834,20,834,20,854,20,864,20,810,30,810,10,810,20,770,40
12528 data 810,10,810,10,864,30,810,10,810,20,810,20,784,20,770,20,810,100
12529 data 1,1,0,0
12590 end
13000 print"!spielende![146]":fort=1to60:nextt:goto13000
14000 end
15000 rem --- laden ---
15010 open 2,8,2,"0:ham.seq.,s,r":open15,8,15:input#15,en,em$,et,es
15020 input#2,aa,bb,bg,ee,ew,gm
15030 input#2,ja,ka,kk,lb,mp,ss
15040 print""
15041 if em$="ok"thenprint"ok":close2,8,2:close15:fort=1to1000:nextt:em$="":goto 890
15042 ifem$<>"ok"thenprint"disk error":close2:close15:fort=1to1000:next:goto871
16000 rem --- saven ---
16005 open 2,8,2,"@:ham.seq.,s,w"
16010 print#2,aa:print#2,bb:print#2,bg:print#2,ee:print#2,ew:print#2,gm
16020 print#2,ja:print#2,ka:print#2,kk:print#2,lb:print#2,mp:print#2,ss
16030 close2,8,2:print""ds$:return
17000 print"[147]":(NULL) 0,1,1:(NULL)4,1,1
17005 (NULL)8:(NULL)1,400,60:fort=1to5:nextt:(NULL)1,500,70
17010 print"weiterhin ereignete sich in diesem jahr:"
17022 pp=int(8*rnd(1))+1
17030 if pp=1then print"eure feinde nahmen euch bei einem":lb=lb-1000
17031 ifpp=1thenprint"raubzug 1000 hektar des landes.":goto17090
17040 ifpp=2thenprint"eine hungersnot bedrohte eure buerger":ew=ew-50
17041 ifpp=2thenprint"und nahm euch weitere 50 einwohner.":goto17090
17050 ifpp=3thenprint"die pest zog ueber die stadt und nahm":ew=ew-40
17051 ifpp=3thenprint"euch 40 steuerzahler.":goto 17090
17060 ifpp=4thenprint"ein sandsturm verwuestete die stadt.":bg=bg-5000
17061 ifpp=4thenprint"fuer eine saeuberung zahlt 5000 taler.":goto 17090
17070 ifpp=5thenprint"ihr habt durch eine gewonnene schlacht":lb=lb+1500
17071 ifpp=5thenprint"1500 hektar land dazu bekommen.":goto 17090
17080 ifpp>5thenprint"ihr habt glueck,es geschah nichts"
17081 ifpp>5thenprint"besonderes.":goto 17090
17090 print"weiter mit"chr$(130)" space[146]"
17091 getc$:ifc$=" " then (NULL)8:(NULL)1,900,15:goto 9700
17092 goto 17091
18000 end