def deploiementCarte(joueur,nbCarteAPlacerReserve,nbCarteAPlacerRoyaume) : #Permet de placer nbCarteAPlacerReserve cartes provenant de la reserve sur le champ de bataille et nbCarteAPlacerRoyaume cartes provenant du royaume sur le champ de bataille. for i in range(nbCarteAPlacerReserve) : #A deux reprises on demande au joueur de placer une carte sur le champ positionCarteSecours = input(nom(joueur) + ", où voulez-vous placer la carte de votre réserve ?") while(not(estPosition(positionCarteSecours)) or not(estVidePosition(champBataille(joueur),positionCarteSecours))) : #Arret : Qd la position est bonne & qd la position est vide #pousuite : qd la position est fausse ou qd la position est non vide positionCarteSecours = input(nom(joueur) + "veuillez indiquer une position valide ! Où voulez-vous placer la carte de votre réserve ?") #On place sur le champs de bataille if(positionCarteSecours[0] == "F"): Carte = premiereCarteReserve(reserve(joueur)) envoyerFront(front(champBataille(joueur)),Carte,positionCarteSecours) else: #si choix[0] == "A" while(not(estPosition(positionCarteSecours)) or not(estVidePosition(champBataille(joueur),positionCarteSecours)) or not(estVidePosition(champBataille(joueur),"A"+positionCarteSecours[1]))) : #Arret : Qd la position est bonne & qd la position est vide & qd il y a quelqu'un devant #pousuite : qd la position est fausse ou qd la position est non vide ou qd il y a personne devant positionCarteSecours = input(nom(joueur) + "veuillez indiquer une position valide ! Où voulez-vous placer la carte de votre réserve ?") Carte = premiereCarteReserve(reserve(joueur)) envoyerArriere(arriere(champBataille(joueur)),Carte,positionCarteSecours) for i in range(nbCarteAPlacerRoyaume) : #A deux reprises on demande au joueur de placer une carte sur le champ print(descriptionRoyaume(royaume(joueur))) roleChoisi = input(nom(joueur) + " quel est le role de la carte que vous voulez extraire du royaume ?") while(roleChoisi != "Roi" and roleChoisi != "Soldat" and roleChoisi != "Archer" and roleChoisi != "Garde") : #Arret quand role = "Roi" ou .... ou ... ou ... #Poursuite tant que role != "Roi" et roleChoisi = input(nom(joueur) + " quel est le role de la carte que vous voulez extraire du royaume ?") positionCarteSecours = input(nom(joueur) + ", où voulez-vous placer la carte de votre royaume ?") while(not(estPosition(positionCarteSecours)) or not(estVidePosition(champBataille(joueur),positionCarteSecours))) : #Arret : Qd la position est bonne & qd la position est vide #pousuite : qd la position est fausse ou qd la position est non vide positionCarteSecours = input(nom(joueur) + "veuillez indiquer une position valide ! Où voulez-vous placer la carte de votre royaume ?") #On place sur le champs de bataille if(positionCarteSecours[0] == "F"): Carte = extraireRoyaume(royaume(joueur),roleChoisi) envoyerFront(front(champBataille(joueur)),Carte,positionCarteSecours) else: #si choix[0] == "A" while(not(estPosition(positionCarteSecours)) or not(estVidePosition(champBataille(joueur),positionCarteSecours)) or not(estVidePosition(champBataille(joueur),"A"+positionCarteSecours[1]))) : #Arret : Qd la position est bonne & qd la position est vide & qd il y a quelqu'un devant #pousuite : qd la position est fausse ou qd la position est non vide ou qd il y a personne devant positionCarteSecours = input(nom(joueur) + "veuillez indiquer une position valide ! Où voulez-vous placer la carte de votre réserve ?") Carte = extraireRoyaume(royaume(joueur),roleChoisi) envoyerArriere(arriere(champBataille(joueur)),Carte,positionCarteSecours)
if nbCarteReserve(reserve(JA)) == 0 and nbCarteMain(main(JA)) == 0: print("Wesh t'as pas de carte à poser gros !") else: if nbCarteReserve(reserve(JA)) >= 1: Carte = premierCarteReserve(reserve(JA)) elif nbCarteMain(main(JA)) >= 1: print(descriptionMain(main(JA))) choix = int( input("Quelle carte voulez-vous envoyer en réserve ?")) Carte = extraireCarteMain(main(JA), choix) # La carte est placée sur le champ de bataille # 1.b - L'unité doit être placée sur le front ou derrière une unité déjà présente au front if nbCarteFront(front(champBataille(JA))) + nbCarteArriere( arriere(champBataille(JA))) == 0: #Si c'est la premiere unité: choix = int( input( "Votre carte doit aller au front. A quelle position voulez vous la mettre. 1, 2 ou 3\n Choix : " ) ) #avec int() on vérifie que l'utilisateur nous renvoie bien un int position = "F" + str(choix) envoyerFront(front(champBataille(JA)), Carte, position) else: choix = input( "Où voulez-vous placer votre carte ?\nPosition : ") while (not (positionValide(choix, JA))): choix = input( "Attention, vous avez entré une mauvaise position !\nOù voulez-vous placer votre carte ?\nPosition : "
# 1 - Met une unité sur la champ de bataille # Si JA a une unité dans sa réserve : if nbCarteReserve(reserve(JA)) >= 1 : Carte = premierCarteReserve(reserve(JA)) elif nbCarteMain(main(JA)) >= 1 : print(descriptionMain(main(JA))) choix = int(input("Quelle carte voulez-vous envoyer en réserve ?")) Carte = extraireCarteMain(main(JA),choix) else : print("Wesh t'as pas de carte à poser gros !") # La carte est placée sur le champ de bataille # 1.b - L'unité doit être placée sur le front ou derrière une unité déjà présente au front if nbCarteFront(front(champBataille(JA))) + nbCarteArriere(arriere(champBataille(JA))) == 0 : #Si c'est la premiere unité: choix = int(input("Votre carte doit aller au front. A quelle position voulez vous la mettre. 1, 2 ou 3\n Choix : "))#avec int() on vérifie que l'utilisateur nous renvoie bien un int position = "F"+str(choix) envoyerFront(front(champBataille(JA)),Carte,position) else : choix = input("Où voulez-vous placer votre carte ?\nPosition : ") while(not(positionValide(choix,JA))): choix = input("Attention, vous avez entré une mauvaise position !\nOù voulez-vous placer votre carte ?\nPosition : ") # 1.c - Une unité (C2) peut être placée sur une carte placée (C1) : if(choix[0]=="F"): if(not(estVidePosition(champBataille(JA),choix))): #C1 va dans la reserve en fin de file
indice = 1 carte = extraireCarteMain(main(JoueurTest2), indice) # == On essai d'ajouter la carte extraite au front positionFront2 = "F3" testEnvoyerFront(front(champBataille(JoueurTest2)), carte, positionFront2) testObtenirCarte(front(ChampBataille(JoueurTest1)), champBataille(JoueurTest1), positionFront2) # ===== ==== Test d'ajout une carte à l'arriere au Joueur1 # == On extrait d'abbord une carte de la main indice = 1 carte = extraireCarteMain(main(JoueurTest1), indice) # == On essai d'ajouter une carte à l'arriere positionArriere = "A2" testEnvoyerArriere(arriere(champBataille(JoueurTest1)), carte, positionArriere) # La carte doit désormais etre présente sur le champ. # On ajoute une carte sur le Arriere adverse : # ===== ==== Test d'ajout une carte a l'arriere au Joueur2 indice = 1 carte = extraireCarteMain(main(JoueurTest2), indice) # == On essai d'ajouter une carte au Arriere positionArriere = "A2" testEnvoyerArriere(arriere(champBataille(JoueurTest2)), carte, positionArriere) # = La carte est à l'arriere en diagonale droite de celle au front # = Test qui vérifie que le front devant la carte que l'on viens d'ajouter est vide (ce qui doit etre le cas !): # On vérifie le nombre de carte à l'arriere et à l'avant: