-
Notifications
You must be signed in to change notification settings - Fork 0
/
hra.py
69 lines (53 loc) · 1.97 KB
/
hra.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
from lokace import *
inventar = {"klic": False}
skore = 0
kroky = 0
hrad = Hrad()
posta = Posta()
def hotovo(level):
return sum(level.zlato) == 0
for level in [hrad, posta]:
hrac = 0
print("Vítej v levelu", level.jmeno)
while not hotovo(level):
print("hráč je v místnosti:", level.mistnosti[hrac])
print("hráč má", skore, "zlata")
print("zbývá zlata:", sum(level.zlato))
kam_lze_jit = level.chodby[hrac]
ok_vstupy = ["cheat"]
for i, moznost in enumerate(kam_lze_jit):
print("Moznost", i + 1, ": ", level.mistnosti[moznost])
ok_vstupy.append(str(i + 1))
if level.zlato[hrac] > 0:
print("Moznost X : sebrat", level.zlato[hrac], "zlata")
ok_vstupy.append("x")
if hrac == level.klic:
print("Moznost K : sebrat klíč")
ok_vstupy.append("k")
if inventar["klic"] and level.zamcene_chodby[hrac]:
print("Moznost O : odemknout dveře ->", level.mistnosti[level.zamcene_chodby[hrac][-1]])
ok_vstupy.append("o")
vstup = input("> ")
while not vstup in ok_vstupy:
print("Špatný vstup.")
vstup = input("> ")
if vstup == "x":
skore += level.zlato[hrac]
level.zlato[hrac] = 0
elif vstup == "k":
inventar["klic"] = True
level.klic = -1
elif vstup == "o":
cilova_mistnost = level.zamcene_chodby[hrac].pop()
level.chodby[hrac].append(cilova_mistnost)
print("Slyšíš jak cvaknul zámek a dveře se otevřely.")
inventar["klic"] = False
elif vstup == "cheat":
print("Podvody jsou zakázaný hahaha")
else:
index_moznosti = int(vstup) - 1
hrac = kam_lze_jit[index_moznosti]
kroky += 1
#break
print("Level splněn!")
print("Gratuluju, sebral jsi celkem,", skore, "zlata za", kroky, "kroků")