# 💧 WATER RESCUE — Guide Pédagogique & Fiche Atelier Scratch 3.0

**Public cible :** Enfants de 7 à 12 ans (Cycles 2 et 3 / Collège 6e)  
**Durée conseillée :** Séance découverte de 1h30 à 2h00  
**Logiciel :** Scratch 3.0 (en ligne sur [scratch.mit.edu](https://scratch.mit.edu/projects/editor) ou logiciel Scratch Desktop hors ligne)  
**Fichier du projet complet :** `Water Rescue.sb3`

---

## 🎯 1. Résumé du Jeu & Intention Pédagogique

Dans **"Water Rescue"**, les enfants incarnent un jeune coureur dans une rue urbaine animée. Une camionnette de livraison d'eau perd des bouteilles sur la chaussée. Le joueur doit diriger son personnage de gauche à droite pour récupérer **20 bouteilles d'eau**, tout en évitant les véhicules (voitures, motos rapides et taxis).

Ce jeu permet d'aborder de manière très progressive et ludique les **4 piliers de l'algorithmique visuelle** :
1. **Les Événements & Contrôles** (Drapeau vert, touches fléchées).
2. **Les Coordonnées cartésiennes** (Axe horizontal X et axe vertical Y).
3. **Les Variables & Conditions** (Score, vitesse, état du jeu `si ... alors`).
4. **Le Clonage & la Diffusion de Messages** (Génération d'ennemis/bonus et communication inter-sprites).

---

## 🗺️ 2. Les 4 Missions Pédagogiques pour les Élèves

### 🏃 Mission 1 : Fais courir ton personnage !
* **Notions abordées :** Événements, Déplacement sur l'axe X, Limites de l'écran, Costumes alternés.
* **Défi :** 
  1. Utiliser les blocs `quand la touche [flèche droite] est pressée` pour avancer (`changer x par 7`).
  2. Utiliser `quand la touche [flèche gauche] est pressée` pour reculer (`changer x par -7`).
  3. **L'astuce de sécurité :** Empêcher le personnage de sortir du trottoir grâce à une condition :
     ```text
     si <(abscisse x) > -170> alors
         changer x par -7
     fin
     ```
  4. **L'animation :** Créer l'illusion de course en alternant les costumes `Course 1` et `Course 2` toutes les 0.12 secondes avec le bloc `costume suivant`.

---

### 💧 Mission 2 : Récupère les bouteilles d'eau !
* **Notions abordées :** Détection de contact (Capteurs), Variables, Score, Sons.
* **Défi :**
  1. Comprendre le rôle de la variable `Score`.
  2. Programmer la chute de la bouteille du haut (`y = 160`) vers le bas avec `changer y par -5`.
  3. Détecter quand la bouteille touche le joueur :
     ```text
     si <touche le [Joueur] ?> alors
         ajouter à [Score] (1)
         jouer le son [Pop]
         supprimer ce clone
     fin
     ```
  4. Faire disparaître la bouteille si elle touche le bas de la route (`ordonnée y < -165`).

---

### 🚗 Mission 3 : Évite les véhicules dangereux !
* **Notions abordées :** Clonage automatique, Vitesse dynamique, Game Over.
* **Défi :**
  1. Faire apparaître des voitures en haut de la route à une position X aléatoire (`nombre aléatoire entre -150 et 150`).
  2. Faire descendre la voiture en utilisant la variable `Vitesse` :
     ```text
     changer y par ((0) - (Vitesse))
     ```
  3. Détecter la collision fatale :
     ```text
     si <touche le [Joueur] ?> alors
         mettre [Jeu] à 2
         envoyer à tous [GAME OVER]
         supprimer ce clone
     fin
     ```
  4. Comparer la voiture avec la **Moto** (qui roule encore plus vite : `Vitesse + 2`) et le **Taxi** (qui apparaît moins souvent).

---

### 🚀 Mission 4 : Améliore ton jeu et règle la difficulté !
* **Notions abordées :** Équilibrage de jeu (*Game Design*), Événements de Victoire et Rejouabilité.
* **Défi :**
  1. **Accélération progressive :** Programmer le `GameManager` pour augmenter la vitesse selon le score :
     - Si `Score >= 5` ➔ `Vitesse = 6`
     - Si `Score >= 10` ➔ `Vitesse = 7`
     - Si `Score >= 15` ➔ `Vitesse = 8`
  2. **Condition de Victoire :**
     - Si `Score >= 20` ➔ `envoyer à tous [VICTOIRE]` et jouer la fanfare !
  3. **Bouton Rejouer :** Programmer le bouton pour réinitialiser les variables et relancer une partie sans recharger la page.
  4. **Personnalisation créative :** Changer les couleurs des voitures, ajouter un klaxon ou créer un nouvel obstacle (trottinette, skate).

---

## 🧩 3. Guide des Sprites et Architecture du Projet

| Sprite | Rôle dans le jeu | Blocs clés utilisés |
| :--- | :--- | :--- |
| **Stage (Scène)** | Décor de rue moderne, stocke les variables globales | `quand le drapeau vert est cliqué` |
| **Joueur** | Personnage contrôlé par l'enfant | `touche [flèche] pressée ?`, `costume suivant` |
| **Camionnette** | Traverse la route au début et perd des bouteilles | `répéter () fois`, `changer x par (4)` |
| **Conducteur** | Livreur d'eau souriant qui crie "Oups !" | `dire [Oups !] pendant (1.5) secondes` |
| **Bouteille** | Objet à collecter (+1 point) | `quand je commence comme un clone`, `touche [Joueur] ?` |
| **Voiture** | Obstacle de base | `glisser`, `changer y par ()`, `envoyer [GAME OVER]` |
| **Moto** | Obstacle ultra rapide | `Vitesse + 2` |
| **Taxi** | Obstacle urbain occasionnel | `attendre (nombre aléatoire entre 4.5 et 6.5)` |
| **GameManager** | Cerveau invisible du jeu (difficulté & victoire) | `si <Score > 19> alors envoyer [VICTOIRE]` |
| **Jouer** | Bouton vert de démarrage sur l'écran d'accueil | `quand ce sprite est cliqué`, `envoyer [START]` |
| **GameOver** | Panneau d'échec affiché en cas de choc | `quand je reçois [GAME OVER]`, `montrer` |
| **Victoire** | Panneau trophée affiché à 20 bouteilles | `quand je reçois [VICTOIRE]`, `montrer` |
| **Rejouer** | Bouton orange pour rejouer instantanément | `quand ce sprite est cliqué`, `envoyer [RESTART]` |

---

## 🚦 4. Déroulement suggéré de l'Atelier (1h45)

1. **Introduction & Démonstration (15 min) :**
   * Lancer le jeu `Water Rescue.sb3` sur le vidéoprojecteur.
   * Laisser un enfant tester la partie.
   * Poser la question : *"D'après vous, comment le jeu sait-il qu'on a touché une bouteille ?"*

2. **Étape 1 : Le Contrôleur du Joueur (25 min) :**
   * Réalisation de la **Mission 1** (flèches droite/gauche et limites de trottoir).
   * Ajout de l'animation de course.

3. **Étape 2 : La Pluie de Bouteilles (25 min) :**
   * Réalisation de la **Mission 2** (clones de bouteilles, score `+1`, son Pop).

4. **Étape 3 : Le Danger de la Route (25 min) :**
   * Réalisation de la **Mission 3** (voitures, motos, Game Over).

5. **Étape 4 : Défi Game Designer & Bilan (15 min) :**
   * Réalisation de la **Mission 4** (Vitesse qui augmente, fanfare de victoire).
   * Démonstration des variantes créées par les enfants.

---

## 💻 5. Comment ouvrir et utiliser le fichier `.sb3`

1. Rendez-vous sur le site officiel de Scratch : [https://scratch.mit.edu/projects/editor](https://scratch.mit.edu/projects/editor) (ou ouvrez l'application Scratch Desktop).
2. Dans le menu en haut à gauche, cliquez sur **Fichier** ➔ **Importer depuis votre ordinateur**.
3. Sélectionnez le fichier **`Water Rescue.sb3`**.
4. Cliquez sur le **Drapeau Vert** pour afficher l'écran d'accueil avec le bouton **▶ JOUER**.
5. Amusez-vous bien ! 💧🎮
