Création ou extension personnelles

Durée estimée: 45 minutes

Ce que vous allez faire :

Vous allez concevoir et réaliser une extension personnelle du jeu de voiture, qui peut être :

  • d'ajouter un 2° niveau quand le joueur a réussi le premier,
  • d'ajouter des obstacles,
  • d'enregistrer le meilleur temps,
  • ...

Choisissez une idée dont vous savez décrire précisément le fonctionnement en français et faites un dessin sur papier qui correspond à votre extension.

  1. décomposez votre extension en étapes,
  2. faites la liste des évènements auxquels votre extension doit réagir,
  3. écrivez - toujours sur papier - les actions (pseudo code) correspondant à chaque évènement,
  4. vérifiez que ce pseudo code est réalisable avec les instructions disponibles dans Scratch, et ala cohérence avce leporgramme déjà écrit.

Réalisation

Ressources de départ : Partez du porjte que vous souhaitez modifier, sans oublier d'enregistrer une copie et demodifier le nom de cette copie, par exemple "circuitVoitureExt"

Notions abordées :

  1. Design,
  2. Analyse et conception,
  3. Décomposition fonctionnelle,
  4. programmation évènementielle,
  5. écriture de pseudo code et codage,
  6. tests et mise au point.

Exemple:

  • Description de l'extension :

    Un personnage apparait au début du 2° tour et traverse la route. Si la voiture le touche, le jeu est perdu.

  • Analyse et conception :

    Le personnage est un nouveau sprite,

    • il démarre à la réception du message "traverser" et fait des aller/retour indéfiniment,
    • s'il touche la voiture, il envoie le message "accident" qui arrête le jeu,

    la voiture :

    • envoie le message "traverser" au début du 2° tour,
    • arrête quand elle reçoit le message "accident".

  • Evènements et pseudocode associés (actions nouvelles):
    • Quand clic sur drapeau vert :
      • envoyer le personnage à son point de départ et le cacher
    • Quand la voiture commence le 2° tour
      • envoyer message "traverser"
    • Quand le personnage reçoit le message "traverser":
      • montrer le personnage
      • dans une boucle infinie :
        • marcher jusqu'à l'autre côté de la route
        • et revenir
      • dans une boucle infinie simultanée si touche voiture:
        • envoyer message accident
        • arrêter le personnage
    • Quand la voiture reçoit le message "accident":
      • arrêter la voiture et le jeu
  • codage...
  • tests et mise au point...

Réalisation

  • Voiture : au moment où on ajoute 1 au nombre de tours, ajouter
    • si nombre de tours = 2 : envoyer message "traverser"
  • Personnage :
    • (nouvel évènement) quand réception message "traverser" :
      •     faire des aller-retour dans une boucle infinie
    • (nouvel évènement) quand réception message "traverser" :
      • tester si voiture touchée dans une bucle infinie et si oui envoyer message "accident"
    • (nouvel évènement) quand réception message "accident" :
      • arrêter personnage"
  • Voiture :
    • (nouvel évènement) quand réception message "accident" :
      • arrêter voiture, jeu