fb:porticula NoPaste
Amtsvogt FB !!!! mit Vorsicht :)
Uploader: | Muttonhead |
Datum/Zeit: | 13.07.2014 10:48:49 |
'#lang "qb"'<--- nun nicht mehr :)
DECLARE SUB Einleitung ()
DECLARE SUB Kornland ()
DECLARE SUB Gebaeude ()
DECLARE SUB Fazit ()
DECLARE SUB Ereignisse ()
DECLARE SUB Ende ()
DECLARE SUB verhungern ()
DECLARE SUB taste ()
DECLARE SUB gestorben ()
REM Amtsvogt II
REM Vorbereitung
RANDOMIZE TIMER
DIM SHARED as string Ernte_erg_txt(5)
DIM SHARED as single Kornalt, Kornneu, Kornernte, Kornfrass, Kornfaul, Buergeralt, Buergerneu
DIM SHARED as single Tagwerk, Bauern, Silber, Hufe, Kirche, Zehnt, Gasth, Markt, Handels, Dorfwall
DIM SHARED as single Gunst, Buergerwert, Kornver, Runde, Korngeb, Hunger, Geldspende, Geldgeb
DIM SHARED as single Gunereig, Ernte
DIM SHARED as single x
Kirche = 0
Zehnt = 0
Gasth = 0
Markt = 0
Handels = 0
Dorfwall = 0
Ernte_erg_txt(1) = "sehr schlecht"
Ernte_erg_txt(2) = "schlecht"
Ernte_erg_txt(3) = "m„ssig"
Ernte_erg_txt(4) = "gut"
Ernte_erg_txt(5) = "sehr gut"
Tagwerk = 5
Buergerneu = 1
Runde = 20
Silber = 1000
SCREEN 12
' Spielanfang
Einleitung
Spielanfang:
Kornland
Gebaeude
Fazit
Ereignisse
REM: šberprfung des Alters
x = INT(RND * 10 + 50): IF Runde > x THEN gestorben: END
INPUT x: IF x = 9 THEN END: REM Notausgang
GOTO Spielanfang
'******************************************************************************
'******************************************************************************
'******************************************************************************
SUB Einleitung
CLS
LOCATE 1, 26
COLOR 15
PRINT "Seid bereit zu `Amtsvogt II`"
COLOR 7
REM Krone malen
FOR a as integer = 1 TO 3
CIRCLE (200 + (a * 40), 170), 10, 13
NEXT a
LINE (240, 180)-(260, 200), 14: LINE (280, 180)-(300, 200), 14
LINE (260, 200)-(280, 180), 14: LINE (300, 200)-(320, 180), 14
LINE (240, 180)-(240, 230), 14: LINE (320, 180)-(320, 230), 14
LINE (240, 230)-(320, 230), 14
PRINT
PRINT
PRINT " Ein Aufbauspiel zur Zeit des Mittelalters."
PRINT
PRINT
PRINT " Ziel des Spieles ist es durch wirtschaftliches Geschick ein Dorf aufzubauen,"
PRINT
PRINT " um"; : COLOR 4: PRINT " Amtsvogt"; : COLOR 7: PRINT " zu werden."
LOCATE 17, 1
PRINT "Letztendlich ist jedoch endscheidet, wie hoch ihr in der Gunst"
PRINT "eures Landesherrn steht, da er euch zum Amtsvogt ernennt."
LOCATE 20, 1
PRINT : COLOR 15
PRINT "Wissenswertes:"
PRINT : COLOR 7
PRINT "1 Hufe (Hof) = 30 Tagwerk / Landmenge die ein Bauer braucht um zu berleben"
PRINT "1 Tagwerk = soviel kann der Bauer an einem Tag bearbeiten"
PRINT "1 Pfund Silber (sp„ter Mark) = 240 Silberpfennig (Silberling oder Pfennig)"
taste
CLS : COLOR 15
PRINT "Zu einem Dorf geh”ren:"
PRINT :
PRINT " - Die Kirche:": COLOR 7
PRINT " Sie sorgt dafr das die Leute gl„ubiger sind und sich auch mit weniger"
PRINT " Korn zufrieden geben."
PRINT : COLOR 15
PRINT " - Der Zehnthof:": COLOR 7
PRINT " Ein besserer Kornspeicher, das Korn ist dort sicherer vor Ratten und F„ule."
PRINT : COLOR 15
PRINT " - Das Gasthaus:": COLOR 7
PRINT " Es gibt dir Einnahmen deiner Brger und Bauern,"
PRINT " sie kehren dort ein, werden aber dadurch weniger fleissiger."
PRINT " Noch mehr Einnahmen gibt es durch Reisende, Handelsstraáe vorrausgesetzt."
PRINT : COLOR 15
PRINT " - Der Marktplatz:": COLOR 7
PRINT " Er bringt euch Einnahmen durch die Marktsteuer."
PRINT " Wenn dein Dorf eine Handelsstraáe hat, erh”hen sich die Einnahmen erheblich."
PRINT : COLOR 15
PRINT " - Die Handelsstraáe:": COLOR 7
PRINT " Sie wird ben”tigt, damit Reisende kommen."
PRINT : COLOR 15
PRINT " - Der Dorfwall:": COLOR 7
PRINT " Er befestigt dein Dorf und schtzt es vor blen Gesindel und wildem Getier."
PRINT : COLOR 15
PRINT " - 10 Bauern und 30 Brger": COLOR 7
PRINT " Sie siedeln sich von alleine an, 1 Bauer braucht jedoch mindestens 1 Hufe."
PRINT
taste
CLS
LOCATE 1, 30: PRINT "Dein Alter:"; Runde; "Jahre"
PRINT
PRINT
PRINT "Als jngster Spross einer adeligen Familie willst du in die Welt,"
PRINT "um dein Glckzu suchen."
PRINT "Mit einer kleinen Handvoll Silberlinge im S„ckel machst du dich auf."
PRINT
PRINT
PRINT "Die mahnenden Worte deines Vaters noch im Ohr:"
PRINT
PRINT "Gib deinen Untertanen immer gut zu essen,"
PRINT "und w„hle weise, wie du dein Silber ausgibst !"
PRINT "Vergiss nicht deinem Landesherrn immer etwas Geld zukommen zu lassen !"
PRINT
PRINT "Von deinem Landsherrn kaufst du etwas unbewohntes wildes Land."
PRINT "Fest berzeugt das du es wirtschaftlich schaffst, Amtsvogt zu werden."
PRINT
PRINT
PRINT
PRINT
PRINT
PRINT
Taste
END SUB
SUB Ende
CLS
PRINT "Herzlichen Glckwunsch !"
LOCATE 1, 30: PRINT "Dein Alter:"; Runde; "Jahre"
END
END SUB
SUB Ereignisse
dim as single xa, z, s, k, g, b, t, y, w
CLS
COLOR 15: PRINT "Ereignisse:": COLOR 7
LOCATE 1, 30: PRINT "Dein Alter:"; Runde; "Jahre"
PRINT
PRINT
'errechnet die Ereigniss-Case-Nr. / die ersten 3Nummern bebaut, die n„chsten 3Nummern nicht gebaut
x = INT(RND * 6 + 1): xa = INT(RND * 3): Z = x * 6 - 5 + xa:
SELECT CASE x
CASE 1
IF Kirche = 0 THEN Z = Z + 3
CASE 2
IF Zehnt = 0 THEN Z = Z + 3
CASE 3
IF Gasth = 0 THEN Z = Z + 3
CASE 4
IF Markt = 0 THEN Z = Z + 3
CASE 5
IF Handels = 0 THEN Z = Z + 3
CASE 6
IF Dorfwall = 0 THEN Z = Z + 3
END SELECT
S=0
K=0
B=0
G=0
SELECT CASE Z
CASE 1
PRINT "Der Bischof bewundert deine Kirche,"
PRINT "und schenkt dir als Zeichen seiner Gte einige Silberlinge."
S = 1
CASE 2
PRINT "Es ist der Tag des Herrn,"
PRINT "die Brger spenden Geld, die Bauern Korn."
S = 1
K = 1
CASE 3
PRINT "Ein Unwetter hat das Dach deiner Kirche besch„digt,"
PRINT "die Arbeiten kosten dir einiges an Silber"
S = 2
Case 4
PRINT "Der Bischof m”chte ein Kirche in deinem Dorf sehen,"
PRINT "und untersttzt dich mit einigen Silberlingen."
S = 1
Case 5
PRINT "Dein Landesherr ist erbost das du noch keine Kirche hast,"
PRINT "du sinkst in seiner Gunst."
G = 2
Case 6
PRINT "Deine Brger verlieren ihren Glauben ohne Kirche,"
PRINT "sie verlassen die Gemeinschaft."
B = 2
CASE 7
PRINT "In eurem Zehnthof lagert doch mehr Korn,"
PRINT "als ihr gez„hlt."
K = 1
CASE 8
PRINT "Dein Zehnthofes zeigt Sicherheit,"
PRINT "und lockt Brger an."
B = 1
CASE 9
PRINT "Euer Zehnthof stand unter Wasser,"
PRINT "es muss ausgebessert werden und Korn verfaulte."
S = 2
K = 2
CASE 10
PRINT "Deine Brger wollen einen Zehnthof,"
PRINT "und sammeln Geld."
S = 1
CASE 11
PRINT "Rattenplage, und das ohne Zehnthof,"
PRINT "viel Korn wurde zerfressen."
K = 2
CASE 12
PRINT "Korn wurde gestohlen,"
PRINT "Mit einem Zehnthaus w„re das nicht passiert."
K = 2
CASE 13
PRINT "Euer Gasthaus beherbergt reiche Edelleute,"
PRINT "der Gelds„ckel fllt sich."
S = 1
CASE 14
PRINT "Deine Obrigkeit macht Halt in euerem Gasthaus,"
PRINT "Ihr steigt in seiner Gunst."
G = 1
CASE 15
PRINT "Einige Raufbolde waren in deinem Gasthaus,"
PRINT "die neue Einrichtung wird was kosten."
S = 2
CASE 16
PRINT "Euer Landherr schenkt euch einige Silberlinge,"
PRINT "damit ihr ein Gasthaus bauen k”nnt."
S = 1
CASE 17
PRINT "Ohne Gasthaus langweilen sich deine Brger,"
PRINT "und wandern ab."
B = 2
CASE 18
PRINT "Ein Dorffest ohne Gasthaus !!!"
PRINT "dann musst du Speis und Trank ausgeben."
S = 2
K = 2
CASE 19
PRINT "Hochbetrieb auf euerem Markt,"
PRINT "ihr nehmt mehr Steuern ein."
S = 1
CASE 20
PRINT "Euer Markt macht gute Gesch„fte,"
PRINT "und erwirbt einiges an Korn dazu."
K = 1
CASE 21
PRINT "Ein Feuer auf euerem Markt,"
PRINT "Ihr braucht einige Silberlinge zum Wiederaufbau."
S = 2
CASE 22
PRINT "Der Landesherrn untersttzt dich fr den Bau eines Marktplatzes,"
PRINT "und schenkt dir ein paar Tagwerk Land."
T = 1
CASE 23
PRINT "Einige Brger sehen ohne Markt keine Zukunft,"
PRINT "und wandern ab."
B = 2
CASE 2, 4: PRINT "Ohne Marktplatz k”nnt ihr briges Korn nicht verkaufen,": PRINT "und es verfault.": K = 2
CASE 25
PRINT "Gaugler kommen ber eure Handelsstrasse,"
PRINT "die Brger feiern und das bringt gutes Geld."
S = 1
CASE 26
PRINT "Die neue Strasse lockt Brger an,"
PRINT "sie siedeln sich bei dir an."
B = 1
CASE 27
PRINT "šber deine Strasse kommen Bettelm”nche,"
PRINT "du musst Korn geben."
K = 2
CASE 28
PRINT "Deine Brger wollen eine Strasse,"
PRINT "und sammeln dafr Silberlinge."
S = 1
CASE 29
PRINT "Die Pest wtet, ohne Strasse kein Arzt,"
PRINT "Brger werden dahingerafft."
B = 2
CASE 30
PRINT "Einige Brger fallen vom Glauben ab,"
PRINT "doch ohne Handelsstrasse, kein Exorzist."
B = 2
CAsE 31
PRINT "Ein Dieb wurde bei deinem Dorfwall erwischt,"
PRINT "er hatte einige Silberlinge bei sich."
S = 1
CASE 32
PRINT "Ein Keiler hat sich in euerem Dorfwall verfangen,"
PRINT "den Wildbratenschmaus danken dir deine Brger mit Geld."
S = 1
CASE 33
PRINT "Ein B„r hat deinen Dorfwall besch„digt,"
PRINT "das ausbessern kostet dich etwas."
S = 2
CASE 34
PRINT "Deine Brger wollen Sicherheit,"
PRINT "und sammeln fr einen Dorfwall."
S = 1
CASE 35
PRINT "Nachts kamen Strauchdiebe,"
PRINT "Geld und Korn wurde gestohlen."
S = 2
K = 2
CASE 36
PRINT "W”lfe kamen ins Dorf,"
PRINT "und t”teten Brger."
B = 2
END SELECT
PRINT
PRINT
PRINT
y = INT(RND * 20 + 5)
w = INT((Silber + 20) / 100 * y)
IF S = 1 THEN
Silber = Silber + w
PRINT "Du erh„ltst";
COLOR 14
PRINT w;
COLOR 7
PRINT "Silberlinge."
end if
IF S = 2 THEN
Silber = Silber - w
PRINT "Du verlierst";
COLOR 12
PRINT w;
COLOR 7
PRINT "Silberlinge."
end if
w = INT((Kornneu + 20) / 100 * y)
IF K = 1 THEN
Kornneu = Kornneu + w
PRINT "Du bekommst";
COLOR 15
PRINT w;
COLOR 7
PRINT "Scheffel Korn."
end if
IF K = 2 THEN
Kornneu = Kornneu - w
PRINT "Du verlierst";
COLOR 12: PRINT w;
COLOR 7
PRINT "Scheffel Korn."
end if
w = INT(Buergerneu / 100 * y)
IF w = 0 THEN w = 1
If B = 1 THEN
Buergerneu = Buergerneu + w
If Buergerneu + w > 30 THEN Buergerneu = 30
'end if
'beide ifthens zusammenfassen
'If B = 1 Then
Print "Es kommen";
COLOR 15: PRINT w;
COLOR 7
PRINT "Brger in dein Dorf."
end if
If (B = 2) And (Buergerneu - w < 1) then w = Buergerneu - 1
IF B = 2 Then
Buergerneu = Buergerneu - w
Print "Du verlierst";
COLOR 12
PRINT w;
COLOR 7
PRINT "Brger."
end if
IF G = 1 THEN Gunst = Gunst + 1
IF (G = 1) And (Gunst > 10) THEN
Gunst = 10
PRINT "Du steigst in der Gunst deines Landesherrn."
end if
IF G = 2 THEN Gunst = Gunst - 1
IF (G = 2) And (Gunst < 0) THEN
Gunst = 0
PRINT "Du sinkst in der Gunst deines Landesherrn."
end if
IF Buergeralt * .4 > Buergerneu THEN verhungern
IF Hufe = 10 AND Buergerneu = 30 AND Kirche = 1 AND Gasth = 1 AND Markt = 1 AND Handels = 1 AND Dorfwall = 1 AND Gunst = 10 THEN Ende
Geldgeb = 0
Runde = Runde + 1
taste
END SUB
SUB Fazit
dim as single y, Geldalt, Geldgast, Geldsteuer, Geldmarkt, a, B
REM Berechnungen:
Kornalt = Kornneu
IF Zehnt = 0 THEN
x = 20
y = 40
ELSE
x = 10
y = 15
END IF
IF Kornalt = 0 THEN Kornfaul = 0 ELSE Kornfaul = INT(Kornalt / 100 * ((RND * x) + 1))
IF Kornernte = 0 THEN Kornfrass = 0 ELSE Kornfrass = INT(Kornernte / 100 * ((RND * y) + 5))
x = INT(RND * 5 + 1)
Kornernte = INT((Hufe * .5 * 30 + Tagwerk * .2) * x)
Kornneu = Kornalt - Kornfaul + Kornernte - Kornfrass
IF Kornneu < 0 THEN Kornneu = 0
Buergeralt = Buergerneu
Buergerneu = INT(Buergerneu * (Korngeb / Hunger) * (RND * .4 + .9))
IF Buergerneu > 30 THEN Buergerneu = 30
Geldalt = Silber
IF Gasth = 1 THEN Geldgast = INT((Buergerneu + Hufe) * (RND * 2 + 2 + (Handels * 1.5)))
IF Markt = 1 THEN Geldmarkt = INT((Buergerneu + Hufe) * (RND * 3 + 2 + (Handels * 1.5)))
Geldsteuer = INT(Buergerneu * (RND * 2 + 1))
Silber = Geldalt + Geldgast + Geldmarkt + Geldsteuer
CLS
COLOR 15: PRINT "Jahresbericht:": COLOR 7
LOCATE 1, 30: PRINT "Dein Alter:"; Runde; "Jahre"
PRINT
PRINT
PRINT Hufe; "Bauern bestellten heuer"; Hufe; "Hufe und"; Tagwerk; "Tagwerk."
PRINT "Die Ernte war heuer "; Ernte_erg_txt(x); "."
PRINT
PRINT "Euer Kornvorrat: "; Kornalt
PRINT "Korn verdarb: "; Kornfaul
PRINT "Die Ernte brachte: "; Kornernte
PRINT "Die Ratten frassen:"; Kornfrass
PRINT
PRINT "Neuer Kornvorrat: "; Kornneu
PRINT
PRINT
PRINT "Euer Dorf wuchs/schrumpfte von"; Buergeralt; "auf"; Buergerneu; "Brger."
PRINT
PRINT "Eure Gelds„ckel hatte: "; Geldalt
PRINT "Steuer von den Brgern: "; Geldsteuer
PRINT "Steuer vom Marktplatz: "; Geldmarkt
PRINT "Steuer aus dem Gasthaus:"; Geldgast
PRINT "Euer S„ckelinhalt nun: "; : COLOR 14: PRINT Silber; : COLOR 7: PRINT " Silberlinge"
PRINT
LOCATE 5, 60: PRINT "Ansehen"
LINE (504, 88)-(504, 248), 7: LINE (496, 88)-(496, 248), 7
LINE (504, 88)-(496, 88), 7: LINE (504, 248)-(496, 248), 7
x = Gunst
a = (RND * 200 + 100)
IF Geldgeb > a THEN Gunst = Gunst + 1
B = (RND * 500 + 0)
IF Geldgeb > a + B THEN Gunst = Gunst + 1
IF Gunst > 10 THEN Gunst = 10
IF Gunst > 0 THEN
LINE (496, 248 - Gunst * 16)-(504, 248 - Gunst * 16), 7
PAINT (500, 245), 7, 7
LOCATE 17, 56
PRINT "Eure Gunst ist:";
LOCATE 18, 56:
COLOR 12
IF x > Gunst THEN PRINT " gesunken."
IF x = Gunst THEN PRINT "gleichgeblieben."
IF x < Gunst THEN
COLOR 15
PRINT " gestiegen."
END IF
END IF
taste
END SUB
SUB Gebaeude
dim as integer tast, schongekauft, f
Anfangbauten:
CLS : COLOR 15
IF Dorfwall = 0 THEN GOTO Handelsstrasse
REM Dorfwall
LINE (384, 336)-(408, 336), 6: REM Boden
FOR x = 0 TO 1: LINE (384 + x * 10, 336)-(394 + x * 10, 320), 8: NEXT: REM Gitter
FOR x = 0 TO 1: LINE (408 - x * 10, 336)-(398 - x * 10, 320), 8: NEXT
Handelsstrasse:
IF Handels = 0 THEN GOTO Markt
FOR x = 0 TO 2: LINE (384, 304 - x * 5)-(408, 299 - x * 5), 8: NEXT: REM
FOR x = 0 TO 3: LINE (387 + x * 6, 303 - x)-(387 + x * 6, 293 - x), 8: NEXT
Markt:
IF Markt = 0 THEN GOTO Gasthaus
FOR x = 0 TO 7: LINE (384, 272 - x)-(408, 272 - x), 6: NEXT: REM Stand
LINE (392, 264)-(392, 261), 6: CIRCLE (392, 259), 2, 6: REM K”rper
LINE (391, 264)-(387, 260), 6: LINE (393, 264)-(397, 260), 6
CIRCLE (404, 262), 1, 4: CIRCLE (402, 262), 1, 4: REM Obst
Gasthaus:
IF Gasth = 0 THEN GOTO Zehnthof
FOR x = 0 TO 1: LINE (388, 240 - x * 12)-(408, 240 - x * 12), 8: NEXT: REM Haus
FOR x = 0 TO 1: LINE (388 + x * 20, 240)-(388 + x * 20, 228), 8: NEXT
FOR x = 0 TO 1: LINE (392 + x * 4, 240)-(392 + x * 4, 232), 6: NEXT: REM Tr
LINE (392, 232)-(396, 232), 6: PSET (393, 236), 8
FOR x = 0 TO 1: LINE (400, 236 - x * 4)-(404, 236 - x * 4), 6: NEXT: REM Fenster
FOR x = 0 TO 1: LINE (400 + x * 4, 236)-(400 + x * 4, 232), 6: NEXT
LINE (388, 228)-(392, 224), 6: LINE (408, 228)-(404, 224), 6: REM Dach
LINE (392, 224)-(404, 224), 6
FOR x = 0 TO 2: LINE (384 + x, 234)-(384 + x, 232), 4: NEXT: REM Schild
PSET (387, 232), 4
Zehnthof:
IF Zehnt = 0 THEN GOTO Kirche
FOR x = 0 TO 1: LINE (384, 208 - x * 8)-(396, 208 - x * 8), 8: NEXT: REM Scheune
FOR x = 0 TO 1: LINE (384 + x * 12, 208)-(384 + x * 12, 200), 8: NEXT
FOR x = 0 TO 1: LINE (396, 208 - x * 8)-(408, 205 - x * 8), 8: NEXT
LINE (408, 205)-(408, 197), 8
FOR x = 0 TO 1: LINE (390 + x * 12, 195 - x * 3)-(396 + x * 12, 200 - x * 3), 6: NEXT: REM Dach
LINE (384, 200)-(390, 195), 6: LINE (390, 195)-(402, 192), 6
FOR x = 0 TO 2: LINE (387 + x * 3, 208)-(387 + x * 3, 203), 6: NEXT: REM Tor
LINE (387, 203)-(393, 203), 6
Kirche:
IF Kirche = 0 THEN GOTO OhneBauten
FOR x = 0 TO 1: LINE (384 + x * 6, 176)-(384 + x * 6, 165), 8: NEXT: REM Turm
FOR x = 0 TO 1: LINE (384, 176 - x * 11)-(390, 176 - x * 11), 8: NEXT
FOR x = 0 TO 1: LINE (384 + x * 6, 165)-(387, 160), 6: NEXT: REM Turmspitze
FOR x = 0 TO 1: LINE (390, 176 - x * 5)-(408, 176 - x * 5), 8: NEXT: REM Schiff
LINE (408, 176)-(408, 171), 8
LINE (405, 168)-(408, 171), 6: LINE (390, 168)-(405, 168), 6: REM Dach
OhneBauten:
PRINT "Bauten:": COLOR 7: LOCATE 1, 30: PRINT "Dein Alter:"; Runde; "Jahre"
PRINT
PRINT
PRINT "Welche Bauten willst du errichten lassen ?"
PRINT
PRINT
PRINT " Dein Gelds„ckel hat:"; : COLOR 14: PRINT Silber; : COLOR 7: PRINT "Silberlinge."
PRINT
PRINT " Preis: Euer Dorf:"
PRINT
PRINT " (1) Die Kirche 800 Silberlinge"
PRINT
PRINT " (2) Den Zehnthof 300 Silberlinge"
PRINT
PRINT " (3) Das Gasthaus 500 Silberlinge"
PRINT
PRINT " (4) Den Markt 650 Silberlinge"
PRINT
PRINT " (5) Die Handelsstraáe 200 Silberlinge"
PRINT
PRINT " (6) Den Dorfwall 150 Silberlinge"
PRINT
PRINT
PRINT " (7) Nichts von allem !"
Schleife:
Tast = val(INPUT(1))
IF Tast = 0 OR Tast > 7 THEN GOTO Schleife
IF Tast = 7 THEN GOTO EndeGebaeude
schongekauft=0
LOCATE 24, 1: COLOR 12
SELECT CASE Tast
CASE 1
IF Kirche = 1 THEN
PRINT "Die Kirche hast du schon !"
schongekauft=1
end if
CASE 2
IF Zehnt = 1 THEN
PRINT "Den Zehnthof hast du schon !"
schongekauft=1
end if
CASE 3
iF Gasth = 1 THEN
PRINT "Das Gasthaus hast du schon !"
schongekauft=1
end if
CASE 4
IF Markt = 1 THEN
PRINT "Den Marktplatz hast du schon !"
schongekauft=1
end if
CASE 5
IF Handels = 1 THEN
PRINT "Die Handelsstraáe hast du schon !"
schongekauft=1
end if
CASE 6
IF Dorfwall = 1 THEN
PRINT "Den Dorfwall hast du schon !"
schongekauft=1
end if
END SELECT
if schongekauft=1 then taste: GOTO Anfangbauten
SELECT CASE Tast
CASE 1: IF Silber < 800 THEN f = 1
CASE 2: IF Silber < 300 THEN f = 1
CASE 3: IF Silber < 500 THEN f = 1
CASE 4: IF Silber < 650 THEN f = 1
CASE 5: IF Silber < 200 THEN f = 1
CASE 6: IF Silber < 150 THEN f = 1
END SELECT
IF f = 1 THEN f = 0: PRINT "Du hast nicht genug Geld !": taste: GOTO Anfangbauten
COLOR 15
SELECT CASE Tast
CASE 1: Silber = Silber - 800: Kirche = 1: PRINT "Du hast die Kirche gekauft !"
CASE 2: Silber = Silber - 300: Zehnt = 1: PRINT "Du hast den Zehnthof gekauft !"
CASE 3: Silber = Silber - 500: Gasth = 1: PRINT "Du hast den Gasthof gekauft !"
CASE 4: Silber = Silber - 650: Markt = 1: PRINT "Du hast den Markt gekauft !"
CASE 5: Silber = Silber - 200: Handels = 1: PRINT "Du hast die Handelsstraáe gekauft !"
CASE 6: Silber = Silber - 150: Dorfwall = 1: PRINT "Du hast den Dorfwall gekauft !"
END SELECT
taste
GOTO Anfangbauten
EndeGebaeude:
END SUB
SUB gestorben
CLS
COLOR 15: PRINT "Jahresbericht:": COLOR 7
LOCATE 1, 30: PRINT "Dein Alter:"; Runde; "Jahre"
PRINT
PRINT
PRINT "Deine Lebensuhr ist abgelaufen."
PRINT
PRINT "Gottes Gnade ruft deine Seele zu sich."
PRINT
PRINT
PRINT
PRINT "Versuche im n„chsten Spiel, ob du es frher zum Amtsvogt schaffst."
PRINT
taste
END SUB
SUB Kornland
dim as single Kornpreisver, Kornpreiszu, Landpreiszu, Landpreisver , f, G, K, Z, L
Korngeb = 0
Kornpreiszu = INT(RND(1) * 4 + 3.5)
Kornpreisver = Kornpreiszu - INT(RND(1) * 2 + 1)
Landpreiszu = INT(RND(1) * 10 + 10)
Landpreisver = Landpreiszu - INT(RND(1) * 4 + 3.5)
IF Kirche = 0 THEN Hunger = INT(Buergerneu * (RND(1) * 2.5 + 1)) ELSE Hunger = INT(Buergerneu * (RND(1) * 1.5 + 1))
Neuanzeige:
dim as integer Tast
dim as string sTast
CLS : COLOR 15
PRINT "Handel:": COLOR 7: LOCATE 1, 30: PRINT "Dein Alter:"; Runde; "Jahre"
PRINT
PRINT
PRINT "Eure"; Buergerneu; "Brger verlangen nach:"
COLOR 15
LOCATE 4, 34: PRINT Hunger; : COLOR 7: PRINT "Scheffel Korn."
PRINT
IF Zehnt = 1 THEN PRINT "In euerem Zehnthaus lagern: "; : ELSE PRINT "In euerem Lager sind: ";
IF Kornneu < Hunger AND Korngeb < Hunger THEN COLOR 12 ELSE COLOR 15
PRINT Kornneu; : COLOR 7: PRINT "Scheffel Korn."
PRINT
PRINT "Ihr besitzt"; Hufe; "Hufe und"; Tagwerk; "Tagwerk."
PRINT
PRINT
PRINT "In euerem S„ckel sind"; : COLOR 14: PRINT Silber; : COLOR 7: PRINT "Silberlinge."
PRINT
PRINT "Wollt ihr: Preis:"
PRINT
PRINT " (1) Korn zukaufen ? "; Kornpreiszu; "pro Scheffel"
PRINT " (2) Korn verkaufen ? "; Kornpreisver; "pro Scheffel"
PRINT
PRINT " (3) Land zukaufen ? "; Landpreiszu; "pro Tagwerk"
PRINT " (4) Land verkaufen ? "; Landpreisver; "pro Tagwerk"
PRINT
PRINT " (5) Euren Brgern Korn geben ?"
LOCATE 21, 42: PRINT "Korn gegeben : "; : COLOR 15: IF Korngeb < Hunger THEN COLOR 12
PRINT Korngeb: COLOR 7
PRINT
PRINT " (6) Dem Landesherrn Geld spenden ?"
LOCATE 23, 42: PRINT "Geld gespendet: "; Geldgeb
LOCATE 24, 50: PRINT "Gesamt: "; Geldspende
PRINT
PRINT " (7) Nichts von Allem !"
Abfrage:
Tast = val(INPUT(1))
IF Tast = 0 OR Tast > 7 THEN GOTO Abfrage
IF Tast = 3 AND Hufe = 10 THEN LOCATE 26, 2: COLOR 12: PRINT "Mehr Land kannst du nicht kaufen !": PRINT : taste: GOTO Neuanzeige
IF (Tast = 7) AND (Korngeb = 0) THEN
LOCATE 26, 2
COLOR 12
PRINT "Sicher das du deine Untertanen verhungern lassen willst ? (j/n)"
sTast = lcase(INPUT(1))
IF sTast = "j" THEN verhungern ELSE GOTO Neuanzeige
end if
If Tast = 7 Then GoTo Endekornland
LOCATE 26, 2: COLOR 12
SELECT CASE Tast
CASE 1: IF Silber < Kornpreiszu THEN PRINT "Du hast zu wenig Geld, um Korn zu kaufen.": f = 1: taste
CASE 2: IF Kornneu = 0 THEN PRINT " Du hast kein Korn, das du verkaufen kannst !": f = 1: taste
CASE 3: IF Silber < Landpreiszu THEN PRINT "Du hast zu wenig Geld, um Land zu kaufen !": f = 1: taste
CASE 4: IF Hufe = 0 AND Tagwerk = 0 THEN PRINT "Du hast kein Land, das du verkaufen kannst !": f = 1: taste
CASE 5: IF Kornneu = 0 THEN PRINT "Du hast kein Korn fr deine Brger !": f = 1: taste
CASE 6: IF Silber = 0 THEN PRINT "Du hast kein Geld, um zu spenden !": f = 1: taste
END SELECT
IF f = 1 THEN f = 0: GOTO Neuanzeige
COLOR 15: LOCATE 26, 2
SELECT CASE Tast
CASE 1: PRINT "(1) Wieviel Korn zukaufen ";
CASE 2: PRINT "(2) Wieviel Korn verkaufen ";
CASE 3: PRINT "(3) Wieviel Land zukaufen ";
CASE 4: PRINT "(4) Wieviel Land verkaufen ";
CASE 5: PRINT "(5) Wieviel Korn den Brgern geben ";
CASE 6: PRINT "(6) Wieviel Geld spenden ";
END SELECT
INPUT x: IF x < 0 THEN LOCATE 26, 2: COLOR 4: PRINT "Keine negativen Werte eingeben !": taste: GOTO Neuanzeige
G=0:K=0:Z=0:L=0
SELECT CASE Tast
CASE 1: IF Kornpreiszu * x > Silber THEN G = 1
Case 2: IF Kornneu < x THEN K = 1
Case 3: IF Landpreiszu * x > Silber Then G = 1
IF (Tagwerk + Hufe * 30) + x > 300 THEN Z = 1
CASE 4: IF x > (Tagwerk + Hufe * 30) THEN L = 1
CASE 5: IF x > Kornneu THEN K = 1
CASE 6: IF Silber < x THEN G = 1
END SELECT
IF G = 1 OR K = 1 OR L = 1 OR Z = 1 THEN LOCATE 26, 2: COLOR 12
IF Z = 1 THEN Z = 0: G = 0: PRINT "So viel Land kannst du nicht kaufen !": taste: GOTO Neuanzeige
IF G = 1 THEN G = 0: PRINT "So viele Silberlinge hast du nicht !": taste: GOTO Neuanzeige
IF K = 1 THEN K = 0: PRINT "Soviel Korn hast du nicht ! ": taste: GOTO Neuanzeige
IF L = 1 THEN L = 0: PRINT "Soviel Land hast du nicht ! ": taste: GOTO Neuanzeige
SELECT CASE Tast
CASE 1: Silber = Silber - (Kornpreiszu * x): Kornneu = Kornneu + x
CASE 2: Silber = Silber + (Kornpreisver * x): Kornneu = Kornneu - x
CASE 3: Silber = Silber - (Landpreiszu * x): Tagwerk = Tagwerk + x: Hufe = Hufe + INT(Tagwerk / 30): Tagwerk = Tagwerk MOD 30
CASE 4: Silber = Silber + (Landpreisver * x): Tagwerk = (Hufe * 30 + Tagwerk) - x: Hufe = INT(Tagwerk / 30): Tagwerk = Tagwerk MOD 30
CASE 5: Korngeb = Korngeb + x: Kornneu = Kornneu - x
CASE 6: Silber = Silber - x: Geldgeb = Geldgeb + x: Geldspende = Geldspende + x
END SELECT
GOTO Neuanzeige
EndeKornland:
END SUB
SUB taste
dim as string Tast
COLOR 7
LOCATE 28, 1: PRINT "Taste drcken !"
Tast= INPUT$(1)
END SUB
SUB verhungern
CLS
COLOR 15: PRINT "Verhungert:": COLOR 7
LOCATE 1, 30: PRINT "Dein Alter:"; Runde; "Jahre"
PRINT
PRINT
PRINT "Du hast zuviele Brger verhungern lassen."
PRINT
PRINT : COLOR 4
PRINT "Du hast verloren !!!": COLOR 7
END
END SUB