Arts >> Umění a zábava >  >> Magie >> Kouzelnická představení

Jaký je kód k naštvaným transformátorům jenga?

Asistent

Angry Transformers Jenga

Tento kód simuluje hru Jenga, ale s obratem:bloky jsou rozzlobené transformátory, které na sebe útočí, když je někdo převrhne.

Pravidla:

* Hra začíná věží bloků, přičemž každý blok představuje rozzlobeného transformátoru.

* Hráči se střídají v odstraňování jednoho bloku z věže a jeho umístění navrch.

* Pokud hráč převrhne nějaké bloky, rozzlobení transformátory na těchto blocích na sebe zaútočí.

* Hráč, který porazí nejvíce naštvané transformátory, prohrává hru.

Kód:

```python

importovat náhodně

transformátory =["Optimus Prime", "Megatron", "Bumblebee", "Starscream", "Soundwave", "Shockwave"]

def build_tower():

věž =[]

pro i v rozsahu (5):

řádek =[]

pro j v rozsahu(3):

row.append(random.choice(transformers))

věž.připojit (řádek)

návratová věž

def remove_block(věž, přehrávač):

print("Na řadě je hráč {}".format(player))

zatímco pravda:

row =int(input("Vyberte řádek (1-5):")) - 1

pokud řádek <0 nebo řádek>=5:

print("Neplatný řádek. Vyberte číslo mezi 1 a 5.")

pokračovat

sloupec =int(input("Vyberte sloupec (1-3):")) - 1

pokud sloupec <0 nebo sloupec>=3:

print("Neplatný sloupec. Vyberte číslo mezi 1 a 3.")

pokračovat

if věž[řádek][sloupec] ==Žádný:

print("Na této pozici není žádný blok. Vyberte prosím jinou pozici.")

pokračovat

přerušení

blok =věž[řada][sloupec]

věž[řádek][sloupec] =Žádný

návratový blok, řádek, sloupec

def attack(blok1, blok2):

print("{} útočí na {}!".format(blok1, blok2))

if block1 =="Optimus Prime":

if block2 =="Megatron":

return "Optimus Prime vyhrává!"

jiný:

return "Megatron vyhrává!"

elif block1 =="Megatron":

if block2 =="Optimus Prime":

return "Megatron vyhrává!"

jiný:

return "Optimus Prime vyhrává!"

jiný:

pokud blok1> blok2:

návrat "{} vyhrává!".format(blok1)

jiný:

návrat "{} vyhrává!".format(blok2)

def game_over(player1_score, player2_score):

tisk ("Konec hry!")

pokud hráč1_skóre> hráč2_skóre:

tisk ("Hráč 1 vyhrává!")

elif player2_score> player1_score:

tisk ("Hráč 2 vyhrává!")

jiný:

tisk ("kravata!")

def main():

# Postavte věž

věž =build_tower()

tisk ("Věž postavena!")

# Hráči

player1_score =0

hráč2_skóre =0

zatímco pravda:

# Hráč 1 je na tahu

blok1, řádek1, sloupec1 =odstranit_blok(věž, 1)

# Zkontrolujte útoky

pokud řádek1> 0 a věž[řádek1 - 1][sloupec1] !=Žádný:

útok(blok1, věž[řada1 - 1][sloupec1])

hráč1_skóre +=1

věž[řádek1 - 1][sloupec1] =Žádný

pokud řádek1 <4 a věž[řádek1 + 1][sloupec1] !=Žádný:

útok(blok1, věž[řada1 + 1][sloupec1])

věž[řádek1 - 1][sloupec1] =Žádný

hráč1_skóre +=1

pokud sloupec1> 0 a věž[řádek1][sloupec

Kouzelnická představení

Související kategorie