Activité Python : La Tortue et le Labyrinthe

Durée : 1 heure

Objectifs : Ajouter des obstacles à éviter et détecter les collisions dans votre jeu.

Outil : Thonny.

Mission : Éviter les obstacles

Votre tortue aventurière doit traverser un labyrinthe ! Elle doit atteindre le trésor sans toucher les obstacles et sans laisser de trace. Si elle touche un obstacle, c’est perdu. Prêts à relever ce défi ?

Préparation

Reprenez votre code de "La Tortue Aventurière". Voici un rappel du code de base avec des commentaires pour comprendre chaque ligne :

import turtle           # Importe le module turtle pour dessiner et déplacer des objets

# Créer la tortue aventurière
t = turtle.Turtle()     # Crée une tortue qu’on appelle "t" pour la contrôler
t.shape("turtle")       # Donne à la tortue une forme de tortue (mignon, non ?)
t.speed(3)              # Définit la vitesse (3 = modérée, entre 1 et 10)

# Créer la cible (trésor)
cible = turtle.Turtle() # Crée une autre tortue qu’on appelle "cible" pour le trésor
cible.shape("circle")   # Lui donne une forme de cercle
cible.color("red")      # La colore en rouge pour qu’elle soit visible
cible.penup()           # Lève le stylo pour ne pas tracer quand elle bouge
cible.goto(100, 50)     # Place la cible à la position (100, 50) sur l’écran

screen = turtle.Screen() # Crée une fenêtre qu’on appelle "screen" pour afficher le jeu
screen.listen()         # Dit à la fenêtre d’écouter les touches du clavier

turtle.done()           # Garde la fenêtre ouverte pour voir le résultat
    

Note : Assurez-vous que vos fonctions de déplacement et verifier_victoire() fonctionnent.

Défi 1 : Déplacer la tortue sans tracer

Faites bouger la tortue avec les flèches du clavier, sans qu’elle laisse de trace :

Exemple : Voici comment coder aller_haut() sans tracer :

def aller_haut():
    t.penup()         # Lève le stylo pour ne pas tracer
    t.setheading(90)  # Oriente vers le haut
    t.forward(20)     # Avance de 20 unités
    t.pendown()       # Repose le stylo (optionnel)

screen.onkey(aller_haut, "Up")
        

Votre tâche : Créez aller_bas(), aller_gauche() et aller_droite() en suivant cet exemple, et associez-les aux touches "Down", "Left" et "Right".

Indices :

Test : La tortue bouge-t-elle sans laisser de ligne ?

Défi 2 : Ajouter des obstacles

Ajoutez un obstacle à éviter :

Défi 3 : Détecter les collisions

Faites en sorte que toucher l’obstacle affiche un message :

Test : Touche-t-elle l’obstacle ou la cible ? Que se passe-t-il ?

Bonus : Bloquer le mouvement sur les obstacles

Empêchez la tortue de traverser l’obstacle :

Test : Essayez de traverser l’obstacle. Que se passe-t-il ?

Personnalisation

Rendez votre labyrinthe unique :

À vous de jouer !

Créez votre programme dans Thonny, testez-le et montrez votre labyrinthe à vos camarades. Qui atteindra le trésor sans perdre ? Soumettez votre code via le Google Form avec 3 lignes de commentaires expliquant vos choix.

Ressources utiles

Bon courage, explorateurs du labyrinthe ! - 2025 O. Couvercelle