<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Sessions Python :: CoderDojo Python &amp; Pygame</title><link>https://python.coderdojohasselt.be/fr/sessions/python/index.html</link><description>Dix sessions dans lesquelles tu construis chaque mois un jeu Pygame complet. Chaque session contient une fiche de travail, un cheatsheet et du code de départ à télécharger.
Session 1 : Catch the Stars : Une étoile tombe, tu l’attrapes. Tu écris ta première boucle draw()/update() et tu déplaces un sprite avec les flèches. Session 2 : Dodge Meteors : Des météores apparaissent et tombent. Tu les gardes dans une liste, tu les supprimes quand ils sortent de l’écran et tu retires une vie à chaque collision. Session 3 : Space Blaster : Les ennemis descendent, tu les abats. Tu crées des projectiles avec la touche ESPACE et tu détectes les collisions avec une boucle sur une liste. Session 4 : Pong : Deux raquettes, une balle. Tu apprends pygame.Rect, tu fais rebondir la balle en inversant sa vitesse et tu tiens le score pour deux joueurs. Session 5 : Breakout : Casser des briques avec une balle qui rebondit. Tu ajoutes des effets sonores avec pygame.mixer et tu construis un écran de victoire et de défaite. Session 6 : Platformer : Sauter et tomber sur des plateformes. Tu simules la gravité avec une variable vel_y et tu détectes les collisions avec les plateformes grâce à pygame.Rect. Session 7 : Bug Zapper : Des bugs rampent, tu les abats. Tu écris ta première classe avec __init__ et tu crées une sous-classe par héritage. Session 8 : Sky Highway : Un vaisseau volant sur une route qui défile. Tu fais apparaître des obstacles par la droite et tu augmentes la vitesse à mesure que le score monte. Session 9 : Boss Battle : Un boss avec une barre de HP et des phases d’attaque. Tu construis une machine à états qui adapte le tir et les déplacements à chaque phase. Session 10 : Mon jeu : Pas de consigne fixe. Tu choisis le genre et tu combines tout ce que tu as appris en neuf sessions dans ton propre jeu.</description><generator>Hugo</generator><language>fr-BE</language><atom:link href="https://python.coderdojohasselt.be/fr/sessions/python/index.xml" rel="self" type="application/rss+xml"/><item><title>Session 1 : Catch the Stars</title><link>https://python.coderdojohasselt.be/fr/sessions/python/01-catch-the-stars/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://python.coderdojohasselt.be/fr/sessions/python/01-catch-the-stars/index.html</guid><description>Dans cette session, tu construis un mini-jeu : une étoile tombe et toi, tu l’attrapes avec un panier. À la fin de la session, tout bouge, le jeu compte combien d’étoiles tu attrapes et tu as ton premier jeu à toi.
Ce que tu vas apprendre aujourd’hui Utiliser des variables pour placer des objets La fonction draw() : ce que tu dessines à chaque frame La fonction update() : ce qui change à chaque frame Les entrées clavier : bouger avec les flèches Étape 0 : Installation Ouvre Thonny. Télécharge le starter via ce lien, décompresse le ZIP et ouvre main.py dans Thonny. Clique sur le bouton vert Run. Tu vois une fenêtre bleu foncé avec un panier en bas et une étoile en haut, mais rien ne bouge encore. Des problèmes ? Va voir Installer Thonny. Étape 1 : Laisse tomber l’étoile La fonction update() tourne 60 fois par seconde. Tout ce que tu y mets est donc exécuté 60 fois par seconde. C’est comme ça que le mouvement fonctionne dans un jeu.</description></item><item><title>Session 2 : Dodge Meteors</title><link>https://python.coderdojohasselt.be/fr/sessions/python/02-dodge-meteors/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://python.coderdojohasselt.be/fr/sessions/python/02-dodge-meteors/index.html</guid><description>Ton vaisseau flotte dans l’espace sombre pendant que des météores arrivent du haut vers le bas. Évite-les, ou perds une vie. Plus tu survis longtemps, plus ils vont vite. Et cette fois, tu construis aussi Dojo Defender : le plus grand projet qui grandit à chaque session.
Ce que tu vas apprendre aujourd’hui Utiliser des listes pour garder plusieurs objets Spawner des objets (les créer) et les supprimer Tenir les vies à jour et afficher un écran de game over Dojo Defender : ajouter ton propre vaisseau au plus grand projet Étape 0 : Installation Ouvre Thonny. Télécharge le starter via ce lien, décompresse le ZIP et ouvre main.py. Clique sur Run. Tu vois ton vaisseau en bas, mais aucun météore ne tombe encore. Des problèmes ? Va voir Installer Thonny. Étape 1 : Fais apparaître des météores Complète la fonction spawn_meteor(). Un météore est un Actor qui commence en haut de l’écran à une position x au hasard :</description></item><item><title>Session 3 : Space Blaster</title><link>https://python.coderdojohasselt.be/fr/sessions/python/03-space-blaster/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://python.coderdojohasselt.be/fr/sessions/python/03-space-blaster/index.html</guid><description>Les ennemis sont en formation en haut de l’écran. Toi, tu es en bas avec un vaisseau et un seul objectif : les éliminer tous avant qu’ils atteignent le fond. Appuie sur ESPACE pour tirer, et ne rate pas.
Ce que tu vas apprendre aujourd’hui Garder les projectiles dans une liste Créer un projectile quand tu appuies sur ESPACE La collision entre les projectiles et les ennemis Game over quand un ennemi atteint le fond Étape 0 : Installation Ouvre Thonny. Télécharge le starter via ce lien, décompresse le ZIP et ouvre main.py. Clique sur Run. Tu vois le vaisseau en bas et 12 ennemis dans une grille, mais rien ne bouge et tu ne sais pas encore tirer. Étape 1 : Fais bouger le vaisseau Le vaisseau bouge déjà avec les flèches. Vérifie le code dans update(). Fais en sorte que le vaisseau ne sorte pas de l’écran :</description></item><item><title>Session 4 : Pong</title><link>https://python.coderdojohasselt.be/fr/sessions/python/04-pong/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://python.coderdojohasselt.be/fr/sessions/python/04-pong/index.html</guid><description>Deux raquettes, une balle : le Pong classique. Mais il y a une surprise : dans cette session, tu écris le jeu en vrai pygame, sans pgzrun. Tu apprends à installer toi-même la game loop. C’est comme ça que marchent la plupart des vrais jeux.
Ce que tu vas apprendre aujourd’hui La game loop pygame : events, update, draw pygame.Rect pour les rectangles et les collisions Faire rebondir la balle (inverser la vitesse) Compter les points pour deux joueurs Étape 0 : Installation Ouvre Thonny. Télécharge le starter via ce lien, décompresse le ZIP et ouvre main.py. Clique sur Run. Tu vois deux raquettes et une balle jaune au milieu, mais la balle ne bouge pas encore. Différence avec pgzrun : il n’y a plus de fonctions draw() et update(). Tout est dans une seule boucle while running:.</description></item><item><title>Session 5 : Breakout</title><link>https://python.coderdojohasselt.be/fr/sessions/python/05-breakout/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://python.coderdojohasselt.be/fr/sessions/python/05-breakout/index.html</guid><description>Une balle rebondit dans tous les sens et casse des rangées de briques colorées. Tu contrôles la raquette pour garder la balle en l’air. Et cette fois, tu l’entends aussi : il y a des effets sonores à chaque collision.
Ce que tu vas apprendre aujourd’hui Charger et jouer un son avec pygame.mixer Les collisions avec plusieurs objets (une liste de briques) Faire rebondir la balle dans la bonne direction Construire un écran de victoire et de défaite Étape 0 : Installation Ouvre Thonny. Télécharge le starter via ce lien, décompresse le ZIP et ouvre main.py. Clique sur Run. Tu vois la raquette, la balle et les briques. La balle bouge déjà à l’horizontale mais pas à la verticale. C’est à toi de changer ça. Étape 1 : Fais bouger la balle à la verticale Cherche cette ligne dans le starter :</description></item><item><title>Session 6 : Platformer</title><link>https://python.coderdojohasselt.be/fr/sessions/python/06-platformer/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://python.coderdojohasselt.be/fr/sessions/python/06-platformer/index.html</guid><description>Dans cette session, tu construis un micro-platformer. Ton personnage a de la gravité, peut sauter et ramasse des étoiles sur les plateformes. Pour la première fois, tu utilises pygame directement, sans pgzrun, et tu ajoutes des effets sonores avec pygame.mixer.
Ce que tu vas apprendre aujourd’hui Simuler la gravité avec une variable vel_y Sauter en rendant vel_y négatif Détecter les collisions avec les plateformes grâce à pygame.Rect Ramasser des items (collision avec les étoiles) Jouer des sons avec pygame.mixer Étape 0 : Installation Ouvre Thonny. Télécharge le starter via ce lien, décompresse le ZIP et ouvre main.py dans Thonny. Clique sur le bouton vert Run. Tu vois une fenêtre avec un personnage, des plateformes et des étoiles, mais le personnage ne tombe pas encore. Des problèmes ? Demande à un coach. Étape 1 : La gravité Dans un platformer, le personnage tombe en continu vers le bas, sauf s’il se trouve sur une plateforme. On simule ça avec vel_y : une vitesse verticale qui augmente à chaque frame à cause de la gravité.</description></item><item><title>Session 7 : Bug Zapper</title><link>https://python.coderdojohasselt.be/fr/sessions/python/07-bug-zapper/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://python.coderdojohasselt.be/fr/sessions/python/07-bug-zapper/index.html</guid><description>Les bugs tombent du haut vers le bas. Toi, tu tires vers le haut pour les toucher. Dans cette session, tu apprends la POO : tu écris ta première classe à toi (Bug), puis deux sous-classes : une qui oscille et une qui plonge sur toi. Les classes sont les briques de presque tous les gros programmes.
Ce que tu vas apprendre aujourd’hui Écrire une classe avec __init__ et tes propres méthodes L’héritage : une sous-classe qui étend une classe existante Garder les projectiles dans une liste La détection de collision entre les projectiles et les bugs Étape 0 : Installation Ouvre Thonny. Télécharge le starter via ce lien, décompresse le ZIP et ouvre main.py dans Thonny. Clique sur Run. Tu vois un écran avec un joueur en bas, mais pas encore de bugs et pas de projectiles. Des problèmes ? Demande à un coach. Étape 1 : Faire apparaître des bugs et tirer La classe Bug</description></item><item><title>Session 8 : Sky Highway</title><link>https://python.coderdojohasselt.be/fr/sessions/python/08-sky-highway/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://python.coderdojohasselt.be/fr/sessions/python/08-sky-highway/index.html</guid><description>Ton vaisseau vole dans une route aérienne sans fin. L’arrière-plan défile derrière toi, des obstacles rouges arrivent par la droite, et des étoiles rapportent des points. Plus tu survis longtemps, plus ça va vite !
Ce que tu vas apprendre aujourd’hui Faire un arrière-plan qui défile avec une variable scroll_x Faire apparaître des objets qui vont de droite à gauche La détection de collision avec des vies L’augmentation de la difficulté : accélérer à mesure que le score monte Étape 0 : Installation Ouvre Thonny. Télécharge le starter via ce lien, décompresse le ZIP et ouvre main.py dans Thonny. Clique sur Run. Tu vois un écran statique avec un vaisseau et un fond de ciel, mais rien ne bouge encore. Des problèmes ? Demande à un coach. Étape 1 : Faire défiler l’arrière-plan Un arrière-plan qui défile donne l’illusion du mouvement. On dessine l’arrière-plan deux fois côte à côte et on décale la position à chaque frame.</description></item><item><title>Session 9 : Boss Battle</title><link>https://python.coderdojohasselt.be/fr/sessions/python/09-boss-battle/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://python.coderdojohasselt.be/fr/sessions/python/09-boss-battle/index.html</guid><description>Le boss final t’attend. Il va et vient, tire des projectiles et devient de plus en plus dangereux à mesure que ses HP baissent. Toi, tu tires en retour, tu suis ses HP sur une barre, et tu survis à trois phases. C’est la session la plus difficile, et la plus satisfaisante si tu y arrives.
Ce que tu vas apprendre aujourd’hui Dessiner une barre de HP à l’écran Une state machine : le boss ne se comporte pas pareil selon la phase Faire tirer le boss avec un timer de projectiles Activer des phases à des seuils de HP Étape 0 : Installation Ouvre Thonny. Télécharge le starter via ce lien, décompresse le ZIP et ouvre main.py dans Thonny. Clique sur Run. Tu vois le boss en haut, ton vaisseau en bas. Pas encore de mouvement, pas encore de projectiles. Des problèmes ? Demande à un coach. Étape 1 : Faire bouger le boss Le boss va et vient sur l’écran. Quand il touche le bord, il repart dans l’autre sens.</description></item><item><title>Session 10 : Mon jeu</title><link>https://python.coderdojohasselt.be/fr/sessions/python/10-my-game/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://python.coderdojohasselt.be/fr/sessions/python/10-my-game/index.html</guid><description>Cette session est la tienne. Pas d’étapes fixes, pas de mécaniques obligatoires. C’est toi qui décides ce que tu construis, et aujourd’hui tu le fais.
Ton jeu, tes règles En neuf sessions, tu as appris :
Les variables, les fonctions et les boucles de jeu Le clavier et la souris Les sprites, la détection de collision et le score Le son et l’animation Les classes et l’héritage Les arrière-plans qui défilent, le spawn et la difficulté qui augmente Les barres de HP, les state machines et l’IA du boss Toutes ces briques sont prêtes. Aujourd’hui, tu les combines dans ton propre jeu.</description></item></channel></rss>