Ejemplo n.º 1
0
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)
Ejemplo n.º 2
0
def testPremiereCarteReserve(reserve, carte):
    print("# Test 25:")
    premCarte = premiereCarteReserve(reserve(JoueurTest1))
    if roleCarte(premCarte) == roleCarte(carte):
        print("La fonction premiere carte reserve fonctionne correctement !")
    else:
        print(
            "La fonction premiere carte reserve ne fonctionne pas correctement !"
        )
Ejemplo n.º 3
0
def premierAjoutReserve(joueur): 
    
    print(descriptionMain(main(joueur)))
    choix = int(input(nom(joueur) + " quelle carte voulez vous mettre en reserve ?"))
    while(choix<1 or choix>3):
        #Arret quand choix est >= 1 et <= 3 
        #Poursuite quand choix est < 1 ou > 3 
        choix = int(input(nom(joueur) + " quelle carte voulez vous mettre en reserve ?"))
        
    envoiReserve(reserve(joueur),extraireCarteMain(main(joueur),choix))
Ejemplo n.º 4
0
def reinitDegat(joueur):
    #Pre-condition : le joueur est de Type Joueur
    #Post-condition : les unités posées sur le champ de bataille (front et arriere), les unités en réserve et
    #les unités dans le royaume ont leur point de degat subis remis à 0
    #Resultat : Ne renvoie rien mais modifie les unites du cdb de la reserve et du royaume
    royaume = royaume(joueur)
    for role in royaume.keys():
        #parcourera tout les rôles du royaume, arrêt : quand il a tout parcouru
        for carte in role:
            #parcourera toute la liste de carte du role
            setPointDegat(carte, 0)
    reserve = reserve(joueur)
    for carte in reserve:
        setPointDegat(carte, 0)
    champDeBataille = champBataille(joueur)
    for ligne in champDeBataille:
        for position in ligne.keys():
            setPointDegat(carte, 0)
    return 0
Ejemplo n.º 5
0
    while not (verifAction(action)):
        print(nom(JA) + " vous n'avez pas entré une action correcte ! ")
        action = int(
            input(
                "Que voulez vous faire dans ce tour ? \n0 : Rien \n1 : Mettre une carte en réserve \n2 : Déployer une unité \n3 : Attaquer une cible\nAction : "
            ))

    #Une fois sorti de la boucle, action est un entier compris entre 0 et 3.

    if action == 0:  #Aucune action
        print(nom(JA) + " ne fait aucune action !")

    elif action == 1:
        # == Met en Reserve ==
        #Envoi une unité de sa main sur la reserve
        if nbCarteMain(main(JA)) >= 1 and not (estPleineReserve(reserve(JA))):

            print(descriptionMain(main(JA)))
            choix = int(input("Quelle carte voulez-vous envoyer en réserve ?"))

            Carte = extraireCarteMain(main(JA), choix)
            envoiReserve(reserve(JA), Carte)

            print("Votre carte est maintenant dans la réserve")

        elif estPleineReserve(reserve(JA)) and nbCarteMain(main(JA)) >= 1:
            print(
                "Votre réserve est pleine, vous ne pouvez ajouter une nouvelle carte !"
            )

        else:  #Si j'ai pas d'unité dans ma main je peux rien faire
Ejemplo n.º 6
0
        action = int(input("Que voulez vous faire dans ce tour ? \n0 : Rien \n1 : Mettre une carte en réserve \n2 : Déployer une unité \n3: Attaquer une cible\nAction : "))

    #Une fois sorti de la boucle, action est un entier compris entre 0 et 3.

    if action == 0 : #Aucune action 
        print(nom(JA)+" ne fait aucune action !")
    elif action == 1 : 
    # == Met en Reserve ==
        #Envoi une unité de sa main sur la reserve
        if nbCarteMain(main(JA)) >= 1 :

            print(descriptionMain(main(JA)))
            choix = int(input("Quelle carte voulez-vous envoyer en réserve ?"))
            
            Carte = extraireCarteMain(main(JA),choix) 
            envoiReserve(reserve(JA),Carte) 
            
            print("Votre carte est maintenant dans la réserve")
        else : #Si j'ai pas d'unité dans ma main je peux rien faire 
            print("Comment voulez-vous ajouter une carte à votre réserve si vous n'avez pas de carte dans votre main ?")


    elif action == 2 : #déploie une unité 
    # == Déployer une unité ==

    # 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)))
Ejemplo n.º 7
0
carteFront = extraireCarteMain(main(JoueurTest1), 2)
envoyerFront(front(champBataille(JoueurTest1)), carteFront, "F3")

testAvancerCarte(champBataille(JoueurTest1), "F2")
testEnvoiReserve()
#On fait avancer la carte située en A2 vers F2. On doit vérifier que la carte en F2 atterie bien dans la reserve

# ==== ==== On test des envois dans la reserve !
# ==== ==== On se rajoute quelques petites cartes avant !
ajouterCarteMain(main(JoueurTest1), piocher(pioche(JoueurTest1)))
ajouterCarteMain(main(JoueurTest1), piocher(pioche(JoueurTest1)))
ajouterCarteMain(main(JoueurTest1), piocher(pioche(JoueurTest1)))

# On envoi dans la reserve
carteReserve = extraireCarteMain(main(JoueurTest1), 3)
testEnvoiReserve(reserve(JoueurTest1), carteReserve)
# On teste que la carte ai bien été envoyée et que la fonction premiereCarteReserve fonctionne correctement.
testPremiereCarteReserve(reserve(JoueurTest1), carteReserve)

#On va en envoyer une ou deux dans le Royaume maintenant !

carteRoy = extraireCarteMain(main(JoueurTest2), 1)
role = roleCarte(carteRoy)
testEntrerRoyaume(royaume(JoueurTest1), carteRoy)
testExtraireRoyaume(royaume(JoueurTest1), role)

#Test d'effondrement d'un royaume :
testEffondre(royaume(JoueurTest1))

#Test de estVerticale() et de changementMode()
carteModifMode = obtenirCarte(champBataille(JoueurTest1), "F1")