<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Dojo Defender : Session 1 :: CoderDojo Python &amp; Pygame</title><link>https://python.coderdojohasselt.be/fr/dojo-defender/session-1/index.html</link><description>Ton vaisseau spatial a atterri dans l’espace sombre. Il est temps de le faire vivre. Dans cette session, tu ajoutes un vaisseau que tu contrôles et tu fais tomber des astéroïdes. Évite-les ou perds une vie. Combien de temps tu survis ?
Ce que tu vas apprendre aujourd’hui Utiliser des listes pour garder plusieurs astéroïdes Spawner des objets et les supprimer Détecter des collisions avec colliderect Tenir les vies à jour et afficher un effet d’explosion Forcer le game over quand tes vies sont épuisées Étape 0 : Installation Ouvre Thonny. Télécharge le starter Dojo Defender, décompresse le ZIP et ouvre main.py. Clique sur Run. Tu vois un écran bleu foncé avec ton vaisseau spatial en bas. Tu sais déjà le déplacer avec les flèches. Des problèmes ? Va voir Installer Thonny. Étape 1 : Fais apparaître des astéroïdes Un jeu sans danger, c’est ennuyeux. Ajoute une liste qui garde tous les astéroïdes, et une fonction qui crée de nouveaux astéroïdes :</description><generator>Hugo</generator><language>fr-BE</language><atom:link href="https://python.coderdojohasselt.be/fr/dojo-defender/session-1/index.xml" rel="self" type="application/rss+xml"/><item><title>Dojo Defender Session 1 : Cheatsheet</title><link>https://python.coderdojohasselt.be/fr/dojo-defender/session-1/cheatsheet/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://python.coderdojohasselt.be/fr/dojo-defender/session-1/cheatsheet/index.html</guid><description># Déplacer le vaisseau if keyboard.left and ship.x > 30: ship.x -= 5 if keyboard.right and ship.x &lt; WIDTH - 30: ship.x += 5 # Faire apparaître un astéroïde def spawn_asteroid(): rock = Actor('asteroid_big') rock.x = random.randint(30, WIDTH - 30) rock.y = -30 rock.speed = random.uniform(3, 5) asteroids.append(rock) # Timer chaque seconde (60 frames) timer += 1 if timer % 60 == 0: spawn_asteroid() # Faire tomber les astéroïdes et les supprimer for rock in asteroids[:]: rock.y += rock.speed if rock.y > HEIGHT + 30: asteroids.remove(rock) # Détection de collision if rock.colliderect(ship) and not invincible: lives -= 1 # lancer l'explosion # Jouer l'explosion explosion.pos = (ship.x, ship.y) explosion.image = 'explosion_1' explosion_frame = 1 explosion_timer = 5 explosion_active = True ship.visible = False # Écran de game over if game_over: screen.draw.text("GAME OVER", center=(WIDTH/2, HEIGHT/2), color="red", fontsize=60) # Afficher les vies screen.draw.text(f"Vies : {lives}", (10, 40), color="red", fontsize=24)</description></item><item><title>Dojo Defender Session 1 : Démo</title><link>https://python.coderdojohasselt.be/fr/dojo-defender/session-1/demo/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://python.coderdojohasselt.be/fr/dojo-defender/session-1/demo/index.html</guid><description>Comment montrer la solution Ouvre un terminal dans le dossier du projet. Lance : uv run python3 code/sessions/02-dodge-meteors/dojo-defender-solution/main.py Montre : Le vaisseau bouge à gauche et à droite avec les flèches. Chaque seconde, un astéroïde apparaît en haut. Les astéroïdes tombent à une vitesse variable (3-5). En cas de collision : le vaisseau disparaît, l’animation d’explosion joue, le vaisseau réapparaît. Après 3 hits : game over avec le texte « GAME OVER » et le score final. Le score monte à chaque seconde où tu survis.</description></item><item><title>Dojo Defender Session 1 : Notes du coach</title><link>https://python.coderdojohasselt.be/fr/dojo-defender/session-1/mentor-notes/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://python.coderdojohasselt.be/fr/dojo-defender/session-1/mentor-notes/index.html</guid><description>Objectif de cette session Après cette session, un ninja sait :
Créer et gérer une liste d’astéroïdes avec Actor Faire apparaître des astéroïdes avec un timer et les supprimer quand ils sortent de l’écran Détecter des collisions avec colliderect Tenir les vies à jour et forcer le game over Afficher une animation d’explosion simple Préparation (30 min avant la session) Les ZIP du starter prêts sur USB et sur le site : dojo-defender-s2-starter.fr.zip et dojo-defender-s2-solution.fr.zip. Lancer le starter une fois sur le portable de la salle dojo. Expliquer que Dojo Defender revient à chaque session — encourage-les à bien garder le code. Répartition du temps (3 heures) Cette session fait partie intégrante de la session 2 normale (Dodge Meteors). Utilise le temps comme ceci :</description></item></channel></rss>