Arts >> Umenie a zábava >  >> mágia >> magické výstava

Aký je kód nahnevaných transformátorov jenga?

Asistent

Nahnevaný Transformers Jenga

Tento kód simuluje hru Jenga, ale s prevratom:bloky sú nahnevané transformátory, ktoré na seba útočia, keď sú prevrátené.

Pravidlá:

* Hra začína vežou blokov, pričom každý blok predstavuje nahnevaného transformátora.

* Hráči sa striedajú pri odstraňovaní jedného bloku z veže a jeho umiestnení na vrch.

* Ak hráč zrazí nejaké bloky, nahnevaní transformátory na týchto blokoch na seba zaútočia.

* Hráč, ktorý zrazí najviac nahnevaných transformátorov, prehráva hru.

Kód:

```pytón

importovať náhodne

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

def build_tower():

veža =[]

pre i v rozsahu (5):

riadok =[]

pre j v rozsahu (3):

row.append(random.choice(transformers))

tower.append(riadok)

návratová veža

def remove_block(veža, prehrávač):

print("Na rade je hráč {}".format(prehrávač))

kým pravda:

riadok =int(input("Vyberte riadok (1-5):")) - 1

ak riadok <0 alebo riadok>=5:

print("Neplatný riadok. Vyberte číslo medzi 1 a 5.")

pokračovať

stĺpec =int(input("Vyberte stĺpec (1-3):")) - 1

ak stĺpec <0 alebo stĺpec>=3:

print("Neplatný stĺpec. Vyberte číslo medzi 1 a 3.")

pokračovať

if tower[riadok][stĺpec] ==Žiadne:

print("Na tejto pozícii nie je žiadny blok. Vyberte inú pozíciu.")

pokračovať

prestávka

blok =veža[riadok][stĺpec]

veža[riadok][stĺpec] =Žiadne

vrátiť blok, riadok, stĺpec

def attack(blok1, blok2):

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

if block1 =="Optimus Prime":

if block2 =="Megatron":

return "Optimus Prime vyhráva!"

inak:

návrat "Megatron vyhráva!"

elif block1 =="Megatron":

if block2 =="Optimus Prime":

návrat "Megatron vyhráva!"

inak:

return "Optimus Prime vyhráva!"

inak:

ak blok1> blok2:

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

inak:

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

def game_over(player1_score, player2_score):

vytlačiť ("Hra skončila!")

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

vytlačiť ("Hráč 1 vyhráva!")

elif player2_score> player1_score:

vytlačiť ("Hráč 2 vyhráva!")

inak:

vytlačiť ("kravata!")

def main():

# Postavte vežu

veža =build_tower()

print ("Veža postavená!")

# Hráči

hráč1_skóre =0

hráč2_skóre =0

kým pravda:

# Hráč 1 je na ťahu

blok1, riadok1, stĺpec1 =odstrániť_blok(veža, 1)

# Skontrolujte útoky

ak riadok1> 0 a veža[riadok1 - 1][stĺpec1] !=Žiadne:

útok(blok1, veža[riadok1 - 1][stĺpec1])

hráč1_skóre +=1

veža[riadok1 - 1][stĺpec1] =Žiadne

ak rad1 <4 a veža[riadok1 + 1][stĺpec1] !=Žiadne:

útok(blok1, veža[riadok1 + 1][stĺpec1])

veža[riadok1 - 1][stĺpec1] =Žiadne

hráč1_skóre +=1

ak stĺpec1> 0 a veža[riadok1][stĺpec

magické výstava

súvisiace kategórie