from time import sleep #======fonctions utiles====== def cls(): """efface la console""" print("\033[H\033[J", end="") def affiche_fichier(path): """affiche le contenu d'un fichier - ici ce seront des fichiers textes""" with open(path, 'r', encoding="utf8") as file: for line in file: print(line, end="") print("") def message_avec_suite(msg): """affiche un message lettre par lettre et attend que l'utilisateur presse 'Entrée'""" for lettre in msg: print(lettre, end="", flush=True) sleep(0.02) input("\n\n[Entrée]") cls() #===========Intros=========== def intro_longue(): """intro du jeu, version longue retourne le nom et la catégorie du joueur""" cls() #intro message_avec_suite("Vous vous trouvez là, en face d'une porte mystérieuse.") message_avec_suite("Hésitant un peu, vous la poussez, pour trouver un être étrange, assis derrière un bureau moderne.") message_avec_suite("La porte se referme violemment derrière vous, comme par \033[3mmagie\033[0m.") message_avec_suite("Vous êtes dans une fâcheuse position.") affiche_fichier("ascii/titre_accueil.txt") input("Appuyez sur Entrée pour jouer...") cls() #salutations message_avec_suite("L'être étrange vous salue, d'une voix artificielle : \n") affiche_fichier("ascii/etreEtrange.txt") #nom du joueur nomJoueur1 = input("\n\n Quel est ton nom ? : ") while nomJoueur1 == "": nomJoueur1 = input("J'aimerais bien savoir à qui je m'adresse ; quel est ton nom ? : ") #42 if nomJoueur1 == "42": youWon() cls() #2e partie de l'intro #demander si 2 1ere l. pas superflues message_avec_suite("Bon, "+nomJoueur1+", je vais t'offrir une seule chance de sortir d'ici.\nTu vas devoir affronter un de mes sbires.\nSi, par \033[3mchance\033[0m, tu arrives à gagner le combat, je te laisse sortir.") q_reth = input("Acceptes-tu mon petit jeu ? (oui/oui) ") if q_reth != "oui": print("Parfait ! J'étais sûr que tu accepterais.") message_avec_suite("Alors commençons...") ##choix des persos print("Tu peux incarner 4 personnages.\nTous disposent d'une potion énergisante, qu'ils prendront automatiquement avant le combat.\n\n") #guerrier print("Le premier est le guerrier.") affiche_fichier("ascii/guerrier.txt") print("Voici ses stats: \nclasse d'attaque : 10 \nclasse de défense : 8") print("Son arme préférée est l'épée.") input("\n\nAppuyez sur Entrée pour voir le personnage suivant...") cls() #magicien print("Le deuxième est le magicien.") affiche_fichier("ascii/magicien.txt") print("Voici ses stats: \nclasse d'attaque : 10 \nclasse de défense : 7") print("Son arme préférée est le bâton.") input("\n\nAppuyez sur Entrée pour voir le personnage suivant...") cls() #voleur print("Le troisième est le voleur.") affiche_fichier("ascii/voleur.txt") print("Voici ses stats: \nclasse d'attaque : 3 \nclasse de défense : 3") print("Son arme préférée est la dague.") input("\n\nAppuyez sur Entrée pour voir le personnage suivant...") cls() #elfe print("Le dernier est l'elfe.") affiche_fichier("ascii/elfe.txt") print("Voici ses stats: \nclasse d'attaque : 8 \nclasse de défense : 8") print("Son arme préférée est l'arc.") input("\n\nAppuyez sur Entrée pour choisir votre personnage...") cls() catJoueur1 = input("Donc, quel personnage choisis-tu ? \n Ecris le nom de ta catégorie en toutes lettres (guerrier/magicien/voleur/elfe) : ") while not(catJoueur1 in ["guerrier","magicien", "voleur", "elfe"]): cls() print("Tu dois choisir une catégorie parmi : \n guerrier, \n magicien, \n voleur, \n et elfe.") catJoueur1 = input("Donc, quel personnage choisis-tu ? \n Ecris le nom de ta catégorie en toutes lettres (guerrier/magicien/voleur/elfe) : ") message_avec_suite("Que le combat commence !...") return nomJoueur1, catJoueur1 def intro_courte(): """intro du jeu, version courte retourne le nom et la catégorie du joueur""" nomJoueur1 = input("nom : ") #42 if nomJoueur1 == "42": youWon() print("Les catégories sont : \n guerrier => entrez 0 \n magicien => entrez 1 \n voleur => entrez 2 \n elfe => entrez 3.") catJoueur1 = input("catégorie : ") while catJoueur1 not in ["0", "1", "2", "3"]: print("Les catégories sont : \n guerrier => entrez 0 \n magicien => entrez 1 \n voleur => entrez 2 \n elfe => entrez 3.") catJoueur1 = input("catégorie : ") catJoueur1 = ["guerrier","magicien","voleur","elfe"][int(catJoueur1)] return nomJoueur1, catJoueur1 #========Fins de partie============== def youWon(nom): """affiche message de félicitation lorsque le joueur a gagné""" print("Cher "+nom+", tu as gagné la partie ! (et ta liberté !)") affiche_fichier("ascii/youWon.txt") def gameOver(): """affiche message de game over lorsque le joueur a perdu""" affiche_fichier("ascii/game_over.txt") print("Dommage...")