2.12 Bola Sensible a la Luz¶
En este proyecto, usamos un fotoresistor para hacer que la bola en el escenario vuele hacia arriba. Coloca tu mano sobre el fotoresistor para controlar la intensidad de luz que recibe. Cuanto más cerca esté tu mano del fotoresistor, menor será su valor y más alta volará la bola en el escenario; de lo contrario, caerá. Cuando la bola toca la cuerda, produce un sonido agradable y una luz de estrella parpadeante.
Aprenderás¶
Rellenar el sprite con colores
Tocar entre los sprites
Componentes Necesarios¶
En este proyecto, necesitamos los siguientes componentes.
Es definitivamente conveniente comprar un kit completo, aquí está el enlace:
Nombre |
ELEMENTOS EN ESTE KIT |
ENLACE |
---|---|---|
3 in 1 Starter Kit |
380+ |
También puedes comprarlos por separado en los enlaces a continuación.
INTRODUCCIÓN DEL COMPONENTE |
ENLACE DE COMPRA |
---|---|
Construir el Circuito¶
Un fotoresistor o célula fotoeléctrica es un resistor variable controlado por la luz. La resistencia de un fotoresistor disminuye con el aumento de la intensidad de luz incidente.
Construye el circuito según el siguiente diagrama.
Conecta un extremo del fotoresistor a 5V, el otro extremo a A0, y conecta una resistencia de 10K en serie con GND en este extremo.
Por lo tanto, cuando la intensidad de la luz aumenta, la resistencia del fotoresistor disminuye, la división de voltaje de la resistencia de 10K aumenta y el valor obtenido por A0 se hace mayor.
Programación¶
El efecto que queremos obtener es que cuanto más cerca esté tu mano del fotoresistor, el sprite de la bola en el escenario seguirá subiendo, de lo contrario caerá sobre el sprite del tazón. Si toca el sprite de la Línea mientras sube o cae, emitirá un sonido musical y lanzará sprites de estrellas en todas direcciones.
1. Seleccionar sprite y fondo
Elimina el sprite predeterminado, selecciona los sprites Ball, Bowl y Star.
Mueve el sprite Bowl al centro inferior del escenario y aumenta su tamaño.
Como necesitamos moverlo hacia arriba, establece la dirección del sprite Ball a 0.
Establece el tamaño y la dirección del sprite Star a 180 porque necesitamos que caiga, o puedes cambiarlo a otro ángulo.
Ahora añade el fondo Stars.
2. Dibujar un sprite de Línea
Añade un sprite de Línea.
Ve a la página Costumes del sprite Line, reduce ligeramente el ancho de la línea roja en el lienzo, luego cópiala 5 veces y alinea las líneas.
Ahora rellena las líneas con diferentes colores. Primero elige un color que te guste, luego haz clic en la herramienta Fill y mueve el ratón sobre la línea para rellenarla con color.
Sigue el mismo método para cambiar el color de las otras líneas.
3. Programar el sprite Bola
Establece la posición inicial del sprite Ball, luego, cuando el valor de luz sea menor a 800 (puede ser cualquier otro valor, dependiendo de tu entorno actual), deja que la Bola se mueva hacia arriba.
Puedes hacer que la variable light_value aparezca en el escenario para observar el cambio de intensidad de luz en todo momento.
De lo contrario, el sprite Ball caerá y limitará su coordenada Y a un mínimo de -100. Esto se puede modificar para que parezca que está cayendo sobre el sprite Bowl.
Cuando el sprite Line es golpeado, la coordenada Y actual se guarda en la variable ball_coor y se transmite un mensaje Bling.
4. Programar el sprite Estrella
Cuando comience el script, primero oculta el sprite Star. Cuando se recibe el mensaje Bling, clona el sprite Star.
Cuando el sprite Star aparezca como un clon, reproduce el efecto de sonido y establece sus coordenadas sincronizadas con el sprite Ball.
Crea el efecto de aparición del sprite Star y ajústalo según sea necesario.