feature: funkce game nyní dostává jako argument tuple: na prvním místě je vždy typ předávaných dat (zatím "count"/"msg")

funkce evaluate kontroluje maximální možný počet hozených kostek
This commit is contained in:
david-spacil committed 2026-06-19 17:05:19 +02:00
1 parent 16d940253d
commit c1e94faf98
1 file changed
+25 -11
+25 -11
View File
@@ -28,22 +28,36 @@ def clear():
def evaluate(inp, count): def evaluate(inp, count):
inp = str(inp) inp = str(inp)
if re.search("^\d+$", inp): if re.search("^\d+$", inp):
count = len(inp) if len(inp) > count:
return count data = ("msg", "ER01", "Tolika kostkami nemůžete hodit. Zkuste to znovu:", count)
return data
else:
count = len(inp)
data = ("count", count)
return data
def game(count): def game(data: tuple):
new_throw = throw(count) if data[0] == "count":
clear() count = data[1]
print(show_throw(new_throw)) new_throw = throw(count)
inp = input("Vyberte, kterými kostkami chcete hodit znovu (např. 135):") clear()
count = evaluate(inp, count) print(show_throw(new_throw))
game(count) inp = input("Vyberte, kterými kostkami chcete hodit znovu (např. 135):")
data = evaluate(inp, count)
game(data)
elif data[0] == "msg":
if data[1] == "ER01":
msg = data[2]
count = data[3]
inp = input(msg)
data = evaluate(inp, count)
game(data)
def main(): def main():
print("Vítejte ve hře v kostky!") print("Vítejte ve hře v kostky!")
input("Prosím, stiskněte enter pro první hod:") input("Prosím, stiskněte enter pro první hod:")
count = 6 data = ("count", 6)
game(count) game(data)
if __name__ == "__main__": if __name__ == "__main__":
main() main()