Angry Transformers Jenga
Ta koda simulira igro Jenga, vendar s preobratom:bloki so jezni transformatorji, ki napadajo drug drugega, ko jih prevrnejo.
Pravila:
* Igra se začne s stolpom blokov, pri čemer vsak blok predstavlja jeznega transformatorja.
* Igralci izmenično odstranijo en blok iz stolpa in ga postavijo na vrh.
* Če igralec prevrne kateri koli blok, se jezni transformatorji na teh blokih napadejo.
* Igralec, ki prevrne najbolj jezne transformatorje, izgubi igro.
Koda:
```python
naključni uvoz
transformatorji =["Optimus Prime", "Megatron", "Bumblebee", "Starscream", "Soundwave", "Shockwave"]
def build_tower():
stolp =[]
za i v območju (5):
vrstica =[]
za j v območju (3):
row.append(random.choice(transformers))
tower.append(vrstica)
povratni stolp
def remove_block(stolp, igralec):
print("Igralec {} je na vrsti".format(igralec))
medtem ko je res:
vrstica =int(input("Izberite vrstico (1-5):")) - 1
če je vrstica <0 ali vrstica>=5:
print("Neveljavna vrstica. Prosimo, izberite številko med 1 in 5.")
nadaljevati
column =int(input("Izberite stolpec (1-3):")) - 1
če je stolpec <0 ali stolpec>=3:
print("Neveljaven stolpec. Prosimo, izberite številko med 1 in 3.")
nadaljevati
if stolp[vrstica][stolpec] ==Brez:
print("Na tem mestu ni bloka. Izberite drug položaj.")
nadaljevati
odmor
blok =stolp [vrstica][stolpec]
stolp [vrstica][stolpec] =Brez
vrni blok, vrstico, stolpec
def napad (blok1, blok2):
print("{} napada {}!".format(block1, block2))
if block1 =="Optimus Prime":
if block2 =="Megatron":
return "Optimus Prime zmaga!"
drugače:
return "Megatron zmaga!"
elif block1 =="Megatron":
if block2 =="Optimus Prime":
return "Megatron zmaga!"
drugače:
return "Optimus Prime zmaga!"
drugače:
če blok1> blok2:
vrne "{} zmaga!".format(block1)
drugače:
vrne "{} zmaga!".format(block2)
def game_over(player1_score, player2_score):
print("Igre je konec!")
če player1_score> player2_score:
print("Igralec 1 zmaga!")
elif player2_score> player1_score:
print("Igralec 2 zmaga!")
drugače:
print("Kravata!")
def main():
# Zgradite stolp
stolp =build_tower()
print("Stolp zgrajen!")
# Igralci
igralec1_rezultat =0
igralec2_rezultat =0
medtem ko je res:
# Igralec 1 je na vrsti
blok1, vrstica1, stolpec1 =odstrani_blok(stolp, 1)
# Preverite za napade
če je vrstica1> 0 in stolp[vrstica1 - 1][stolpec1] !=Brez:
napad (blok1, stolp [vrstica1 - 1][stolpec1])
igralec1_rezultat +=1
stolp [vrstica1 - 1][stolpec1] =Brez
če je vrstica1 <4 in stolp [vrstica1 + 1][stolpec1] !=Brez:
napad (blok1, stolp [vrstica1 + 1][stolpec1])
stolp [vrstica1 - 1][stolpec1] =Brez
igralec1_rezultat +=1
če je stolpec1> 0 in stolp[vrstica1][stolpec