Au programme :
Déplacement d'un personnage
Gestion des ennemis
Rendu naturel des ennemis par réglage de paramètres individuels
Gestion de la fréquence d'actions
Réduction de la taille du personnage
Positionnement du personnage
Si on appuie sur la flèche gauche : décalage à gauche
Si on appuie sur la flèche droite : décalage à droite
(L'orientation correspond à l'inclinaison du personnage)
Cacher l'objet
Positionnement
Orientation
Positionnement
Réduction de la taille
Clonage
Affichage
Si touche le personnage ou le bord de l'écran alors
Repositionnement du clone dans le haut de l'écran
et orientation vers le personnage
La taille
La vitesse
La couleur
le costume
L'unique test "Si touche le personnage ou le bord de l'écran" sera scindé en deux tests distincts afin
d'ajouter un point au score si l'ennemi touche le bord de l'écran
et de retirer un PV s'il touche le personnage.
Pour faire tirer notre personnage il faudra rajouter le bloc suivant à notre personnage :
Si touche "espace" pressée alors
Créer un clone de projectile (ici l'objet s'appelle Arrow1)
L'objet initial est masqué, on ne travaillera qu'avec des clones.
Cacher l'objet
Positionnement et orientation
Affichage
Déplacement (Tant qu'il ne touche pas un bord de l'écran, le projectile avance)
Une fois un bord de l'écran touché, alors on supprime le clone
Le personnage tir beaucoup trop rapidement !
Pour réussir à tirer à une fréquence plus raisonnable nous allons avoir besoin de trois variables.
delai_entre_actions
temps_derniere_action
temps_ecoule_depuis_derniere_action
La première variable delai_entre_actions permettra de définir le temps d'attente souhaité entre deux tirs.
(exemple un tir toutes les 0.5 seconde, toutes les secondes, toutes les 10 secondes…)
La deuxième variable temps_derniere_action permettra de mémoriser l'instant précis du dernier tir.
La troisième temps_ecoule_depuis_derniere_action permettra de savoir combien de temps il s'est écoulé depuis le dernier tir. Très utile pour savoir si on a le droit de tirer à nouveau. Si cette valeur est inférieure au delai_entre_actions, alors il faut patienter avant de tirer à nouveau, sinon si elle est supérieure ou égale, alors on peut tirer !
Remarque :
Scratch a un chronomètre qui tourne en permanence depuis le début du jeu. Sa valeur nous permettra de mettre à jour temps_derniere_action et temps_ecoule_depuis_derniere_action
Donc :
Quand on tire :
Le programme vérifie si on a le droit de tirer à nouveau ou non.
Mise à jour de temps_ecoule_depuis_derniere_action
Puis vérification si cette valeur est supérieure ou égale au delai souhaité.
Si oui, on peut tirer ! Sans oublier de mettre à jour "temps_derniere_action " avec la valeur actuelle du chronomètre.
Les valeurs aléatoire permettent d'avoir un rendu moins monotone.
Le costume
L'orientation initiale
La taille
La vitesse
La couleur
Comprendre et modifier un programme associé à une fonctionnalité d’un objet ou d’un système technique
La programmation d’une nouvelle fonctionnalité
Algorithmique et programmation :
instruction d’affectation
variables (type nombre, mot, booléen)
opérateurs logiques simples
instruction conditionnelle
instructions itératives
séquences (blocs) d’instructions
événement
déclenchement d’une séquence par un événement
Programmation graphique par blocs
Entrées et sorties d’un programme (actions à l’écran)