2.12 Balle Sensible à la Lumière¶
Dans ce projet, nous utilisons une photorésistance pour faire voler la balle sur la scène vers le haut. Placez votre main au-dessus de la photorésistance pour contrôler l’intensité lumineuse qu’elle reçoit. Plus votre main est proche de la photorésistance, plus sa valeur est petite et plus la balle vole haut sur la scène, sinon elle tombera. Lorsque la balle touche la corde, elle produit un joli son ainsi qu’une lumière d’étoiles scintillantes.
Vous Apprendrez¶
Remplir le sprite avec des couleurs
Toucher entre les sprites
Composants requis¶
Pour ce projet, nous aurons besoin des composants suivants.
Il est certainement pratique d’acheter un kit complet, voici le lien :
Nom |
ÉLÉMENTS DE CE KIT |
LIEN |
---|---|---|
3 in 1 Starter Kit |
380+ |
Vous pouvez également les acheter séparément via les liens ci-dessous.
INTRODUCTION DES COMPOSANTS |
LIEN D’ACHAT |
---|---|
Construisez le Circuit¶
Une photorésistance ou cellule photoélectrique est une résistance variable contrôlée par la lumière. La résistance d’une photorésistance diminue avec l’augmentation de l’intensité lumineuse incidente.
Construisez le circuit selon le schéma suivant.
Connectez une extrémité de la photorésistance à 5V, l’autre à A0, et connectez une résistance de 10K en série avec GND à cette extrémité.
Ainsi, lorsque l’intensité lumineuse augmente, la résistance de la photorésistance diminue, la division de tension de la résistance de 10K augmente, et la valeur obtenue par A0 devient plus grande.
Programmation¶
L’effet que nous voulons obtenir est que plus votre main est proche de la photorésistance, plus le sprite de la balle sur la scène continue de monter, sinon il tombera sur le sprite bol. S’il touche le sprite Ligne en montant ou en tombant, il produira un son musical et émettra des sprites d’étoiles dans toutes les directions.
1. Sélectionner le sprite et le décor
Supprimez le sprite par défaut, sélectionnez les sprites Ball, Bowl et Star.
Déplacez le sprite Bowl au centre bas de la scène et agrandissez sa taille.
Comme nous devons le déplacer vers le haut, réglez la direction du sprite Ball sur 0.
Réglez la taille et la direction du sprite Star sur 180 car nous avons besoin qu’il tombe, ou vous pouvez le changer à un autre angle.
Ajoutez maintenant le décor Stars.
2. Dessiner un sprite Ligne
Ajoutez un sprite Ligne.
Allez sur la page Costumes du sprite Line, réduisez légèrement la largeur de la ligne rouge sur le canevas, puis copiez-la 5 fois et alignez les lignes.
Remplissez maintenant les lignes avec différentes couleurs. Choisissez d’abord une couleur que vous aimez, puis cliquez sur l’outil Fill et déplacez la souris sur la ligne pour la remplir de couleur.
Suivez la même méthode pour changer la couleur des autres lignes.
3. Scripter le sprite Balle
Définissez la position initiale du sprite Ball, puis lorsque la valeur de lumière est inférieure à 800 (cela peut être toute autre valeur, selon votre environnement actuel), laissez la Balle monter.
Vous pouvez faire apparaître la variable light_value sur la scène pour observer le changement d’intensité lumineuse à tout moment.
Sinon, le sprite Ball tombera et limitera sa coordonnée Y à un minimum de -100. Cela peut être modifié pour qu’il semble tomber sur le sprite Bowl.
Lorsque le sprite Line est touché, la coordonnée Y actuelle est enregistrée dans la variable ball_coor et un message Bling est diffusé.
4. Scripter le sprite Étoile
Lorsque le script démarre, cachez d’abord le sprite Star. Lorsque le message Bling est reçu, clonez le sprite Star.
Lorsque le sprite Star apparaît en tant que clone, jouez l’effet sonore et réglez ses coordonnées pour être synchronisées avec le sprite Ball.
Créez l’effet de l’apparition du sprite Star et ajustez-le selon les besoins.