Multi Gaming – Old School, en python

Projets

Vous aimer les jeux old school ? Ou plus simplement les jeux vidéos ? Alors vous êtes au bon endroit ! Bienvenue sur notre projet Multi Gaming / Old School !

Introduction :

Projet réalisé par R.Moreno, N.Ducatez, M.Leclerc de la classe de première en spécialité NSI.

Jouez à plusieurs jeux tels que : Un lovemetter pour savoir QUI est votre prétendant idéal ! Un jeu du mémory pour faire fonctionner les méninges ! Et pour finir le classique jeu du : pierre, papier, ciseaux ! Avec un menu réaliser en Tkinter.

Commençons donc par le commencement :

Les jeux
Tout d’abor mon équipe s’est penché sur le lovemeter qui était plutôt simple a réaliser :

#Le programme du lovemeter
def love():
    a = input("Entrer le prénom du premier prétendant : ")
    b = input("Entrer le prénom du deuxieme prétendant : ")
    love_calcul(a, b)
    
#Le calcul de l'amour <3
def love_calcul(a, b):
    amour=randint(1, 100)
    print("Laisser moi réfléchir...")
    time.sleep(2)
    print("Hmmmmmmm")
    time.sleep(1)

print("Entre ", a ," et ", b,"j'ai remarqué qu'il y avais ", amour,"% d'amour <3")
    

Voici notre code, il est assez simple, mais on ne voulais pas le laisser de la sorte ! C’est pour cela que l’on a ajouter des eastereggs.

#Le programme du lovemeter
def love():
    a = input("Entrer le prénom du premier prétendant : ")
    b = input("Entrer le prénom du deuxieme prétendant : ")
    love_calcul(a, b)
    
#Le calcul de l'amour <3
def love_calcul(a, b):
    amour=randint(1, 100)
    print("Laisser moi réfléchir...")
    time.sleep(2)
    print("Hmmmmmmm")
    time.sleep(1)
    
    #Un petit secret bien sur :)
    if a == "Rick":
        webbrowser.open('https://www.youtube.com/watch?v=xvFZjo5PgG0')
    
    elif b == "Rick":
        webbrowser.open('https://www.youtube.com/watch?v=xvFZjo5PgG0')
    
    if a == "rick":
        webbrowser.open('https://www.youtube.com/watch?v=xvFZjo5PgG0')
    
    elif b == "rick":
        webbrowser.open('https://www.youtube.com/watch?v=xvFZjo5PgG0')
        
    #Si un des prétendants se nomme Robert
    elif a == "Robert":
        print("Entre ", a ," et ", b,"j'ai remarqué qu'il y avais 42% d'amour quel drôle de nombre quand même ! ")
    
    elif b == "Robert":
        print("Entre ", a ," et ", b,"j'ai remarqué qu'il y avais 42% d'amour quel drôle de nombre quand même ! ")
        
    elif a == "robert":
        print("Entre ", a ," et ", b,"j'ai remarqué qu'il y avais 42% d'amour quel drôle de nombre quand même ! ")
        
    elif b == "robert":
        print("Entre ", a ," et ", b,"j'ai remarqué qu'il y avais 42% d'amour quel drôle de nombre quand même ! ")
        
    #Si un des prétendants se nomme Clemente
    elif a == "Clemente":
        print("Entre ", a ," et ", b,"j'ai remarqué qu'il y avais 76% d'amour quel drôle de nombre quand même ! ")
    
    elif b == "Clemente":
        print("Entre ", a ," et ", b,"j'ai remarqué qu'il y avais 76% d'amour quel drôle de nombre quand même ! ")
        
    elif a == "clemente":
        print("Entre ", a ," et ", b,"j'ai remarqué qu'il y avais 76% d'amour quel drôle de nombre quand même ! ")
    
    elif b == "clemente":
        print("Entre ", a ," et ", b,"j'ai remarqué qu'il y avais 76% d'amour quel drôle de nombre quand même ! ")
    
    #Si aucun des prétendants ne corresponds
    else:
        print("Entre ", a ," et ", b,"j'ai remarqué qu'il y avais ", amour,"% d'amour <3")

Après l’ajout de quelque easter egg, on s’est dit que il nous fallait au moins 3 jeux. Alors on a crée un pierre papier ciseaux.

#Le programme du pierre Papier Ciseaux
def pierre_papier_ciseaux():
    choix= ("Pierre", "Papier", "Ciseaux")
    Score_J = 0
    Score_O = 0

    # Création de la boucle
    a = "Oui"
    while a == "Oui":
        time.sleep(2)
        Choix = input("Taper Pierre , Papier , ou Ciseaux :")

        # Si le choix été Pierre
        if Choix == "Pierre":
            print("Vous avez choisie Pierre")
            time.sleep(1)

            # Choix de l'ordinateur aléatoirement
            print("L'ordinateur choisie ...")
            time.sleep(1)
            ordi = random.choice(choix)
            print("l'ordinateur a choisie :", ordi)
            time.sleep(1)
    
            # Si le choix de l'ordinateur est Ciseaux
            if ordi == "Ciseaux":
                print("Bravo vous avez gagnez")
                time.sleep(1)
                Score_J += 1
                print("Nombre de victoire : ", Score_J, "Nombre de défaite", Score_O)
                time.sleep(1)
                a = input("Voulez-vous rejouer ? :")

            # Si le choix de l'ordinateur est Pierre
            if ordi == "Pierre":
                print("Dommage il y a égalité")
                time.sleep(1)
                print("Nombre de victoire : ", Score_J, "Nombre de défaite", Score_O)
                time.sleep(1)
                a = input("Voulez-vous rejouer ? :")

            # Si le choix de l'ordinateur est Papier
            if ordi == "Papier":
                print("Dommage vous avez perdu")
                time.sleep(1)
                Score_O += 1
                print("Nombre de victoire : ", Score_J, "Nombre de défaite", Score_O)
                time.sleep(1)
                a = input("Voulez-vous rejouer ? :")

        elif Choix == "Papier":
            print("Vous avez choisie Papier")
            time.sleep(1)

            # Choix de l'ordinateur aléatoirement
            print("L'ordinateur choisie ...")
            time.sleep(1)
            ordi = random.choice(choix)
            print("l'ordinateur a choisie :", ordi)
            time.sleep(1)

            # Si le choix de l'ordinateur est ciseaux
            if ordi == "Ciseaux":
                print("Dommage vous avez perdu")
                time.sleep(1)
                Score_O += 1
                print("Nombre de victoire : ", Score_J, "Nombre de défaite", Score_O)
                time.sleep(1)
                a = input("Voulez-vous rejouer ? :")

            # Si le choix de l'ordinateur est pierre
            if ordi == "Pierre":
                print("Bravo vous avez gagnez")
                time.sleep(1)
                Score_J += 1
                print("Nombre de victoire : ", Score_J, "Nombre de défaite", Score_O)
                time.sleep(1)
                a = input("Voulez-vous rejouer ? :")

            # Si le choix de l'ordinateur est Papier
            if ordi == "Papier":
                print("Dommage il y a égalité")
                time.sleep(1)
                print("Nombre de victoire : ", Score_J, "Nombre de défaite", Score_O)
                time.sleep(1)
                a = input("Voulez-vous rejouer ? :")

        elif Choix == "Ciseaux":
            print("Vous avez choisie Ciseaux")
            time.sleep(1)

            # Choix de l'ordinateur aléatoirement
            print("L'ordinateur choisie ...")
            time.sleep(1)
            ordi = random.choice(choix)
            print("l'ordinateur a choisie :", ordi)
            time.sleep(1)

            # Si le choix de l'ordinateur est ciseaux
            if ordi == "Ciseaux":
                print("Dommage il y a égalité")
                time.sleep(1)
                print("Nombre de victoire : ", Score_J, "Nombre de défaite", Score_O)
                time.sleep(1)
                a = input("Voulez-vous rejouer ? :")

            # Si le choix de l'ordinateur est pierre
            if ordi == "Pierre":
                print("Dommage vous avez perdu")
                time.sleep(1)
                Score_O += 1
                print("Nombre de victoire : ", Score_J, "Nombre de défaite", Score_O)
                time.sleep(1)
                a = input("Voulez-vous rejouer ? :")

            # Si le choix de l'ordinateur est Papier
            if ordi == "Papier":
                print("Bravo vous avez gagnez")
                time.sleep(1)
                Score_J += 1
                print("Nombre de victoire : ", Score_J, "Nombre de défaite", Score_O)
                time.sleep(1)
                a = input("Voulez-vous rejouer ? :")

C’est un long programme qui peux faire peur a première vues mais en faite il est plutôt simple et répétitif !

Une fois le pierre papier ciseaux fait, nous nous sommes attaqué à notre dernier jeu, le memory bien plus rapide à faire.

def memoire():
    reponse = "Oui" or "oui"
    points = 0
    while reponse == "Oui" or "oui":
        chiffre = randint(10000,99999)
        print(chiffre)
        time.sleep(1)
        clear()
        chiffre2 = int(input("Noter le nombre qui vient d'apparaitre :"))
        #Si la réponses est juste
        if chiffre == chiffre2:
            print("Bravo !")
            points = points + 1
            print("Vous avez ", points , "points")
        #Si la réponses est fausse
        else:
            print("Dommage ! Tu as eu faux")
            print("Vous avez",points , "points")
        
        #On continue ?
        reponse = input("Veux tu continuer ? : ")
        if reponse == "Non" or "non":
            break
        
        
def clear():
    for i in range(80):
        print(" ")

Le menu
En fin, il nous a fallu créer notre menu, pour pouvoir sélectionner le jeux que l’on souhaite !

Pour cela nous avons insérer une image créée sur Canva en guise de menu

#Affiche l'image qui permet de choisir ce que l'on veux faire

TKI_Principal = tkinter.Tk ( )

IMG_Origine = tkinter.PhotoImage ( file = "image.png" )

BUT_Quitter = tkinter.Button ( TKI_Principal , text = "Quitter" , command = TKI_Principal.destroy )
LAB_Logo = tkinter.Label ( TKI_Principal , image = IMG_Origine , relief = "solid" , bg = "white" )

LAB_Logo.pack ( )
BUT_Quitter.pack  ( )

TKI_Principal.bind("l", lambda event: love())
TKI_Principal.bind("m", lambda event: memoire())
TKI_Principal.bind("g", lambda event: pierre_papier_ciseaux())

TKI_Principal.mainloop ( )

Et pour mieux coller à l’univers multi gaming, nous avons ajouter une petit musique qui correspond parfaitement à cet univers.

import winsound
winsound.PlaySound('music.wav', winsound.SND_FILENAME|winsound.SND_ASYNC)

Mention spéciale

Problème rencontré
Nous avons rencontré des problèmes avec le menu en tkinter mais aussi avec le module python Keyboard.

Solution
Pour le menu en tkinter notre équipe a suivie un tuto sur Youtube et nous avons aussi commencer a lire la documentation qui est très complexe et complète ! Et c’est comme cela que nous avons réussi notre objectif de création d’un menu. Quant au module Keyboard notre équipe a donc étudier comment l’importer sur un ordinateur que n’a pas installé le module keybord depuis le terminal de commande (powersheel). La solution était simplement de télécharger le package de code python dans le projet directement.

Conclusion

Pour pouvoir jouer à notre projet, téléchargez le code par l’intermédiaire du lien ci-dessous. Le menu est intuitif et dans le thème du multi gaming, de plus les petites surprises, les eastereggs, ajoutent une touche comique à ces jeux aléatoires .

Amusez-vous bien !

Téléchargement