Scratch : initiation à l'algorithmique

TP2 : Les boucles



Mise en place

Déplacement du vaisseau

Pour le moment notre vaisseau se contente de se déplacer selon un circuit connu d'avance (un L ou un carré), ce qui n'est pas très intéressant pour un jeu vidéo. Nous allons permettre au joueur de déplacer le vaisseau à appuyant sur les touches directionnelles.

Ce bloc possède un menu défilant qui liste une partie des touches du clavier. Celles qui nous intéressent sont :

Lorsque l'utilisateur appuie sur une touche du clavier, les actions en dessous du bloc s'exécutent. Par exemple avec le code suivant :



le personnage est placé au centre de la zone d'affichage puis avance de 100 pixels, chaque fois que l'utilisateur appuie sur flèche haut.

Pour la suite de ce TP vous aurez égalements besoin des blocs du menu Mouvement. Comme vous avez déjà utilisé ces blocs dans le TP précédent, nous ne rappellerons pas leur comportement. Si vous avez un trou de mémoire, n'hésitez pas à consulter la colonne de droite.

Exercice 1

Exercice 2

Pour le moment, lorsque le joueur n'appuie sur aucune touche le vaisseau reste immobile. Nous allons modifier un peu ce comportement pour que:

Pour cela nous allons utiliser un nouveau type de bloc : les blocs de contrôle et plus particulièrement le bloc répéter indéfiniment. Si vous déposez ce bloc dans votre éditeur, vous vous rendez compte qu'il peut contenir d'autres blocs, à l'intérieur de lui. Ces blocs seront répétés indéfiniment. En algorithmique, vous avez étudié le concept de boucle : le bloc répéter indéfiniment est une boucle infinie.

Exercice 3

Maintenant que notre vaisseau se déplace et que l'utilisateur peut le contrôler, il est temps d'ajouter un peu de difficulté en créant des ennemis. Nous allons commencer par un premier type d'ennemi : une horrible soucoupe volante. Nous allons écrire le programme lui permettant de se déplacer.

A côté de notre vaisseau, en bas de la zone d'affichage, vous voyez apparaître un nouveau personnage qui correspond à la soucoupe volante. Bon d'accord, ce n'est pas vraiment une soucoupe, plûtot un vaisseau très moche. Mais rien ne vous empêche de choisir une autre image. Autre souci, tout le code précédent semble avoir disparu : pas de panique, vous pouvez le retrouver en cliquant sur l'image du vaisseau. En fait le code du vaisseau et le code de la soucoupe volante sont séparés. Pour écrire le code correspondant à la soucoupe volante, cliquez dessus.

Vous allez maintenant écrire le programme permettant de déplacer en continu la soucoupe volante, dès que le joueur clique sur le drapeau vert.