Créer un jeu Pacman en Python avec du code - Pythondex (2024)

Programmes de jeux Python

Dernière mise à jour le 8 juin 2023 parJarvis Silva

Aujourd'hui, dans ce tutoriel, nous allons créer un jeu Pacman en Python, Pacman est l'un des jeux les plus populaires, j'avais l'habitude de jouer à ce jeu quand j'étais enfant, c'est un jeu très simple, vous pouvez toujours jouer à ce jeu si vous avez Google Play Games. il est préinstallé dessus.

Si vous n'avez pas beaucoup de connaissances sur le développement de jeux Python, cela va être difficile pour vous mais ne vous inquiétez pas, je vous fournirai le code Python et vous expliquerai son fonctionnement.

Créer un jeu Pacman en utilisant Python

Pour créer ce jeu Pacman en python, j'utiliserai lebibliothèque python de jeux gratuits.Il possède une collection de jeux python gratuits, vous pouvez utiliser ce module pour créer des jeux en python.

Voyons maintenant étape par étape comment créer un jeu Pacman en python. Je vais vous fournir le code python pour le jeu Pacman, alors lisez jusqu'à la fin.

1. Installez et configurez Python

Si Python est installé, ignorez ceci. La première étape consiste à installer Python, alors allez dans lesite officiel de pythonet téléchargez la dernière version de Python.

Après le téléchargement, démarrez le programme d'installation de Python et terminez la configuration, il installera Python sur votre ordinateur.

2. Installez la bibliothèque Python de jeux gratuits

Vous devez maintenant installer la bibliothèque python de freegames, créer d'abord un nouveau dossier pour ce projet, ouvrir une invite de commande à l'emplacement du projet et coller la commande ci-dessous.

pip installer des jeux gratuits

Il installera le module python de freegames dans votre projet, alors créez maintenant un fichier python et passez à l'étape suivante

3. Code Python pour le jeu Pacman

à partir d'un choix d'importation aléatoiredepuis l'importation de tortues *depuis l'étage d'importation de jeux gratuits, vectorstate = {'score': 0}path = Turtle(visible=False)writer = Turtle(visible=False)aim = vector(5, 0)pacman = vector(- 40, -80)fantômes = [ [vecteur(-180, 160), vecteur(5, 0)], [vecteur(-180, -160), vecteur(0, 5)], [vecteur(100, 160) , vecteur(0, -5)], [vecteur(100, -160), vecteur(-5, 0)],]# fmt : offtiles = [ 0, 0, 0, 0, 0, 0, 0, 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1 , 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0 , 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0 , 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1 , 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1 , 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0 , 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0 , 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0 , 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1 , 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0 , 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1 , 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1 , 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0 , 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,]# fmt : ondef carré(x, y) : """ Dessinez un carré en utilisant le chemin en (x, y).""" path.up() path.goto(x, y) path.down() path.begin_fill() pour le nombre dans range(4) : path.forward(20 ) path.left(90) path.end_fill()def offset(point): """Décalage de retour du point dans les tuiles.""" x = (floor(point.x, 20) + 200) / 20 y = ( 180 - floor(point.y, 20)) / 20 index = int(x + y * 20) return indexdef valid(point): """Return True si le point est valide dans les tuiles.""" index = offset(point ) si tuiles[index] == 0 : renvoie Faux index = offset (point + 19) si tuiles[index] == 0 : renvoie Faux retour point.x % 20 == 0 ou point.y % 20 == 0def world (): """Dessiner le monde en utilisant le chemin.""" bgcolor('black') path.color('blue') pour l'index dans la plage (len(tiles)) : tuile = tuiles[index] si tuile > 0 : x = (index % 20) * 20 - 200 y = 180 - (index // 20) * 20 square(x, y) si tuile == 1 : path.up() path.goto(x + 10, y + 10) path.dot(2, 'white')def move() : """Déplacer Pacman et tous les fantômes."""writer.undo()writer.write(state['score']) clear() si valide (pacman + aim) : pacman.move(aim) index = offset(pacman) si tuiles[index] == 1 : tuiles[index] = 2 state['score'] += 1 x = (index % 20) * 20 - 200 y = 180 - (index // 20) * 20 square(x, y) up() goto(pacman.x + 10, pacman.y + 10) dot(20, 'jaune') pour point, cours en fantômes : si valide (point + cours) : point.move (cours) sinon : options = [ vecteur (5, 0), vecteur (-5, 0), vecteur (0, 5), vecteur (0, -5 ), ] plan = choix(options) course.x = plan.x course.y = plan.y up() goto(point.x + 10, point.y + 10) dot(20, 'red') update( ) pour le point, cap en fantômes : si abs(pacman - point) < 20 : return ontimer(move, 100)def change(x, y) : """Changer la visée de pacman si valide.""" si valide(pacman + vecteur(x, y)) : aim.x = x aim.y = ysetup(420, 420, 370, 0)hideturtle()tracer(False)writer.goto(160, 160)writer.color('blanc') écrivain.write(state['score'])écouter()onkey(lambda : changement(5, 0), 'Droite')onkey(lambda : changement(-5, 0), 'Gauche')onkey(lambda : changement (0, 5), 'Up')onkey(lambda: change(0, -5), 'Down')world()move()done()

Ci-dessus se trouve le code Python Pacman, si vous voyez dans le code qu'il utilise de nombreuses fonctions que vous ne connaissez peut-être pas, voyons une explication simple du fonctionnement de ce code :

  • Le code commence par importer les modules nécessaires, y compris lechoixfonction à partir dualéatoiremodule et leTortueclasse de latortuemodule.
  • Il définit un dictionnaire nomméÉtatpour suivre le score du jeu et l'initialise avec un score de 0.
  • La zone de jeu est représentée par une grille de tuiles. Lecarrelagelist stocke la configuration de la grille, où 0 représente les murs, 1 représente les pellets et 2 représente les pellets mangés.
  • Plusieurs fonctions d'assistance sont définies :
    • carré (x, y): Dessine un carré aux coordonnées données (x, y) en utilisant les graphiques Turtle.
    • décalage (point): Convertit un point dans le monde du jeu en un index dans lecarrelageliste.
    • point valide): Vérifie si un point donné est une position valide dans le monde du jeu, en tenant compte des murs et des limites.
    • monde(): Dessine le monde du jeu en itérant à travers lescarrelageliste et appelcarré()pour dessiner chaque tuile.
  • La boucle principale du jeu est définie dans lese déplacer()fonction. Il met à jour l'état du jeu, déplace le pacman et les fantômes, vérifie les collisions et met à jour l'affichage. La boucle est implémentée à l'aide d'appels récursifs àse déplacer()fonction avec un délai de 100 millisecondes.
  • Lechangement (x, y)La fonction est utilisée comme gestionnaires d’événements pour les touches fléchées. Il met à jour la visée du pacman en fonction de la touche fléchée enfoncée, si la nouvelle position est valide.
  • Le code configure la fenêtre et les graphiques du jeu, configure les écouteurs d'événements pour les pressions sur les touches, puis initialise le jeu en appelantmonde()etse déplacer(). Lefait()fonction à partir dutortueLe module est utilisé pour démarrer la boucle de jeu et garder la fenêtre ouverte.

Pour exécuter ce jeu, vous pouvez utiliserun compilateur python en ligneou exécutez-le sur votre ordinateur, lorsque vous exécutez ce programme, vous trouverez ci-dessous la sortie d'image que vous obtiendrez.

Make Pacman Game In Python With Code - Pythondex (1)

Utilisez les touches fléchées pour déplacer le joueur, si vous touchez les ennemis, le jeu sera terminé. Le jeu présente quelques bugs.

C'était le tutoriel sur la façon de créer un jeu Pacman, j'espère que vous avez trouvé ce tutoriel utile et utile, partagez-le avec vos amis intéressés par la création de jeux en python.

Voici d’autres tutoriels sur les jeux Python qui pourraient vous intéresser :

  • Créer un jeu de cuirassé en python.
  • Créer un jeu de ninja aux fruits en python.
  • Création d'un jeu Minecraft en clone Python.

J'espère que vous avez trouvé ce que vous cherchiez dans ce tutoriel et si vous voulez plus de tutoriels Python comme celui-ci, rejoignez notreChaîne de télégrammepour les futures mises à jour.

Merci d'avoir lu, bonne journée 🙂

Créer un jeu Pacman en Python avec du code - Pythondex (2024)
Top Articles
Latest Posts
Article information

Author: Kelle Weber

Last Updated:

Views: 6531

Rating: 4.2 / 5 (53 voted)

Reviews: 92% of readers found this page helpful

Author information

Name: Kelle Weber

Birthday: 2000-08-05

Address: 6796 Juan Square, Markfort, MN 58988

Phone: +8215934114615

Job: Hospitality Director

Hobby: tabletop games, Foreign language learning, Leather crafting, Horseback riding, Swimming, Knapping, Handball

Introduction: My name is Kelle Weber, I am a magnificent, enchanting, fair, joyous, light, determined, joyous person who loves writing and wants to share my knowledge and understanding with you.