Created
July 9, 2017 16:25
-
-
Save Makman2/9598cde1af9e3b645ff57958cf6edff6 to your computer and use it in GitHub Desktop.
Maier initial stuff ;)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from random import randint | |
dices = 2 | |
def wuerfeln(): | |
return randint(1, 6) | |
def fusionieren(a, b): | |
sortierte_liste = sorted([a, b]) | |
a, b = sortierte_liste | |
if a == 1 and b == 2: | |
return 1000 | |
elif a == b: | |
return a * 100 | |
else: | |
return b * 10 + a | |
def maierpasch(zahl): | |
if zahl < 100: | |
return zahl | |
elif zahl == 1000: | |
return 'Maier' | |
elif zahl >= 100: | |
return '{}er Pasch'.format(int(zahl / 100)) | |
max_spieler = int(input('Wieviele Spieler? ')) | |
max_punkte = int(input('Wieviele Punkte zum Spielende? ')) | |
print('--- SPIELSTART ---') | |
aktueller_spieler = 1 | |
punkte = {} | |
for spieler in range(max_spieler): | |
punkte[spieler + 1] = 0 | |
vorherige_ansage = 0 | |
ansage = 0 | |
while(True): | |
if any(p >= max_punkte for p in punkte.values()): | |
break | |
print('Spieler {} von {}'.format(aktueller_spieler, max_spieler)) | |
aktion = int(input('Würfeln [0], Schieben [1] oder Aufdecken [2]? ')) | |
if aktion == 0: | |
augenzahl = fusionieren(wuerfeln(), wuerfeln()) | |
print(maierpasch(augenzahl)) | |
elif aktion == 1: | |
pass | |
elif aktion == 2: | |
if ansage == 1000: | |
strafpunkte = 2 | |
else: | |
strafpunkte = 1 | |
if augenzahl >= ansage: | |
punkte[aktueller_spieler] += strafpunkte | |
else: | |
if aktueller_spieler > 1: | |
vorheriger_spieler = aktueller_spieler - 1 | |
else: | |
vorheriger_spieler = max_spieler | |
punkte[vorheriger_spieler] += strafpunkte | |
aktueller_spieler = vorheriger_spieler | |
if ansage == 1000: | |
print('Spieler {} kassiert zwei Punkte!'.format(aktueller_spieler)) | |
else: | |
print('Spieler {} kassiert einen Punkt!'.format(aktueller_spieler)) | |
print(punkte) | |
vorherige_ansage = 0 | |
ansage = 0 | |
continue | |
vorherige_ansage = ansage | |
print('(1000: Maier, x00: x-er Pasch)') | |
ansage = int(input('Zahl? ')) | |
if ansage <= vorherige_ansage: | |
print('Du bist bescheuert!') | |
vorherige_ansage = 0 | |
ansage = 0 | |
punkte[aktueller_spieler] += 1 | |
print(punkte) | |
continue | |
aktueller_spieler = aktueller_spieler + 1 | |
if aktueller_spieler > max_spieler: | |
aktueller_spieler = 1 | |
for spieler, p in punkte.items(): | |
if p >= max_punkte: | |
print('Spieler {} hat verloren!'.format(spieler)) | |
print(punkte) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment