Arts >> Arts et loisirs >  >> magie >> Lunettes Majie

Quel est le code des transformateurs en colère Jenga ?

Assistante

Transformateurs en colère Jenga

Ce code simule un jeu de Jenga, mais avec une particularité :les blocs sont des transformateurs en colère qui s'attaquent les uns les autres lorsqu'ils sont renversés.

Règles :

* Le jeu commence avec une tour de blocs, chaque bloc représentant un transformateur en colère.

* À tour de rôle, les joueurs retirent un bloc de la tour et le placent au sommet.

* Si un joueur renverse des blocs, les transformateurs en colère sur ces blocs s'attaquent les uns les autres.

* Le joueur qui renverse les transformateurs les plus en colère perd la partie.

Code :

```python

importer au hasard

transformateurs =["Optimus Prime", "Megatron", "Bumblebee", "Starscream", "Soundwave", "Shockwave"]

def build_tower() :

tour =[]

pour moi dans la plage (5):

ligne =[]

pour j dans la plage (3):

row.append (random.choice (transformers))

tour.append (ligne)

tour de retour

def remove_block (tour, joueur):

print("Le tour du joueur {}".format(joueur))

tandis que Vrai :

row =int(input("Choisissez une ligne (1-5) :")) - 1

si ligne <0 ou ligne>=5 :

print("Ligne invalide. Veuillez choisir un nombre entre 1 et 5.")

continuer

column =int(input("Choisissez une colonne (1-3) :")) - 1

si colonne <0 ou colonne>=3 :

print("Colonne invalide. Veuillez choisir un nombre entre 1 et 3.")

continuer

si tour[ligne][colonne] ==Aucun :

print("Il n'y a aucun bloc à cette position. Veuillez choisir une position différente.")

continuer

casser

bloc =tour[ligne][colonne]

tour[ligne][colonne] =Aucun

retourner le bloc, la ligne, la colonne

attaque def (bloc1, bloc2) :

print("{} attaques {}!".format(block1, block2))

si block1 =="Optimus Prime":

si block2 =="Mégatron":

return "Optimus Prime gagne !"

autre:

return "Megatron gagne!"

elif block1 =="Mégatron":

si block2 =="Optimus Prime":

return "Megatron gagne!"

autre:

return "Optimus Prime gagne !"

autre:

si bloc1> bloc2 :

return "{} gagne!".format(block1)

autre:

return "{} gagne!".format(block2)

def game_over (player1_score, player2_score) :

print("Jeu terminé !")

si player1_score> player2_score :

print("Le joueur 1 gagne !")

elif player2_score> player1_score :

print("Le joueur 2 gagne !")

autre:

print("Cravate!")

def main() :

# Construisez la tour

tour =build_tower()

print("Tour construite!")

# Joueurs

joueur1_score =0

joueur2_score =0

tandis que Vrai :

# C'est le tour du joueur 1

bloc1, ligne1, colonne1 =remove_block(tour, 1)

# Vérifier les attaques

si row1> 0 et tower[row1 - 1][column1] !=Aucun :

attaque(bloc1, tour[ligne1 - 1][colonne1])

joueur1_score +=1

tour[row1 - 1][column1] =Aucun

si row1 <4 et tower[row1 + 1][column1] !=Aucun :

attaque(bloc1, tour[ligne1 + 1][colonne1])

tour[row1 - 1][column1] =Aucun

joueur1_score +=1

si colonne1> 0 et tour[ligne1][colonne

Lunettes Majie

Catégories reliées