Exemple #1
0
    def test(fenetre_jeu, fond):

        a, b, c, d, e, f, r, liste_case = rect_cases()
        joueur = choice(liste_case)

        print(joueur)
        de, surf = lancer_de()
        print(de)
        cases_possibles = verif_case(joueur, 4, liste_case)
        print(cases_possibles)

        fenetre_jeu.blit(fond, (0,0))

        contour(cases_possibles, joueur, fenetre_jeu)
Exemple #2
0
def fct_plateau(joueurs, fenetre_jeu, noms):
    """ La fonction principale qui gère les tours de jeu et le plateau"""
    nom_joueur = noms
    # On charge l'image du plateau
    plateau = pygame.image.load("Images/flygame.jpg").convert()
    fenetre_jeu.blit(plateau, (0, 0))
    pygame.display.flip()
    result = True
    num_mu = [0, 0, 0, 0]
    # On créer les rectangles des cases du plateau
    cases_vertes, cases_oranges, cases_jaunes, cases_rouges, cases_rejouer, cases_mediator, cases_depla, liste_case = (
        rect_cases()
    )
    # On créer la liste des musiques
    liste_musique = crea_liste()
    # On créer la liste de joueur
    liste_joueur = list(range(joueurs))
    font_joueur = pygame.font.Font("Polices/appleberry.ttf", 30)
    pos = [(0, 0), (5, 40), (40, 5), (40, 40)]
    pos_player = [(609, 329), (614, 369), (649, 334), (649, 369)]
    pos_courante = [(609, 329), (609, 329), (609, 329), (609, 329)]
    for i in range(joueurs):

        liste_joueur[i] = [pos[i], 0, 0, 0, 0]
    # On créer une liste d'image joueur
    image_creation = ["Images/joueur1.png", "Images/joueur2.png", "Images/joueur3.png", "Images/joueur4.png"]
    image_joueur = []
    for i in range(joueurs):

        joueur = pygame.image.load(image_creation[i]).convert()
        image_joueur.append(joueur)

    joueur_now = 0
    de_test = 1
    jeu = True

    continuer = True
    fin = False
    while continuer:

        if de_test == 1:
            # Si le dé n'a pas déjà été lancé ce tour

            de, surf = lancer_de()
            fenetre_jeu.blit(surf, (1100, 100))
            pygame.display.flip()
            case_joueur = pos_courante[joueur_now]
            # On test les cases qui sont atteignables en fonction du numéro
            # du dé et de la postion du joueur
            cases_possibles = verif_case(case_joueur, de, liste_case)
            # On entoure ces cases
            contour(cases_possibles, case_joueur, fenetre_jeu)
            de_test = 2

        for event in pygame.event.get():
            if event.type == KEYDOWN and event.key == K_ESCAPE:
                continuer = False
            elif event.type == QUIT:
                jeu = False
                continuer = False
            elif event.type == KEYDOWN and event.key == K_7:
                image_victoire, joueur_victoire = victoire(joueur_now, fenetre_jeu, nom_joueur)
                fenetre_jeu.blit(image_victoire, (0, 0))
                fenetre_jeu.blit(joueur_victoire, (715, 225))
                pygame.display.flip()
                presskey()
                continuer = False
                fin = True
            elif event.type == KEYDOWN and event.key == K_8:
                cases_possibles = liste_case
            # Si on clique sur une case on prend la position de la souris
            elif event.type == MOUSEBUTTONDOWN and event.button == 1:
                mouse_position = pygame.mouse.get_pos()
                for position in cases_possibles:
                    if position.collidepoint(mouse_position):

                        # Si cette position est dans une case on fait les effets de cette case
                        if position in cases_vertes:
                            # On prend les coordonnées de cette case pour déplacer le joueur dessus
                            place = position.topleft
                            pos_courante[joueur_now] = place
                            pos_player = position_joueurs(place, liste_joueur, joueur_now, pos_player)
                            # On choisi la catégorie de la case et on lance la question
                            categorie = "/Series"
                            result, de_test = questionnaire(categorie, num_mu, liste_musique, fenetre_jeu)
                        elif position in cases_rouges:
                            place = position.topleft
                            pos_courante[joueur_now] = place
                            pos_player = position_joueurs(place, liste_joueur, joueur_now, pos_player)
                            categorie = "/Clips"
                            result, de_test = questionnaire(categorie, num_mu, liste_musique, fenetre_jeu)
                        elif position in cases_jaunes:
                            place = position.topleft
                            pos_courante[joueur_now] = place
                            pos_player = position_joueurs(place, liste_joueur, joueur_now, pos_player)
                            categorie = "/Films"
                            result, de_test = questionnaire(categorie, num_mu, liste_musique, fenetre_jeu)
                        elif position in cases_oranges:
                            place = position.topleft
                            pos_courante[joueur_now] = place
                            pos_player = position_joueurs(place, liste_joueur, joueur_now, pos_player)
                            categorie = "/Animes"
                            result, de_test = questionnaire(categorie, num_mu, liste_musique, fenetre_jeu)
                        elif position in cases_mediator:
                            place = position.topleft
                            pos_courante[joueur_now] = place
                            pos_player = position_joueurs(place, liste_joueur, joueur_now, pos_player)
                            if position == cases_mediator[0]:
                                categorie = "/Series"
                                ind = 1
                            elif position == cases_mediator[1]:
                                categorie = "/Clips"
                                ind = 2
                            elif position == cases_mediator[2]:
                                categorie = "/Films"
                                ind = 3
                            elif position == cases_mediator[3]:
                                categorie = "/Animes"
                                ind = 4
                            result, de_test = questionnaire(categorie, num_mu, liste_musique, fenetre_jeu)
                            if result == "Bon":
                                play = liste_joueur[joueur_now]
                                play[ind] = 1
                        elif position in cases_rejouer:
                            place = position.topleft
                            pos_courante[joueur_now] = place
                            pos_player = position_joueurs(place, liste_joueur, joueur_now, pos_player)
                            de_test = 1
                            if position == cases_rejouer[2] and liste_joueur[joueur_now] == [
                                liste_joueur[joueur_now][0],
                                1,
                                1,
                                1,
                                1,
                            ]:
                                image_victoire, joueur_victoire = victoire(joueur_now, fenetre_jeu, nom_joueur)
                                fenetre_jeu.blit(image_victoire, (0, 0))
                                fenetre_jeu.blit(joueur_victoire, (715, 225))
                                pygame.display.flip()
                                presskey()
                                continuer = False
                                fin = True

                        elif position in cases_depla:
                            if position == cases_depla[0]:
                                place = (881, 601)
                                pos_courante[joueur_now] = place
                                pos_player = position_joueurs(place, liste_joueur, joueur_now, pos_player)
                                categorie = "/Animes"
                                ind = 4
                            elif position == cases_depla[1]:
                                place = (337, 601)
                                pos_courante[joueur_now] = place
                                pos_player = position_joueurs(place, liste_joueur, joueur_now, pos_player)
                                categorie = "/Films"
                                ind = 3
                            elif position == cases_depla[2]:
                                place = (881, 57)
                                pos_courante[joueur_now] = place
                                pos_player = position_joueurs(place, liste_joueur, joueur_now, pos_player)
                                categorie = "/Clips"
                                ind = 2
                            elif position == cases_depla[3]:
                                place = (337, 57)
                                pos_courante[joueur_now] = place
                                pos_player = position_joueurs(place, liste_joueur, joueur_now, pos_player)
                                categorie = "/Series"
                                ind = 1
                            result, de_test = questionnaire(categorie, num_mu, liste_musique, fenetre_jeu)
                            if result == "Bon":
                                play = liste_joueur[joueur_now]
                                play[ind] = 1

        pygame.mixer.music.stop()
        if fin != True:
            fenetre_jeu.blit(plateau, (0, 0))
            med_dub = pygame.image.load("Images/med_dub.png").convert_alpha()
            fenetre_jeu.blit(med_dub, (30, 400))
            for i in range(joueurs):
                fenetre_jeu.blit(image_joueur[i], pos_player[i])

            fenetre_jeu.blit(surf, (1100, 100))
            contour(cases_possibles, case_joueur, fenetre_jeu)
            nom_joueur_en_cour = font_joueur.render(nom_joueur[joueur_now], True, (255, 255, 255))
            fenetre_jeu.blit(nom_joueur_en_cour, (163, 21))
            affichage_mediator(liste_joueur, fenetre_jeu, nom_joueur, image_joueur, font_joueur)

            pygame.display.flip()
            if result == "Mauvais" and joueur_now < (joueurs - 1):
                joueur_now = joueur_now + 1
                result = "Bon"
            elif result == "Mauvais" and joueur_now >= (joueurs - 1):
                joueur_now = 0
                result = "Bon"
            else:
                joueur_now = joueur_now

    return jeu
Exemple #3
0
def fct_plateau(joueurs, fenetre_jeu, noms):
    """ La fonction principale qui gère les tours de jeu et le plateau"""
    nom_joueur = noms
    #On charge l'image du plateau
    plateau = pygame.image.load("Images/flygame.jpg").convert()
    fenetre_jeu.blit(plateau, (0, 0))
    pygame.display.flip()
    result = True
    num_mu = [0, 0, 0, 0]
    #On créer les rectangles des cases du plateau
    cases_vertes, cases_oranges, cases_jaunes, cases_rouges, cases_rejouer, cases_mediator, cases_depla, liste_case = rect_cases(
    )
    #On créer la liste des musiques
    liste_musique = crea_liste()
    #On créer la liste de joueur
    liste_joueur = list(range(joueurs))
    font_joueur = pygame.font.Font("Polices/appleberry.ttf", 30)
    pos = [(0, 0), (5, 40), (40, 5), (40, 40)]
    pos_player = [(609, 329), (614, 369), (649, 334), (649, 369)]
    pos_courante = [(609, 329), (609, 329), (609, 329), (609, 329)]
    for i in range(joueurs):

        liste_joueur[i] = [pos[i], 0, 0, 0, 0]
    #On créer une liste d'image joueur
    image_creation = [
        "Images/joueur1.png", "Images/joueur2.png", "Images/joueur3.png",
        "Images/joueur4.png"
    ]
    image_joueur = []
    for i in range(joueurs):

        joueur = pygame.image.load(image_creation[i]).convert()
        image_joueur.append(joueur)

    joueur_now = 0
    de_test = 1
    jeu = True

    continuer = True
    fin = False
    while continuer:

        if de_test == 1:
            #Si le dé n'a pas déjà été lancé ce tour

            de, surf = lancer_de()
            fenetre_jeu.blit(surf, (1100, 100))
            pygame.display.flip()
            case_joueur = pos_courante[joueur_now]
            #On test les cases qui sont atteignables en fonction du numéro
            #du dé et de la postion du joueur
            cases_possibles = verif_case(case_joueur, de, liste_case)
            #On entoure ces cases
            contour(cases_possibles, case_joueur, fenetre_jeu)
            de_test = 2

        for event in pygame.event.get():
            if event.type == KEYDOWN and event.key == K_ESCAPE:
                continuer = False
            elif event.type == QUIT:
                jeu = False
                continuer = False
            elif event.type == KEYDOWN and event.key == K_7:
                image_victoire, joueur_victoire = victoire(
                    joueur_now, fenetre_jeu, nom_joueur)
                fenetre_jeu.blit(image_victoire, (0, 0))
                fenetre_jeu.blit(joueur_victoire, (715, 225))
                pygame.display.flip()
                presskey()
                continuer = False
                fin = True
            elif event.type == KEYDOWN and event.key == K_8:
                cases_possibles = liste_case
            #Si on clique sur une case on prend la position de la souris
            elif event.type == MOUSEBUTTONDOWN and event.button == 1:
                mouse_position = pygame.mouse.get_pos()
                for position in cases_possibles:
                    if position.collidepoint(mouse_position):

                        #Si cette position est dans une case on fait les effets de cette case
                        if position in cases_vertes:
                            #On prend les coordonnées de cette case pour déplacer le joueur dessus
                            place = position.topleft
                            pos_courante[joueur_now] = place
                            pos_player = position_joueurs(
                                place, liste_joueur, joueur_now, pos_player)
                            #On choisi la catégorie de la case et on lance la question
                            categorie = "/Series"
                            result, de_test = questionnaire(
                                categorie, num_mu, liste_musique, fenetre_jeu)
                        elif position in cases_rouges:
                            place = position.topleft
                            pos_courante[joueur_now] = place
                            pos_player = position_joueurs(
                                place, liste_joueur, joueur_now, pos_player)
                            categorie = "/Clips"
                            result, de_test = questionnaire(
                                categorie, num_mu, liste_musique, fenetre_jeu)
                        elif position in cases_jaunes:
                            place = position.topleft
                            pos_courante[joueur_now] = place
                            pos_player = position_joueurs(
                                place, liste_joueur, joueur_now, pos_player)
                            categorie = "/Films"
                            result, de_test = questionnaire(
                                categorie, num_mu, liste_musique, fenetre_jeu)
                        elif position in cases_oranges:
                            place = position.topleft
                            pos_courante[joueur_now] = place
                            pos_player = position_joueurs(
                                place, liste_joueur, joueur_now, pos_player)
                            categorie = "/Animes"
                            result, de_test = questionnaire(
                                categorie, num_mu, liste_musique, fenetre_jeu)
                        elif position in cases_mediator:
                            place = position.topleft
                            pos_courante[joueur_now] = place
                            pos_player = position_joueurs(
                                place, liste_joueur, joueur_now, pos_player)
                            if position == cases_mediator[0]:
                                categorie = "/Series"
                                ind = 1
                            elif position == cases_mediator[1]:
                                categorie = "/Clips"
                                ind = 2
                            elif position == cases_mediator[2]:
                                categorie = "/Films"
                                ind = 3
                            elif position == cases_mediator[3]:
                                categorie = "/Animes"
                                ind = 4
                            result, de_test = questionnaire(
                                categorie, num_mu, liste_musique, fenetre_jeu)
                            if result == "Bon":
                                play = liste_joueur[joueur_now]
                                play[ind] = 1
                        elif position in cases_rejouer:
                            place = position.topleft
                            pos_courante[joueur_now] = place
                            pos_player = position_joueurs(
                                place, liste_joueur, joueur_now, pos_player)
                            de_test = 1
                            if position == cases_rejouer[2] and liste_joueur[
                                    joueur_now] == [
                                        liste_joueur[joueur_now][0], 1, 1, 1, 1
                                    ]:
                                image_victoire, joueur_victoire = victoire(
                                    joueur_now, fenetre_jeu, nom_joueur)
                                fenetre_jeu.blit(image_victoire, (0, 0))
                                fenetre_jeu.blit(joueur_victoire, (715, 225))
                                pygame.display.flip()
                                presskey()
                                continuer = False
                                fin = True

                        elif position in cases_depla:
                            if position == cases_depla[0]:
                                place = (881, 601)
                                pos_courante[joueur_now] = place
                                pos_player = position_joueurs(
                                    place, liste_joueur, joueur_now,
                                    pos_player)
                                categorie = "/Animes"
                                ind = 4
                            elif position == cases_depla[1]:
                                place = (337, 601)
                                pos_courante[joueur_now] = place
                                pos_player = position_joueurs(
                                    place, liste_joueur, joueur_now,
                                    pos_player)
                                categorie = "/Films"
                                ind = 3
                            elif position == cases_depla[2]:
                                place = (881, 57)
                                pos_courante[joueur_now] = place
                                pos_player = position_joueurs(
                                    place, liste_joueur, joueur_now,
                                    pos_player)
                                categorie = "/Clips"
                                ind = 2
                            elif position == cases_depla[3]:
                                place = (337, 57)
                                pos_courante[joueur_now] = place
                                pos_player = position_joueurs(
                                    place, liste_joueur, joueur_now,
                                    pos_player)
                                categorie = "/Series"
                                ind = 1
                            result, de_test = questionnaire(
                                categorie, num_mu, liste_musique, fenetre_jeu)
                            if result == "Bon":
                                play = liste_joueur[joueur_now]
                                play[ind] = 1

        pygame.mixer.music.stop()
        if fin != True:
            fenetre_jeu.blit(plateau, (0, 0))
            med_dub = pygame.image.load("Images/med_dub.png").convert_alpha()
            fenetre_jeu.blit(med_dub, (30, 400))
            for i in range(joueurs):
                fenetre_jeu.blit(image_joueur[i], pos_player[i])

            fenetre_jeu.blit(surf, (1100, 100))
            contour(cases_possibles, case_joueur, fenetre_jeu)
            nom_joueur_en_cour = font_joueur.render(nom_joueur[joueur_now],
                                                    True, (255, 255, 255))
            fenetre_jeu.blit(nom_joueur_en_cour, (163, 21))
            affichage_mediator(liste_joueur, fenetre_jeu, nom_joueur,
                               image_joueur, font_joueur)

            pygame.display.flip()
            if result == "Mauvais" and joueur_now < (joueurs - 1):
                joueur_now = joueur_now + 1
                result = "Bon"
            elif result == "Mauvais" and joueur_now >= (joueurs - 1):
                joueur_now = 0
                result = "Bon"
            else:
                joueur_now = joueur_now

    return jeu