?UL ERROR IN 2670
Ist da ein Fehler in der Zeile 2670:
2670 IF P(A)>P(E)*2.4 THEN GOSUB[[[
nach dem GOSUB sollte eine Zahl stehen
Zeichensatz UTF-8+Z1013()+CTRL()-ohne Umlaute(äöüß)
9 CLS
10 PRINT:PRINT:PRINT
20 PRINT:PRINT " P R O M O T I O N"
30 PRINT " _________________________
35 PRINT:PRINT:PRINT " Game by J. Harnisch
40 PRINT:PRINT:PRINT:PRINT:PRINT
50 PRINT " EIN FEUDALES STRATEGIESPIEL
60 PRINT:PRINT " FUER MAX. 6 PERSONEN
70 X$=INKEY$:IF X$=""THEN 70
80 CLS
90 PRINT:PRINT:PRINT:PRINT " >> PROMOTION <<"
95 PRINT:PRINT
100 PRINT:PRINT "JEDER SPIELER IST HERRSCHER IN"
110 PRINT:PRINT "SEINEM LAND, IN DEM ER FREI"
120 PRINT:PRINT "REGIEREN KANN. DAS ZIEL BESTEHT"
130 PRINT:PRINT "DARIN,MOEGLICHST SCHNELL KAISER"
140 PRINT:PRINT "ZU WERDEN. DIE BEFOERDERUNG IST"
150 PRINT:PRINT "VOM JEWEILIGEN WIRTSCHAFTSZU-"
160 PRINT:PRINT "STAND ABHAENGIG. DIESER IST MIT"
170 PRINT:PRINT "TRANSAKTIONEN UND INVESTITIONEN"
180 PRINT:PRINT "ZU VERBESSERN."
190 PRINT:PRINT:PRINT " VIEL GLUECK !"
200 X$=INKEY$:IF X$=""THEN 200
210 CLS
520 DATA BANANIA,LOSANIA,AETZARIA,KUNZBURG,ANIMALIA,AGENTIA
530 FOR A=1 TO 6
540 READ T$(A) :!LAND
550 NEXT
570 PRINT "WIEVIEL PERSONEN SPIELEN MIT";
580 INPUT F
590 IF F<1 OR F>6 THEN 580
600 FOR A=1 TO F
620 PRINT:PRINT "WER IST HERRSCHER VON ";T$(A);"?"
630 PRINT:INPUT " ";N$(A)
635 N$(A)=N$(A)+" VON "+T$(A)
640 V(A)=0
650 H(A)=10
660 G(A)=25
670 I(A)=5
680 J(A)=2
690 O(A)=1420+INT(RND(1)*35)
700 K(A)=2500
710 L(A)=10000
720 R(A)=5000
730 T(A)=1
740 U(A)=1
750 N(A)=4
760 P(A)=25
770 Q(A)=5
780 M(A)=25
790 S(A)=2000
800 B=V(A)+T(A)
810 NEXT
812 DATA HOFNARR,BARON,GRAF,MINISTER,PREMIERMINISTER,PRAESIDENT
814 DATA KOENIG,KAISER
816 FOR C=1 TO 8:READ S$(C):NEXT
830 PRINT:PRINT "ES GIBT 4 GRADE FUER DIE WERTUNG"
840 PRINT:PRINT "WELCHE SCHWIERIGKEITSSTUFE:";
850 INPUT U(0)
860 IF U(0)<1 OR U(0)>4 THEN 820
870 U(0)=U(0)+5
880 E=E+1:T$(E)=S$(T(E)+V(E))
890 IF T(E)=-1 THEN E=E+1
900 IF E>F THEN E=0:Y(0)=Y(0)+1:GOTO 880
910 IF Y(0)>O(E)THEN 880
920![[[[ GETREIDEVERH. BERECHN.[[[[
930 W=(INT(RND(1)*5)+INT(RND(1)*6))/2+1
940 ON W GOTO 950,970,990,1010,1030
950 W$="TROCKENHEIT- BODEN VERDORRT "
960 GOTO 1040
970 W$="SCHLECHTE WITTERUNG-MIESE ERNTE"
980 GOTO 1040
990 W$="MAESSIGES WETTER-SCHLECHTE ERNTE"
1000 GOTO 1040
1010 W$="GUTES WETTER- GUTER ERTRAG "
1020 GOTO 1040
1030 W$="OPTIMALES WETTER - BESTE ERNTE "
1040 R=INT(RND(1)*50)
1050 R(E)=(R(E)*100-R(E)*R)/100
1060 X=L(E)
1070 Y=(S(E)-D(E)*100)*5
1080 IF Y<0 THEN Y=0
1090 IF Y<X THEN X=Y
1100 R(E)=R(E)-X/2
1110 Y=W-.5
1120 H=Y*X
1130 R(E)=R(E)+H
1140![[[[ GETREIDENACHFRAGE[[[[
1150 D=N(E)*100+C(E)*40+M(E)*30+P(E)*10+S(E)*5
1160 L=(3*W+INT(RND(1)*6)+INT(RND(1)*6)+10)/10
1170 IF W=1 THEN L=L-1
1180 IF H<1 THEN Y=2:GOTO 1220
1190 Y=D/H
1200 IF Y>2 THEN Y=2
1210 IF Y<.8 THEN Y=.8
1220 L=L*Y
1230 L=(INT(L*10))/10
1240![[[[ PREIS FUER GETREIDE[[[
1250 Z=6-W
1260 G=(Z*3+INT(RND(1)*5)+INT(RND(1)*5))/5*Y*20
1270 CLS
1280 PRINT:PRINT " GETREIDEHAUSHALT"
1290 PRINT:PRINT T$(E);" ";N$(E)
1300![[[ BILDSCHIRMMASKE [[
1310 PRINT:PRINT "IM JAHR";Y(0);"IHRER HERRSCHAFT VER-"
1320 PRINT:PRINT "SCHIMMELTEN";R;"% DER VORRAETE."
1330 PRINT:PRINT W$
1340 PRINT " (";H;"KG )"
1350 PRINT:PRINT "KORNVORRAT.....";R(E);" KG"
1360 PRINT:PRINT "KORNBEDARF.....";D;" KG"
1370 PRINT:PRINT "KORNPREIS......";G;"KNETIS"
1380 PRINT:PRINT "LANDPREIS......";L;"KNETIS"
1390 PRINT:PRINT "VERMOEGEN......";K(E);"KNETIS"
1400 PRINT:PRINT "SIE KOENNEN: 1-KORN KAUFEN"
1410 PRINT " 2-KORN VERKAUFEN"
1420 PRINT " 3-LAND KAUFEN"
1430 PRINT " 4-LAND VERKAUFEN"
1440 PRINT:PRINT " IHRE WAHL ?";
1460 A$=INKEY$:IF A$=""THEN 1460
1470 I=VAL(A$)
1490 IF A$<"1"OR A$>"4"THEN 1800
1500 PRINT:PRINT:ON I GOTO 1510,1570,1660,1710
1510 INPUT "WIEVIEL KORN KAUFEN SIE?";I
1540 K(E)=K(E)-(I*G/1000)
1550 R(E)=R(E)+I
1560 GOTO 1270
1570 INPUT "WIEVIEL KORN VERKAUFEN SIE?";I
1590 IF I>R(E)THEN PRINT "SO VIEL BESITZEN SIE NICHT !":GOTO 1570
1600 K(E)=K(E)+(I*G/1000)
1610 R(E)=R(E)-I
1620![[[[[
1650 GOTO 1270
1660 INPUT "WIEVIEL HEKTAR KAUFEN SIE?";I
1680 L(E)=L(E)+I
1690 K(E)=K(E)-(I*L)
1700 GOTO 1270
1710 INPUT "WIEVIEL HEKTAR VERKAUFEN SIE?";I
1730 IF I>(L(E)-5000)THEN PRINT "WO SOLLEN IHRE BAUERN LEBEN?":GOTO 1720
1740 L(E)=L(E)-I
1750 K(E)=K(E)+(I*L)
1760 GOTO 1270
1800![[[[ BEVOELKERUNGSBERECHN.[[[
1810 G=R(E)-R(E)/5-1
1820 CLS:PRINT:PRINT:PRINT:PRINT
1830 PRINT T$(E);" ";N$(E):PRINT:PRINT
1840 PRINT "WIEVIEL KORN DARF DAS VOLK":PRINT:PRINT "VERBRAUCHEN (MAX";G;")"
1850 PRINT:PRINT:PRINT:INPUT " ";G
1860 IF G<(R(E)/5)THEN PRINT "WER WIRD DENN KNAUSERN !":PAUSE 70:GOTO 1810
1870 IF G<(R(E)-(R(E)-5))THEN PRINT "NICHT UEBERTREIBEN !":PAUSE 70:GOTO 1810
1880 R(E)=R(E)-G
1890 CLS
1900 PRINT:PRINT " BEVOELKERUNGSBILANZ"
1910 PRINT:PRINT T$(E);" ";N$(E):PRINT
1920 Z=G/D-1
1930 IF Z>0 THEN Z=Z/2
1940 IF Z>.25 THEN Z=Z/10+.25
1950 Z=INT(50-G(E)-H(E)-I(E))
1960 IF Z<0 THEN Z=Z*J(E)
1970 Z=Z/10
1980 IF Z>0 THEN Z=Z+3-J(E)
1990 Z=Z+Z/10
2000 IF Z>.5 THEN Z=.5
2010 IF G<D-1 THEN 2330
2020 Z=INT(RND(1)*7)*S(E)/100
2030 PRINT:PRINT "GEBURTEN/JAHR.....";INT(Z)
2040 S(E)=S(E)+Z
2050 Z=INT(RND(1)*3*S(E)/100)
2060 PRINT:PRINT "STERBEFAELLE/JAHR.";INT(Z)
2070 S(E)=S(E)-Z
2080 IF G(E)+H(E)<35 THEN M(E)=M(E)+INT(RND(1)*4)
2090 IF I(E)<INT(RND(1)*20)THEN N(E)=N(E)+INT(RND(1)*2)-1
2100 IF I(E)<INT(RND(1)*20)THEN Q(E)=Q(E)+INT(RND(1)*3)-1
2110 IF G<D+D*.3 THEN GOTO 2260
2120 Z1=INT(S(E)/1000)
2130 Z=(G-D)/D*10
2140 Z=Z*Z1*INT(RND(1)*25)+INT(RND(1)*40)
2150 IF Z>32000 THEN Z=32000
2160 Z1=Z
2170 Z=INT(RND(1)*Z1)
2180 PRINT:PRINT "EINWANDERUNGEN....";Z
2190 S(E)=S(E)+Z
2200 U(E)=U(E)+.5
2210 Z1=INT(Z/5)
2220 Z=INT(RND(1)*Z1)
2230 IF Z>50 THEN Z=50
2240 MM(E)=M(E)+Z
2250 Q(E)=Q(E)+2
2260![[[ HARTE JUSTIZ[[[
2270 IF J(E)<3 THEN 2500
2280 J=S(E)/100*(J(E)-2)*(J(E)-2)
2290 J=INT(RND(1)*J)
2300 S(E)=S(E)-J
2310 PRINT:PRINT "AUSWANDERUNGEN WEGEN JUSTIZ";INT(J)
2320 GOTO 2500
2330![[[ HUNGERSNOT [[[
2340 X=(D-G)/D*100-9
2350 X1=INT(X)
2360 IF X>65 THEN X=65:M(E)=M(E)/2
2370 IF X<0 THEN X1=0:X=0
2380 A=3
2390 Z=INT(RND(1)*3)*S(E)/100
2400 Z1=Z
2410 PRINT:PRINT "GEBURTEN................";INT(Z1)
2420 S(E)=S(E)+Z1
2430 A=X1+8
2440 Z=INT(RND(1)*A)*S(E)/100
2450 Z1=INT(Z)
2460 PRINT:PRINT "STERBEFAELLE WEGEN HUNGER";INT(Z1)
2470 S(E)=S(E)-Z1
2480 IF Z1>1000 THEN U(E)=U(E)/2
2490 GOTO 2260
2500![[[ GELDBILANZ [[[
2510 Z=A(E)*75
2520 K(E)=K(E)+Z
2530 IF Z>0 THEN PRINT:PRINT "MIETE (MARKT)/KNETIS.....";Z
2540 IF S(E)<32766 THEN S(E)=INT(S(E))
2550 Z=D(E)*(55+INT(RND(1)*250))
2560 IF Z>0 THEN K(E)=K(E)+Z:PRINT
2570 IF Z>0 THEN PRINT "FABRIK (GEWINN)/KNETIS....";Z
2580 Z=P(E)*3
2590 PRINT
2600 K(E)=K(E)-Z
2610 PRINT "SOLD/KNETIS.......";Z
2620![[[[ ZU WENIG SOLDATEN [[[[
2630 IF L(E)/1000>P(E)THEN GOSUB 4310
2640 IF L(E)/500<P(E)THEN 2690
2650 FOR A=1 TO F
2660 IF A=E THEN 2880
2670 IF P(A)>P(E)*2.4 THEN GOSUB<<TOKEN:5b>><<TOKEN:5b>><<TOKEN:5b>>
2680 NEXT A
2690 X$=INKEY$:IF X$=""THEN 2690
2700![[[[ STEUERBERECHNUNG [[[
2710 CLS:PRINT
2720 PRINT T$(E);" ";N$(E)
2730 J=(J(E)*300-500)*T(E)
2740 ON J(E)GOTO 2750,2770,2790,2810
2750 J$="HARMLOS"
2760 GOTO 2820
2770 J$="NORMAL"
2780 GOTO 2820
2790 J$="STRENG"
2800 GOTO 2820
2810 J$="SCHARF"
2820 Y=150-G(E)-H(E)-I(E)
2830 IF Y<1 THEN Y=1
2840![[[[ EINNAHMEN[[[[
2850 C=(N(E)*180+Q(E)*75+M(E)*20)*(Y/100)+U(E)*100
2860 S=(N(E)*50+M(E)*75+U(E)*10)*(Y/100)*(5-Y(E)/2)
2870 I=N(E)*250+U(E)*20+(10*J(E)*N(E))*(Y/100)
2880 C=C*G(E)/100
2890 IF C<32760 THEN C=INT(C)
2900 S=S*H(E)/100
2910 IF S<32760 THEN S=INT(S)
2920 I=I*I(E)/100
2930 IF I<32760 THEN I=INT(I)
2940 PRINT:PRINT " STEUERHAUSHALT"
2950 PRINT:PRINT:PRINT "STEUEREINNAHMEN: ";J+C+S+I;" KNETIS":PRINT
2960 PRINT:PRINT "1.ZOLL%............";G(E);C;"KN."
2970 PRINT:PRINT "2.MEHRWERTSTEUER%..";H(E);S;"KN."
2980 PRINT:PRINT "3.EINKOMMENSSTEUER%";I(E);I;"KN."
2990 PRINT:PRINT "4.JUSTIZ....";J$;"....";J;"KN."
3000 PRINT:PRINT:PRINT "AENDERUNGEN MIT NR. DER STEUER"
3010 A$=INKEY$:IF A$=""THEN 3010
3020 I=VAL(INKEY$)
3030 IF I<1 OR I>4 THEN 3270
3040 ON I GOTO 3050,3100,3160,3200
3050 PRINT:INPUT "NEUER ZOLLSATZ (0-100):";I
3060 IF I<0 THEN I=0
3070 IF I>100 THEN I=100
3080 G(E)=I
3090 GOTO 2710
3100 PRINT
3110 INPUT "NEUE MEHRWERTSTEUER (0-50)";I
3120 IF I<0 OR I>50 THEN I=5
3130 H(E)=I
3140 GOTO 2710
3150 PRINT
3160 INPUT "EINKOMMENSTEUERSATZ (0-25)";I
3170 IF I<0 OR I>25 THEN I=0
3180 I(E)=I
3190 GOTO 2710
3200 PRINT
3210 PRINT "JUSTIZ: 1=HARMLOS 2=NORMAL":PRINT " 3=STRENG 4=SCHARF"
3220 X$=INKEY$:IF X$=""THEN 3220
3230 I=VAL(INKEY$)
3240 IF I<1 OR I>4 THEN I=1
3250 J(E)=I
3260 GOTO 2710
3270 K(E)=K(E)+C+S+I+J
3280![[[[ ZINSEN [[[
3290 IF K(E)<0 THEN K(E)=K(E)*1.5
3300 IF K(E)<-10000*T(E)THEN GOSUB 4550
3310![[[ INVESTITIONEN[[[
3320 CLS
3330 PRINT:PRINT " ";T$(E);" ";N$(E)
3340 PRINT:PRINT "SIE KOENNEN IN ALLE FOLGENDEN":PRINT:PRINT "DINGE INVESTIEREN:"
3350 PRINT:PRINT "1.MARKT (1000 KNETIS)"
3360 PRINT:PRINT "2.FABRIK (2000 KNETIS)"
3370 PRINT:PRINT "3.RESIDENZ(TEILBAU 3000 KNETIS)"
3380 PRINT:PRINT "4.KIRCHE (TEILBAU 5000 KNETIS)"
3390 PRINT:PRINT "5.KOMPANIE SOLDATEN AUSRUESTEN"
3400 PRINT:PRINT " (20 MANN 500 KNETIS)"
3410 PRINT:PRINT:PRINT "SIE BESITZEN";K(E);"KNETIS"
3420 IF K(E)<-30000 THEN GOSUB 4550
3430 PRINT:PRINT "6.ANZEIGE DES SPIELSTANDES"
3440 X$=INKEY$:IF X$=""THEN 3440
3450 I=VAL(INKEY$)
3460 IF I=6 THEN 4710
3470 ON I GOTO 3490,3540,3580,3630,3680
3480 GOTO 3720
3490 A(E)=A(E)+1
3500 M(E)=M(E)+5
3510 K(E)=K(E)-1000
3520 U(E)=U(E)+.1
3530 GOTO 3310
3540 D(E)=D(E)+1
3550 K(E)=K(E)-2000
3560 U(E)=U(E)+.25
3570 GOTO 3310
3580 B(E)=B(E)+1
3590 N(E)=N(E)+INT(RND(1)*2)
3600 K(E)=K(E)-3000
3610 U(E)=U(E)+.5
3620 GOTO 3310
3630 C(E)=C(E)+1
3640 Q(E)=Q(E)+INT(RND(1)*6)
3650 K(E)=K(E)-5000
3660 U(E)=U(E)+1
3670 GOTO 3310
3680 P(E)=P(E)+20
3690 S(E)=S(E)-20
3700 K(E)=K(E)-500
3710 GOTO 3310
3720![[[ TITEL BERECHN.[[
3730 Z=0
3740 A=A(E)
3750 GOSUB 4880
3760 A=B(E)
3770 GOSUB 4880
3780 A=C(E)
3790 GOSUB 4880
3800 A=D(E)
3810 GOSUB 4880
3820 A=K(E)/5000
3830 GOSUB 4880
3840 A=L(E)/6000
3850 GOSUB 4880
3860 A=M(E)/50
3870 GOSUB 4880
3880 A=N(E)/5
3890 GOSUB 4880
3900 A=P(E)/50
3910 GOSUB 4880
3920 A=Q(E)/10
3930 GOSUB 4880
3940 A=S(E)/2000
3950 GOSUB 4880
3960 A=U(E)/5
3970 GOSUB 4880
3980 A=Z/U(0)-J(E)+1
3990 A=INT(A)
4000 IF A>8 THEN A=8
4010 IF Y(0)+2=D(E)THEN T(E)=T(E)+1:T$(E)=S$(V(E)+T(E)):GOTO 4080
4020 IF T(E)>=A THEN 880
4030 T(E)=A
4070 IF T(E)=8 THEN 4140
4080 CLS
4090 PRINT:PRINT:PRINT "SIE WURDEN BEFOERDERT UND DUERFEN SICH"
4100 PRINT:PRINT "NUN ";S$(T(E));" NENNEN"
4110 PRINT AT(16,5);"HERZLICHEN GLUCKWUNSCH !"
4120 X$=INKEY$:IF X$=""THEN 4120
4130 GOTO 880
4140 CLS
4150 PRINT:PRINT:PRINT "DER SPIELER ";N$(E);" HAT"
4160 PRINT:PRINT "DEN RANG DES KAISERS ERREICHT."
4170 PRINT:PRINT " DAS SPIEL IST ZU ENDE !"
4180 PRINT:PRINT:PRINT " 1- NEUES SPIEL "
4190 PRINT:PRINT:PRINT " 2- SPIEL BEENDEN"
4200 PRINT:PRINT:PRINT " 3- SPIELSTAND SEHEN"
4210 X$=INKEY$:IF X$=""THEN 4210
4220 A=VAL(INKEY$)
4230 IF A<1 OR A>3 THEN A=2
4240 ON A GOTO 4250,4260,4290
4250 RUN
4260 CLS
4270 PRINT AT(15,10);"AUF WIEDERSEHEN"
4280 END
4290 GOSUB 4730
4300 GOTO 4140
4310![[[ INVASION[[[
4320 Z=0
4330 FOR A=1 TO F
4340 IF A=E THEN 4380
4350 IF P(A)<P(E)THEN 4380
4360 IF P(A)<1.2*(L(A)/1000)THEN 4380
4370 IF P(A)>P(Z)THEN Z=A
4380 NEXT A
4390 IF Z=0 THEN T$(0)=" BARON ":N$(0)="WILHELM VON KAMIKAZIEN"
4400 IF Z=0 THEN A=INT(RND(1)*9000)+1000:GOTO 4420
4410 A=P(Z)*1000-L(Z)/3
4420 IF A>(L(E)-5000)THEN A=(L(E)-5000)/2
4430 CLS
4440 PRINT:PRINT T$(Z);" ";N$(Z)
4450 PRINT "MARSCHIERT IN IHR GEBIET EIN"
4460 PRINT:PRINT "UND BESETZT";A;"HEKTAR LAND !"
4470 L(Z)=L(Z)+A
4480 L(E)=L(E)-A
4490 Z=INT(RND(1)*40)
4500 PRINT:PRINT T$(E);" ";N$(E)
4510 PRINT "VERLIERT";Z;"SOLDATEN IM KRIEG"
4520 P(E)=P(E)-Z
4530 IF PEEK(509)=0 THEN 4530
4535 CLS
4540 RETURN
4550 CLS
4560 PRINT:PRINT:PRINT:PRINT "T$(E);" ";N$(E);"IST "
4570 PRINT:PRINT " >>> BANKROTT <<<"
4580 PRINT:PRINT:PRINT "IHR BESITZ WURDE ZUM GROSSEN"
4590 PRINT:PRINT "TEIL GEPFAENDET !"
4600 X$=INKEY$:IF X$=""THEN 4600
4610 A(E)=0
4620 B(E)=0
4630 C(E)=0
4640 D(E)=0
4650 L(E)=6000
4660 U(E)=1
4670 K(E)=100
4680 M(E)=M(E)/2
4690 R(E)=5000
4700 RETURN
4710 GOSUB 4730
4720 GOTO 3310
4730 FOR A=1 TO F
4740 CLS
4750 PRINT:PRINT "DIES IST DIE SITUATION IM LANDE":PRINT
4760 PRINT "VON ";T$(A);" ";N$(A)
4770 PRINT:PRINT
4780 PRINT:PRINT "ADELIGE.............."INT(N(A))
4790 PRINT:PRINT "SOLDATEN............."INT(P(A))
4800 PRINT:PRINT "KAUFLEUTE............"INT(M(A))
4810 PRINT:PRINT "BAUERN...............";INT(S(A))
4820 PRINT:PRINT "GEISTLICHE...........";INT(Q(A))
4830 PRINT:PRINT "LANDGROESSE (HA).....";INT(L(A))
4840 PRINT:PRINT "VERMOEGEN (KNETIS)...";INT(K(A))
4850 X$=INKEY$:IF X$=""THEN 4850
4860 IF A=F THEN RETURN
4870 NEXT A
4880 IF A>10 THEN A=10
4890 A=INT(A)
4900 Z=Z+A
4910 RETURN
4920 END