Está en la página 1de 84

´ 3.6.

0)
Crea tus primeros videojuegos con Scratch (Version

Autor: Diego Romano Ubalde


ISBN: 9781709249327
´ Enero 2020
Primera Edicion:
ÍNDICE DE CONTENIDO
Introducción 3
1. ¿Qué es scratch? 4
2. Algoritmos 5
3. Instalación de Scratch 9
4. Entorno gráfico 11
5. Conoce las formas de Scratch 15
6. Disfraces 18
7. Fondos 23
8. CODETIME - MOVIMIENTOS 25
9. CODETIME - APARIENCIA 35
10. CODETIME - SONIDOS 40
11. CODETIME - EVENTOS 44
12. CODETIME - CONTROL 48
13. CODETIME - SENSORES 56
14. CODETIME - OPERADORES 62
15. CODETIME - VARIABLES 70
Proyecto 1: Juego Pong 73
Proyecto 2: Juego del comecocos 78
Despedida 84
INTRODUCCIÓN
Bienvenido a Scratch!

Si estás leyendo este libro es porque eres un niño/a muy curioso y... ¡Que te encanta la tecnología!
¿Aunque sabes exactamente que vas a aprender en este libro?

Paso a paso te voy a ayudar a crear todas las historias y videojuegos que puedas imaginar en tu
cabeza utilizando unos personajes espectaculares.

Espero que te gusten los dinosaurios, las princesas, los coches o los animales porque vamos a estar
continuamente jugando con ellos y dándoles vida.

Supongo que igual que a mí, te gusta crear historias donde tus propios dibujos hablan con otros,
se mueven e incluso interactúan con otros. ¿Te imaginas si además hicieran todo lo que se te pueda
ocurrir?

Para poder avanzar en este libro solo hay dos requisitos que debes de cumplir. El primero es que
nunca te debes rendir cuando algo no funcione y el segundo es nunca dejar de imaginar todo lo que
quieras programar.

No te voy a mentir, el libro que vas a empezar no será fácil pero las capacidades que vas a desa-
rrollar a lo largo de estas páginas te convertirán en un niño/a mucho más inteligente que cualquiera
que conozcas.

Y sin entretenernos mucho más, te voy a presentar al personaje animado que nos va a ayudar a lo
largo de todo el libro. Yo lo llamo Scratchy.
¡Hola! Soy Scratchy y
voy a ser tu ayudante
en este libro.

3
¿QUÉ ES SCRATCH?

Scratch es un lenguaje de programación que utiliza bloques de colores para ayudarte a programar
juegos o historias fácilmente apilando un bloque trás otro e insertando bloques en el interior de
otros como si de un puzzle se tratara o unas piezas de lego.

¿Te gusta construir coches, edificios o personas con piezas de construcción?¿Te gusta hacer
puzzles?¿Una vez construidos te gusta jugar con ellos y recrear escenas de tu imaginación?

Entonces Scratch te va a gustar. Programar es exactamente eso, plasmar tu imaginación en his-


torias o juegos juntando piezas sencillas.

A lo largo del libro te explicaré que hace cada una de estas piezas o bloques y como juntarlas con
las demás para desarrollar todo lo que puedas imaginar. Nuestra historia o juego también podrá
interactuar con el jugador reproduciendole sonidos, pidiendole información o incluso el jugador será
el encargado de mover a su personaje.

4
ALGORITMOS

Muy bien. Hasta aquí, ¿Parece muy sencillo, verdad? Todo se complica cuando tenemos que combi-
nar los bloques anteriores para que nuestro juego funcione como tenemos en nuestra cabeza. Se
podría decir que si divides una tarea grande en tareas más pequeñas y las unes, entonces estarías
creando un algoritmo.

¿Un poco confuso?

Imagina todas las piezas de un puzzle. Si ves todas sueltas probablemente no entiendas el dibujo que
tiene pero una vez está el puzzle terminado verás una imagen muy clara del puzzle. Lo mismo ocu-
rre con los algoritmos. Al principio nos encontraremos todas las piezas sueltas pero cuando estén
unidas tendremos una historia o un juego creados de la nada.

¿Todavía no te ha quedado claro? Veamos un ejemplo.

Pongamos de ejemplo que queremos elaborar un algoritmo para comprar el pan, entonces este
sería así:

Paso 1: Voy a la panadería.


Paso 2: Hago fila hasta que me atiendan.
Paso 3: Pido una barra de pan.
Paso 4: Saco el dinero de mi bolsillo.
Paso 5: Entrego el dinero a la panadera.
Paso 6: Recojo mi barra de pan.
Paso 7: Salgo de la panadería.

¡GENIAL! ¡HEMOS CREADO EL PRIMER ALGORITMO!

5
Pero, ¡espera!, ¿Como voy a la panadería? Muy bien, quizá este problema es demasiado grande de
abordar, dividámoslo en problemas mas pequeños.

Paso 1: Avanzo 15 metros en línea recta.


Paso 2: Me giro hacia mi derecha.
Paso 3: Avanzo 20 metros más.
Paso 4: Entro al supermercado.

6
EJERCICIOS
¡Ahora es tu turno! Escribe un algoritmo con al menos 6 pasos para cada una de las siguientes
acciones:

1. Te encuentras en mitad de un campo de baloncesto con la pelota en la mano y un rival enfrente


de ti.Tu objetivo es encestar el balón... ¿Cuál sería tu algoritmo?

2. Llevas todo un año esperando a que sea tu cumpleaños y tienes que soplar las velas de la tarta.
¿Qué algoritmo usarías?

7
3. Tienes un lapicero a tu derecha con un folio y te apetece hacer un dibujo. ¿Qué pasos segurirías
para lograrlo?

4. Te acabas de despertar el sábado y tienes hambre. ¿Cuáles son los pasos que seguirías para
preparar el desayuno?

5. Tu madre se acaba de quedar dormida en el sofá y es tu oportunidad para coger el mando a


distancia y poner tus dibujos favoritos. ¿Cómo lo harías?

8
INSTALACIÓN SCRATCH

¡Ya tenemos claro que es un algoritmo y lo que vamos a aprender! Es hora de ponerse manos a la
obra. Vamos a instalar Scratch en nuestro ordenador.

¿Que necesitamos?
– Un ordenador con el sistema operativo Windows (también es posible instalarlo en ordenadores con
macOS)
– Conexión a internet.

PASOS PARA LA INSTALACIÓN

1 Abre tu navegador favorito y ac-


cede a la sección de descargas de la
web de Scratch. Si necesitas ayuda
para encontrar la sección de descar-
gas te puedo dar una ayuda:
https://scratch.mit.edu/download
La web que te vas a encontrar va a
ser similar a la imagen.

2 Pulsando el botón de descarga directa


(Direct download) o el de obtener desde Mi-
crosoft (Get it from Microsoft) te permitirá
descargar el instalador de Scratch.
Una vez descargado y ejecutado el instalador
nos aparecerá el asistente de instalación.

9
3 Seleccionaremos la opción de instalar
únicamente para mi usuario. Si vais a usar va-
rias personas Scratch en el mismo ordenador
con diferentes usuarios podéis seleccionar la
opción de que esté disponible para todos los
usuarios que usen el ordenador.
A continuación, pulsaremos el botón que pone
“Instalar” y Scratch se instalará automática-
mente en el ordenador.

4 Una vez finalizada la instalación nos


aparecerá un mensaje de que se ha instala-
do correctamente y ya podemos empezar a
utilizarlo.

¡Ya estás listo para


empezar!

10
ENTORNO GRÁFICO

La pantalla de Scratch la podemos dividir en varias secciones:


– Menú: Se puede guardar y cargar diferentes proyectos además de acceder a varios
tutoriales.
– Escenario: Se observa las acciones programadas en el entorno.
– Código: Dividido en diferentes subsecciones permite arrastrar diferentes bloques a
la pantalla principal de programación. Estas subsecciones se verán más adelante.
– Disfraces: Este apartado permite crear diferentes objetos gráficos que serán
utilizados en nuestro videojuego. Por ejemplo, el famoso gato simbolo de scratch
es uno de los disfraces que pueden ser utilizados.
– Sonidos: Se añadirán los sonidos que necesites utilizar en el proyecto y desde el
código se les invocarán.
– Fondos: Serán los bosques, desiertos, parques, etc. donde se desarrolle el
videojuego o las historias.

Tanto los disfraces, sonidos, escenarios, podrán ser utilizados con recursos de la propia aplicación
como de recursos importados por el programador. En el caso de los disfraces y escenarios se po-
drán dibujar en el propio Scratch.

11
Las subsecciones que se pueden encontrar en el apartado de código son las siguientes:

MOVIMIENTO
La mayoría de los videojuegos permiten de una manera u otra mo-
ver a sus personajes dentro del juego, esta sección te permitirá
decirle a tus personajes donde quieres que se situen en todo mo-
mento.

APARIENCIA

La pantalla de inicio de un juego, la de final e incluso los pequeños


movimientos que va a experimentar el personaje del videojuego para
darle una apariencia de que corre, vuela, juega, etc. Será lo que se
programe desde esta pantalla.

SONIDO
¿Quién no se sabe la melodía de algún juego o el sonido que se
produce cuando tu jugador consigue una moneda o gana la parti-
da? Los sonidos nos permitirán añadir otro toque personal a cada
uno de los videojuegos.

12
EVENTOS
Pulsar espacio para saltar, las flechas para mover a tu
personaje o el ratón para seleccionar lo que te ofrezca el
juego son algunas de las cosas que programaremos desde
esta sección.

CONTROL
Si tienes más puntos que tu adversario ganarás la par-
tida, si un pájaro está volando aleteará constantemen-
te las alas, si pulsas la tecla intro comenzará la partida.
Las condiciones que le pondremos al juego para que haga
una cosa u otra las programaremos con la ayuda de esta
sección.

SENSORES
Las personas utilizan la vista, oído, gusto, olfato y tacto para
obtener información del mundo, los programas informáticos y los
robots lo hacen a través de sensores.

13
OPERADORES
¿Cómo podríamos tomar una decisión sino tenemos donde elegir? Los
operadores permitirán comparar dos realidades para tomar esta
decisión. Si el jugador A tiene más puntos que el B, entonces ha
ganado. Normalmente se utilizarán en combinación con el bloque de
control.

VARIABLES
Serán los “cajones” donde guardar la información que
utilizaremos durante el juego. ¿Cuántos puntos tiene el
jugador A? Lo podremos comprobar en su cajón donde
cada vez que sume un punto se guardará allí.

El entorno visual utilizado nos va a permitir programar complejos algoritmos usando pseudocódigo,
es decir, lenguaje natural que utilizamos día a día y que el ordenador sea capaz de entenderlo.
¿No entiendes cómo esto va a permitirte crear un juego o una historia?
No te desanimes, vamos a ver cada bloque explicándolos con ejemplos y ejercicios para que puedas
entenderlo.
¡Ánimo! ¡Es tu primer
paso para crear algo
grandioso!

14
CONOCE LAS FORMAS
DE SCRATCH
Cada vez que utilizamos un algoritmo tenemos que tener en cuenta los valores que le pasamos a
un bloque y el valor que nos devuelve. ¿Qué significa esto? Para entenderlo pensemos en un
desayuno:
El objetivo que queremos conseguir con el desayuno es llenar el estómago para tener las suficientes
energías para aguantar la mañana hasta el almuerzo o la comida.
Para el desayuno utilizaremos como valores de entrada un vaso de leche y unas galletas de cho-
colate donde todo esto mezclado en un tazón de desayuno obtendremos el valor de salida que es
alimentarnos.
Suena al principio un poco confuso ¿verdad?. Pensemos un ejemplo con una suma. El objetivo que
queremos conseguir es saber el valor total (valor de salida) y para ello utilizaremos varios datos de
entrada que serán los sumandos.
En Scratch podemos encontrar diferentes datos de entrada y de salida que vamos a explicar a
continuación y veremos como identificarlos:

DATOS NUMÉRICOS
Cuando hacemos una suma como la del ejemplo anterior necesitamos pasarle varios números para
hacerla y el resultado que vamos a obtener es otro valor numérico. En Scratch podemos identificar
los bloques que nos permiten introducir datos numéricos porque encontraremos un círculo en blanco
en el interior del bloque.
Mira el bloque siguiente y observa como contiene un círculo blanco interior donde introducir el valor.
Además de poner el número de forma manual, también se pueden añadir bloques al interior.

Para identificar los bloques de Scratch que devuelven un número nos fijaremos en la forma del
bloque, los que son de forma redonda nos devolverán un número y los usaremos en la entrada de
otros bloques que acepten números.

15
DATOS BOOLEANOS
Verdadero o falso, encendido o apagado, 0 o 1, sí o no. Los datos booleanos nos permiten contestar
a preguntas donde solo hay dos posibles respuestas.
Veamos un ejemplo. Si te pregunta tu mejor amigo si quieres comer un chicle tú le responderás si o
no. Ese tipo de respuesta es una respuesta booleana porque no hay más respuestas posibles.
Imagina que estás en clase de matemáticas y tu profesor te pregunta si 2 + 2 es igual a 4. La res-
puesta será sí o no. No hay más posibles respuestas, por lo tanto, estaremos dando una respuesta
booleana.
¿Como identificamos los bloques de Scratch que nos devolverán valores booleanos?
Los podemos identificar porque tienen forma de rombo.

En la imagen anterior podemos observar que los valores de entrada son numéricos como se ha
mencionado en el bloque anterior y vemos que la salida es booleana porque la forma del bloque tiene
un rombo.
En la siguiente foto, podemos observar como el resultado del bloque será booleano y además, la
entrada de información también será booleana.

DATOS DE TEXTO
Las cadenas de texto son palabras o frases que van a ser utilizadas por los bloques para mostrar
información en la pantalla o al revés, para introducir información en el código.
¿Cómo identificamos estos bloques?
La forma de estos bloques es igual que los numéricos, tienen una forma redonda y se podrán utilizar
en todos los bloques con entradas de datos redondas.

16
EJERCICIOS
Identifica qué tipo de dato (numérico, booleanoo o texto) será de vuelto en cada una de las siguien-
tes situaciones:
1. Es fin de semana y tienes que decidir si te vas a jugar.
2. Acabas de comprar el pan en la panadería y unas chucherías. Sumas el precio y te va a dar un
dato. ¿Qué tipo de dato es?
3. ¿Cuál es la ciudad donde vives? Dime que tipo de dato es la respuesta a esa pregunta.

¡Ya tienes más conocimientos


en programación que la
mayoría de las personas
mayores! ¡Sigue así!

17
DISFRACES

¡Ya sabes todo lo necesario para poder empezar a utilizar Scratch!


En esta unidad vamos a aprender a introducir a nuestros personajes al juego, y además vamos a
aprender a dibujar a los nuestros propios.
Lo primero que tenemos que hacer es localizar el menú de los disfraces. ¿Te acuerdas dónde dijmos
que estaba? ¡Muy bien! Lo podemos encontrar en la parte inferior derecha y la superior izquierda.

Moviendo el puntero del ratón encima del símbolo con la cara de un animal y pinchando podremos
entrar al menú de selección de personajes que ya vienen en scratch.

¡Ya estás listo


para empezar!

18
El personaje que se elija será muy importante para vuestra historia, podéis comprobar todos los
que hay y elegir el que más os guste.

PISTA
Si dejáis el ratón quieto sobre los personajes veréis los diferentes disfraces que tienen.

PISTA
En la parte superior podéis seleccionar las categorías de vuestro dibujo favorito para
encontrarlo más rápido.

Una vez encontrado el personaje que queréis mostrar tan solo tenéis que pulsar en él y aparecerá
en vuestro escenario.
Si has elegido el que no querías, siempre puedes borrarlo pinchando en el simbolito de papelera sobre
el dibujo.
Además, una vez esté en el escenario, pinchando sobre él y arrastrándolo puedes ponerlo en el sitio
que más te guste.

19
¡ES EL MOMENTO DE PINTAR NUESTRO PERSONAJE!
¡Ya tenemos al personaje en el escenario preparado para hacer cosas! Pero... quizá te gustaría
que su camiseta fuera de otro color o sus ojos o boca.
Para modificar nuestro personaje, pincharemos donde pone disfraces en la parte superior izquier-
da.

Una vez que hayas localizado los disfraces te


encontrarás una pantalla como esta.

20
A la izquierda podrás ver los diferentes disfraces del personaje que has elegido.
En mi caso, el murciélago tiene 4 disfraces. Conforme avancemos en el libro, esos
disfraces permitirán al murciélago que vuele, a los unicornios correr e ¡incluso a
los dinosaurios bailar!
Si te fijas en la pantalla en la que estás ahora podrás encontrar una paleta para
pintar o modificar tu personaje. La paleta es como esta:

1. Escoge tu personaje favorito y cámbiale algo. Puedes cambiarle el color, alguna forma, añadirle
otros dibujos.
2. Escoge otro personaje pero esta vez tiene que tener varios disfraces. El objetivo de este
ejercicio es que pintes lo mismo en cada uno de los disfraces.
3. Es momento de investigar. Al desplegar el menú de personajes hay una opción de pintar. ¡Encuén-
trala y pinta un personaje desde cero!
4. ¿Te atreves a esforzarte un poco más? Pincha con el botón derecho en la miniatura del disfraz
en la parte izquierda de la pantalla y pulsa “Duplicar”. Ahora es momento de que le modifiques una
parte del dibujo y sea un movimiento nuevo.

Cada uno de los controles van a permitir hacer algo al personaje.


Con la flecha se puede mover las diferentes partes del disfraz y ponerlas en un lugar distinto.
La flecha con un puntito nos va a permitir darle una forma diferente al objeto que selecciones.
El pincel nos va a permitir dibujar lo que queramos en el dibujo.

PISTA
Podemos pintar mas grueso o más fino modificando el número junto al pincel que se
encuentra encima de la zona de dibujo.

La goma de borrar nos dejará borrar dibujos que no nos gusten.


El bote de pintura volcandose nos pintará del color que queramos la forma que elijas.

21
PISTA
El color lo puedes cambiar en el cuadrado colorido que se encuentra justo encima de la
paleta de trabajo.

La letra T nos va a permitir escribir un texto en la imagen.


La línea nos va a permitir hacer líneas completamente rectas del grosor que queramos. Por último,
el círculo y el cuadrado nos permitirá hacer esas formas en el dibujo de distinto tamaño. Si que-
remos modificar el color de relleno o del borde de las formas, encima de la zona de dibujo podrás
modificarlas.

EJERCICIOS
1. Aunque los dinosaurios ya se han extinguido, en Scratch podemos encontrar al menos 4. Busca
los dinosaurios y sácalos a todos a la vez al escenario.
2. Dicen que los perros son los mejores amigos de las personas, ¿podrías encontrar 3 perros
diferentes y sacarlos al escenario?
3. En Scratch tenemos un abecedario entero para escribir lo que queramos. El objetivo de este
ejercicio es que hagas tu nombre con letras que encontrarás en los disfraces.

22
FONDOS

Tan importante son los personajes que elijamos como los fondos porque será el lugar donde se
desarrolle el juego o la historia.

PISTA
Los fondos tienen un funcionamiento similar a los disfraces. Puedes usar uno ya creado
o crear tus propios fondos. Para repasar como crear un dibujo de cero o importar uno
ya creado puedes visitar el capítulo anterior.

Los fondos los encontraremos en la parte inferior derecha representados con el icono de un paisa-
je. Pulsando en él, podrás añadir tus fondos inmediatamente.
¡Puedes añadir tantos fondos como quieras!
A lo largo del libro veremos como cambiar mediante programación los diferentes fondos.

23
EJERCICIOS
1. En este momento ya sabemos añadir personajes y fondos. Busca un personaje que te guste y
un fondo coherente con el personaje. Por ejemplo, puedes añadir un perro y un parque, un jugador
de baloncesto y un campo de baloncesto o un pez y un fondo de mar.
2. ¡También hemos aprendido a pintar personajes y fondos! Dibuja un personaje y un fondo com-
pletamente nuevos.

24
CODETIME-MOVIMIENTOS

PISTA
¡Es hora de empezar a programar! ¿Recuerdas qué es un algoritmo?
Un algoritmo es una sucesión de acciones muy simples que tienes que realizar para
lograr una acción mucho más compleja.

En este capítulo vamos a aprender a mover a nuestro personaje por el escenario a nuestro antojo.
¿No es maravilloso?
Antes de hacerlo tenemos que tener claro como decirle a Scratch a que posición mandar a nuestro
personaje y esto lo hacemos usando coordenadas.
¿Pero qué es eso de coordenadas?
Las coordenadas nos permiten mediante un sistema de numeración ubicar un objeto en un mapa.
Por ejemplo, en la tierra utilizamos la latitud y la longitud.
En el caso de Scratch usamos el eje X y el eje Y.

Para el eje horizontal usaremos el X y para el vertical el Y.

¿Entonces cómo ubicamos un personaje en el escenario?

25
Es muy sencillo. El punto céntrico del escenario
tiene las coordenadas 0,0. Una vez localizado el
centro, si queremos que el personaje esté a la
derecha del punto (gato), le daremos un núme-
ro positivo a X, por el contrario, si queremos que
esté a la izquierda de este punto (dinosaurio), le
daremos al eje X un número negativo.

En el caso de que queramos mover al personaje


sin conocer su ubicación hacia la derecha, suma-
remos al eje X un número positivo. Si queremos
desplazar hacia la izquierda sumaremos al eje X
un número negativo.
En la imagen podemos ver al dinosaurio y al gato
que se encuentran en el eje negativo de X. Si al
dinosaurio le sumamos un número positivo al eje
X lo situaremos donde se encuentra el gato, es
decir, si le sumamos un número positivo le acerca-
remos más a su lado positivo.

Para el eje Y ocurre de forma similar pero des-


plazando al personaje de arriba a abajo. Desde
el punto central hacia la parte superior podemos
encontrar coordenadas positivas del eje Y.
Desde el punto central hacia la parte inferior po-
demos encontrar coordenadas negativas del eje
Y.
Igual que ocurría con el otro eje, si ponemos al
eje Y un número positivo, el personaje se encon-
trará en la parte superior del escenario pero si le
ponemos un número negativo se encontrará en la
parte inferior.

26
En la foto anterior, el gato tiene un número positivo en el eje Y y el dinosario un número negativo.
Si quisiéramos desplazar el personaje sin conocer su ubicación hacia una zona superior a la que se
encuentra, se le sumaría un número positivo al eje Y y si quisiéramos desplazarlo hacia una zona
más baja le sumaríamos un número negativo.

En la imagen podemos ver que si al dinosaurio le


sumamos un número positivo se situaría donde
está el gato y si al gato le sumaramos un número
negativo iría a la posición del dinosaurio.

¡YA SABEMOS DESPLAZAR A NUESTRO PERSONAJE


POR EL ESCENARIO!

27
EJERCICIOS
1. Hemos situado una manzana en el escenario. ¿Podrías decir si se encuentra en el lado positivo o
negativo del eje X e Y?

2. En este caso hemos situado a un murciélago en el escenario. ¿Podrías decir si se encuentra en


el lado positivo o negativo del eje X e Y?

28
3. En este caso, el donut situado en el escenario combina tanto el ejeX como el Y. ¿En qué lado se
encuentra cada uno?

4. Nuestro gato volador quiere desplazarse hacia la derecha,¿es posible moverlo a la derecha si
ya está en el lado positivo del escenario? Si se puede, ¿hay que sumarle un número positivo o nega-
tivo?¿A qué eje hay que sumarlo?

29
¡YA TENEMOS MUY CLARO COMO FUNCIONAN LAS COORDENADAS!
¡AHORA TOCA PROGRAMAR LOS MOVIMIENTOS!

¿Recordáis dónde se encontraban los bloques de código para los mo-


vimientos? Efectivamente, los podemos encontrar a la izquierda de la
aplicación y se caracterizan por su color azul.

Algunos de los movimientos que podemos encontrar son los siguientes:


– Mover 10 pasos: Sumará 10 a la posición que apunte el personaje.

– Girar 15 grados: Permite girar los grados que queramos al personaje.

– Ir a posición aleatoria: Envía al personaje a cualquier punto del escenario.

– Ir a X e Y: Permite poner al personaje en un punto en concreto del escenario.

30
– Deslizar durante 1 segundo a una posición: Permite mover al personaje a un punto suavemente
durante el tiempo indicado.

– Apuntar en una dirección: Permite que el personaje mire donde quieras.

– Sumar a X e Y y dar valor a X e Y: Como se ha comentado en el apartado de las coordenadas


permite desplazar sin conocer el punto de origen y permite desplazar a un punto fijo.

– Si toca un borde rebotar: Permite que cuando el personaje toque cualquiera de los extremos del
escenario rebotará en dirección contraria para evitar que se salga de él.

– Fijar un estilo de rotación: Permite rotar de una forma ya preparada la dirección del personaje.

31
¡Ya conocemos qué hace cada bloque de movimiento! ¡Ahora vamos a juntarlos!
Para usar un bloque de movimiento los tienes que arrastrar a la zona de programación y si quere-
mos ejecutar varias cosas hay que enlazarlos (ponerlos uno detrás de otro).
Veamos un ejemplo. Si quisiéramos que el siguiente gato alcanzara la manzana tendríamos que en-
cadenar 4 bloques de 100 porque está a una distancia de 400 o podríamos hacer sólo un bloque
de 400 pasos.

¿Podríamos hacer lo mismo con otro tipo de bloques? Sí, podríamos usar el bloque sumar 100 a X.

32
¡Perfecto! Ya empezamos a entenderlo. ¿Pero... lo podemos hacer de otra forma? ¡Claro que sí!
Vamos a utilizar el bloque “ir a X e Y”.
Sabemos que la manzana se encuentra en la posición 200 del eje X y la posición 0 del eje Y, en-
tonces podríamos hacer algo como esto.

Si pulsamos en el grupo de bloques que hemos puesto en la zona de código, se ejecutará todo lo que
hemos enlazado.

¡Muy bien campeón/a!


¡Ya sabes mover a
tus personajes!

33
EJERCICIOS
1. El mono tiene hambre y tiene unos plátanos para merendar cerca de él. ¿Qué bloques utilizarías
para llegar hasta ellos? ¿Habría alguna forma de hacerlo utilizando otros bloques diferentes?

2. Hannah acaba de terminar de jugar al baloncesto y tiene mucha sed, ¿qué bloques
utilizarías para que llegue al vaso de agua?

3. La bateadora cuando llegue su pelota podrá batear pero, ¿qué bloques utilizaríamos para que
le llegue?

34
CODETIME-APARIENCIA

¡Hemos llegado al bloque de apariencia! Este bloque nos va a permitir darle a los personajes movi-
miento utilizando los disfraces, cambiar tamaños, fondos, crear diálogos o pensamientos, etc.
¿Cómo sabemos qué bloques nos permiten hacer esto?

Los bloques de apariencia se caracterizan por tener el color mora-


do. Algunos de los bloques son los siguientes:

Vamos a ver los bloques más importantes que podemos encontrar y que hacer con cada uno:
– Decir ¡Hola! Durante 2 segundos: Este bloque permite sacar un bocadillo del personaje como si
estuviera hablando. El bocadillo permanecerá durante el tiempo que se fije en el propio bloque.

– Decir “¡Hola!”: Este bloque permite sacar un bocadillo como hace el bloque anterior pero en esta
ocasión no desaparece a los 2 segundos.

35
Pensar “Umm” durante 2 segundos: Este bloque es parecido a los anteriores pero en
este caso el bocadillo es de pensamiento.

Pensar “Umm”: Saldrá un bocadillo de pensamiento del personaje y permanecerá.

PISTA
¡Recuerda! Los valores que tienen los bloques pueden ser modificados para introducir el
texto y el tiempo que cada uno quiera.

Cambio de disfraz: Los movimientos de los personajes se van a crear con bloques de cambio de
disfraz como este. Este bloque nos permite seleccionar un disfraz en concreto del personaje.

Siguiente disfraz: Los personajes poseen todos los disfraces que el programador
quiera, con este bloque se pasará al siguiente disfraz de todos los que tiene.

Cambiar fondo: Utilizando el desplegable nos permite elegir el fondo que queremos
poner en cada momento.

36
Siguiente fondo: Igual que ocurre con los disfraces, se puede cambiar a diferentes
fondos sin saber cuál estamos usando.

Todo esto parece muy sencillo pero ¿cómo lo aplicamos? Veamos algún ejemplo.
Tenemos un murciélago que queremos que vuele y 3 de sus disfraces son los movimientos de las alas
que usa para volar. Si le cambiamos de disfraz varias veces nos dará la sensación de que bate las
alas. También usaremos el bloque “esperar”.
Este bloque aunque lo usaremos más adelante es necesario ponerlo entre los cambios de disfraces
porque sino el muerciélago cambia tan rápido de disfraz que no somos capaces de verlo.
Crea en tu ordenador el código del murciégalo y púlsalo para ver cómo vuela.

¡Utilizemos el bloque “siguiente disfraz”! En este ejemplo vamos a utilizar un dinosaurio que piensa
si quiere bailar, y cuando termine de pensarlo se pondrá a bailar. Igual que en el ejemplo anterior
usaremos el bloque para cambiar el disfraz, y el bloque de esperar, para poder ver los disfraces
que cambian. Y como novedad también usaremos el bloque de pensar.
Crea en tu ordenador el código y púlsalo para ver cómo baila.

37
¿Te atreves a mezclar los dos temas que hemos aprendido ya? En este ejemplo vamos a usar mo-
vimientos y apariencias para hacer volar al murciélago a diferentes puntos del escenario. Usaremos
los bloques de cambio de disfraz y deslizar en 1 segundo a una posición aleatoria para que se mueva.

38
EJERCICIOS
1. A los dinosaurios siempre les han gustado las fiestas. Reúne a 3 de ellos y una sala de fiesta y
hazlos bailar a la vez.

2. En Scratch hay muchos personajes con ganas de hablar. Crea una conversación entre los que
más te gusten.

Ya conocemos algunos de los bloques más importantes de apariencia pero todavía no conocemos
todos.
Los bloques de cambio de tamaño, esconder personajes y mostrar son otros de los bloques muy
útiles.
Para finalizar el tema, es recomendable que pruebes todos los bloques que no se han mencionado
y entiendas qué hace cada uno.
¡Fantástico! ¡Ya sabes
mover a tus personajes y
cambiarles de disfraz!

39
CODETIME-SONIDOS
Cada animal, instrumento, lugar, acción o persona suena de diferente forma. En este capítulo da-
remos sonido a nuestra historia o videojuego.
¿Recuerdas en qué lugar de la aplicación podemos encontrar los sonidos?

Una vez seleccionada la pestaña de sonidos encontraremos un botón para añadir sonidos similar a
los usados para añadir fondos y personajes y podremos elegir el que más nos guste.
¡Yo he elegido el maullido de un gato!

40
Debemos seleccionar todos los sonidos que queramos utilizar en la aplicación para después utilizarlos.
¿Cómo los utilizamos?
Volveremos a la pestaña de código y podemos encontrar bloques para usar los sonidos, estos blo-
ques son:
– Tocar sonido hasta que termine: Iniciará el sonido que elijas de la lista. Recuerda que para que
esté en la lista lo tienes que haber elegido en el paso anterior. Hasta que no termine el sonido,
Scratch no ejecutará el siguiente bloque.

Iniciar sonido: Permite iniciar el sonido de igual manera que el anterior pero se diferencia en que este
sonido se puede detener con el siguiente bloque y además no hace falta que termine el sonido para
que continue el programa.

Detener sonido: Este bloque podrá parar todos los sonidos iniciados con el bloque “iniciar sonido”. Los
bloques “tocar sonido hasta que termine” no se podrán parar.

Sumar al efecto: Permite dar algún efecto al sonido elegido como puede ser la agudeza o altura.

Dar al efecto un valor: Permite establecer un valor fijo al efecto elegido.

41
Cambiar volumen: Permite poner el valor al volumen que queramos para que suena más fuerte o
menos.

Fijar volumen: Podremos usar un porcentaje para subir o bajar el volumen como el bloque anterior.

EJEMPLO

Hay un gato que tiene hambre y podemos ver como piensa, que quiere comer, y además maullará
para que le den comida.

42
EJERCICIOS
1. Imagina que es el día de tu cumpleaños, ¿qué te gustaría que hubiera en tu fiesta? Busca un
fondo para tu fiesta, personajes y el sonido más adecuado.

¡Ánimo! ¡Sigue así y


llegarás donde te
propongas!

43
CODETIME-EVENTOS
Llega el momento en el que los jugadores pueden interactuar con sus personajes para moverse,
saltar o avanzar en el juego.
Esta sección nos va a permitir usar diferentes eventos para gestionar el juego.

Un evento es algo que va a ocurrir y va a permitir desenca-


denar una serie de acciones o bloques.
¿Recuerdas cómo podemos identificar los bloques de even-
tos? Los eventos los podemos identificar por tener un color
amarillento.

Vamos a describir qué hacen algunos de los bloques más importantes de esta sección:
– Al hacer click en la bandera: En la parte superior del escenario hay una bandera
verde y todos los bloques que unamos a este evento se ejecutarán al pulsar la
bandera.

– Al presionar la tecla espacio: Este bloque nos permite desencadenar acciones cuando pulsamos
una tecla (se puede cambiar la tecla).

44
– Al hacer click en este objeto: Este bloque se ejecutará cuando se haga click en el personaje
dentro del escenario.

– Cuando cambie el fondo: Si cambia el fondo, podemos ejecutar también una serie de acciones.

– Cuando baje el volumen: Cuando el volumen se reduzca por debajo de un valor definido, se eje-
cutarán una serie de acciones.

Además, durante el juego se pueden enviar señales y ejecutar otras cuando se recibe esa señal.
Esos eventos los podemos controlar con los siguientes bloques:
– Al recibir mensaje: Se ejecutarán los bloques que se han pegado a él cuando se reciba un men-
saje.

– Enviar mensaje: Se manda un mensaje para que lo reciban bloques como el anterior.

– Enviar mensaje y esperar: Se envía un mensaje y se queda el bloque esperando a que todos los
demás bloques lo reciban.

45
EJEMPLO

1. Nuestro gato favorito quiere aprender a saltar. Vamos a hacer que, cuando pulsemos la tecla
espacio, nuestro gato pueda saltar. Para ello, usaremos el bloque de evento “Al presionar la tecla
espacio” y le sumaremos 100 al eje Y y después lo restaremos. ¡Pruebalo en tu Scratch!

2. Nuestro gato también quiere caminar y avanzar hacia delante. ¡Vamosa programarlo! Cuando
se pulse la flecha derecha del teclado le sumaremos al eje X un valor fijo. ¡Ahora nuestro gato,
además de saltar, también se mueve!

3. Vamos a jugar a que un balón no toque el suelo. Para ello,vamos a añadir el objeto pelota y cada
vez que pulsemos la pelota con el ratón tiene que rebotar hacia arriba. ¡Créalo en tu propio equipo
y prueba el juego!

46
EJERCICIOS
1. El gato del ejemplo sólo puede moverse hacia la derecha. Crea el código para que cuando pulse-
mos la tecla de la izquierda el gato se mueva hacia la izquierda.
2. ¡El gato parece que está congelado cuando anda! Cámbiale de disfraz en cada movimiento para
que parezca que se mueva.
3. ¿Recuerdas a los dinosaurios bailando de ejercicios anteriores? Ponlos a bailar cuando pulses la
bandera verde que se encuentra encima del escenario o cualquier otra tecla.
4. Modifica el baile de los dinosaurios para que cada uno baile con una tecla. Por ejemplo, pulsar la
tecla espacio y que baile uno. Pulsar la tecla M y que baile otro.

¡Muy bien! ¡Sigue así!


Si crees en algo y te
esfuerzas, ¡lo podrás
lograr!

47
CODETIME-CONTROL
Esta sección de Scratch es la que nos va a permitir controlar lo que se ejecuta en el juego o en la
historia, y como se ejecuta, permitiéndonos tomar decisiones o crear bucles controlados.
Espera, pero... ¿Qué es un bucle?
Un bucle es la repetición de uno o varios bloques la cantidad de veces que nosotros queramos. Por
ejemplo, si queremos que el murciélago esté volando para siempre, utilizaremos un bucle con los
cambios de disfraz necesarios de un aleteo.

¿Cómo identificamos los bloques de control?


Como vimos en capítulos anteriores, los bloques de con-
trol los podemos encontrar en la sección izquierda de
Scratch con color naranja.

Los bloques que podemos encontrar en la sección de control son los siguientes:
– Esperar 1 segundo: Este bloque que ya ha sido usado en secciones anteriores como en la de
apariencia. Nos permite pausar la ejecución de nuestros bloques por el tiempo definido en el propio
bloque. Por ejemplo, si queremos ver el movimiento entre disfraces estableceremos una pequeña
espera entre disfraz y disfraz para que pueda dar la sensación de movimiento.

48
– Repetir 10: Como hemos mencionado antes, este es el primer bucle que nos encontramos en la
sección de control. En este bloque podemos observar que tiene un pequeño espacio en medio. Este
espacio nos permite añadir otros bloques en medio, los cuales, se repetirán durante 10 veces.

– Por siempre: Los bloques que situemos en medio de este bloque de control se repetiran infinamen-
te o hasta que paremos el juego o la aplicación.

– Si – entonces: Cada vez que se necesite tomar una decisión en el juego recurriremos a este blo-
que o a otros similares porque nos permite decidir qué hacer. Todo lo que se ponga dentro de este
bloque se ejecutará únicamente si se cumple la condición que queramos poner en el operador. (Los
operadores se verán más adelante). Quizá este sea de los bloques más complejos de Scratch, por
ello, vamos a ver varios ejemplos para intentar entenderlo.

Reflexiona y piensa lo siguiente. Tu objetivo es comerte unas galletas pero antes de hacerlo ¿Qué
debería pasar para que puedas hacerlo? ¿Quizá antes de comertelas deberías tener hambre? ¿O
comprobar si quedan galletas en casa? ¿O haberte comido toda la comida a la hora de comer?

49
Si se tuviera que decidir si comerla o no en función de alguna de esas condiciones, los bloques de
Scratch quedarían de la siguiente forma:
Si quedan galletas en casa entonces me las comeré.
Si tengo hambre entonces me comeré las galletas.
Si me he comido todo a la hora de la comida, entonces me comeré las galletas.

Veamos otro ejemplo. Tu objetivo es ir a jugar al fútbol con tus amigos pero antes de hacerlo ¿ Qué
condiciones tendrías para poder ir? ¿Quizá antes deberías haber hecho los deberes?¿O deberías
tener un balón de fútbol?¿O debería tener el balón un amigo tuyo? ¿Se te ocurre alguna otra con-
dición que haría falta para ir a jugar a fútbol?

Si se tuviera que decidir si salir a jugar o no, los bloques de Scratch quedarían de
la siguiente forma:
– Si he hecho los deberes entonces puedo ir a jugar al fútbol
– Si tengo pelota de fútbol entonces puedo ir a jugar al fútbol
– Si tiene pelota mi amigo entonces puedo ir ajugar al fútbol

– Si – entonces – sino: Este bloque de control es similar al anterior con sus condiciones pero esta vez
si se cumple la condición ejecutará una cosa y sino se cumple, ejecutará otra.

Por ejemplo, en el ejemplo de las galletas podría ser:


– Si quedan galletas en casa, entonces me las como, sino, voy a comprar.
– Si tengo hambre, entonces me como las galletas, sino, me voy con mis
amigos.
– Si me he comido todo al medio dia, entonces, me como las galletas, sino, me
como la comida que me ha sobrado y luego las galletas.

Para el ejemplo del fútbol sería similar:


Si he hecho los deberes, entonces, puedo ir a jugar al fútbol, sino, debo hacer los deberes.

50
Si tengo pelota de fútbol, entonces, puedo ir a jugar al fútbol, sino, voy a comprarme una.
Si tiene pelota mi amigo, entonces, puedo ir a jugar al fútbol, sino, me quedo en casa aprendiendo
Scratch.

– Esperar hasta que: Igual que el bloque de esperar en segundos, este bloque obliga al programa a
esperar hasta que una condición se cumpla.

– Repetir hasta que: Nos encontramos con otro bucle que repetirá los bloques contenidos de forma
infinita al menos que se cumpla la condición que contiene. Por ejemplo, sumar 1 muchas veces hasta
llegar a 100 y cuando llegue que pare.

– Detener: Para salir de un bloque infinito podemos usar este bloque también para que pare y se
deje repetir.

51
EJEMPLOS

Este tema puede parecer muy difícil pero una vez entendamos como funciona será muy fácil y para
ello vamos a ver varios ejemplos prácticos.

1. Queremos cambiar de disfraz 10 veces a nuestro persona-


je para que parezca que está andando cuando pulsemos en la
bandera, pero no queremos repetir los bloques 10 veces. Vamos
a usar un bucle que repite 10 veces. ¡Hazlo en tu ordenador y
pruébalo!

2. El cambio de disfraz anterior se ha acabado enseguida.


¿Cómo lo hacemos para que esté para siempre andando? Va-
mos a usar el bloque por siempre y vamos a meter dentro el
bloque de cambio de disfraz.

52
3. Nuestro gato favorito de Scratch
quiere saludarnos y cada vez que le
tocamos con la flecha del ratón nos
va a saludar. Para lograr esto tene-
mos que dividir el problema en varios
más pequeños.
1. Si tocamos al gato, entonces dice
hola durante 2segundos. (Los sen-
sores los veremos en el capítulo si-
guiente).
2. Queremos que esté comprobando
si lo tocamos para siempre, enton-
ces la condición la meteremos en un
bucle.
3. Queremos que empiece a com-
probar cuando pulsemos la bandera.

4. El gato anterior se impacien-


ta si no lo tocamos y nos grita-
rá que lo toquemos hasta que lo
hagamos. Además, le gusta tanto
que cuando lo toquemos también
maullará. Este ejemplo es si-
milar al anterior, pero esta vez
usaremos un bloque “si entonces
sino”. Es decir, cuando pulsemos
la bandera empezará a compro-
bar para siempre si tocamos al
gato, si lo hacemos nos saludará
y maullará y sino nos gritará para
que le toquemos.

53
EJERCICIOS
1. Busca a los dinosaurios bailones de Scratch y crea un bucle para siempre donde estén bailando
a partir de que pulses la tecla espacio. Estos ejercicios empiezan a complicarse un poco, te doy una
pequeña ayuda. En la siguiente imagen aparecen los bloques que necesitas.

2. Los dinosaurios necesitan estar en una discoteca y unos aplausos para sentirse cómodos bai-
lando. Busca un fondo de fiesta y un sonido de aplausos que se reproducirá al principio del baile
únicamente. Te doy una pequeña ayuda en este ejercicio también.

54
3. Llega el momento del final de la fiesta y los dinosaurios están ya cansados y no quieren bailar
más pero ponen tu canción favorita y van a hacer 20 movimientos más. ¿Como sería el algoritmo?

¡Felicidades! ¡Has acabado


otro tema! ¡Hoy empiezas
una aventura digna del
superhéroe que eres!

55
CODETIME-SENSORES
Nuestro personaje ya es capaz de moverse a lo largo y ancho del programa, saltar, correr, bailar, hablar,
e incluso tocar la batería.
Somos capaces de controlar nuestro personaje con diferentes teclas y emitir diferentes sonidos con él.
Podemos controlar el flujo del juego hacia donde queramos porque ya conocemos las estructuras de con-
trol de la programación pero nos falta algo.
¿Cómo decidimos qué ejecutar y cuándo hacerlo?
Entran en juego los sensores. Estos permiten a Scratch recibir información del estado del juego como
puede ser la posición del personaje, si se está pulsando una tecla o si un color está tocando a otro.
Vale, creo que lo entiendo... ¿Pero para qué sirve?
Imaginemos que nuestro Scratchy cada vez que llega a la parte derecha de la pantalla va a cambiar de
escenario para poder seguir su aventura.
Si la condición para que cambie el escenario es que toque el borde, podríamos usar uno de estos sensores.
¿Recuerdas qué bloques tienen los sensores?

¡Exacto! Son estos


bloques en tonos
azules.

Veamos que bloques de sensores más importantes podemos encontrar en Scratch:


– Tocando puntero del ratón o borde: Si utilizamos este sensor en un bloque de control,podremos
ejecutar una serie de acciones tocando al personaje con el puntero del ratón, o que éste toque el
borde de la pantalla.

56
-Tocando el color: Nuestro personaje se desplazará por diferentes mapas y a través de diferentes
elementos. Únicamente tenemos que definir el color que desencadene las acciones e introducir el
sensor en uno de los bloques de control. Pulsando en el color que aparece en el sensor podremos
seleccionar el color exacto que queramos. Además, en la parte inferior de la selección de colores,
hay un icono que nos permitirá tomar muestras de color del propio mapa para conseguir el color
exacto que necesitamos.

-Color tocando otro color: La mano de nuestro personaje puede ser de un color y el personaje de
otro y queremos únicamente que la acción se desencadene cuando el color toque la mano. Con este
sensor podemos desencadenar una acción cuando el color de la mano del personaje toque el color
definido.

PISTA
¿Sabías que la forma de los sensores te indica dónde se pueden encajar dentro de otros blo-
ques?

También podemos comparar algunos datos del juego como el lugar donde está el personaje o la
respuesta a una pregunta. Los datos más interesantes que podemos controlar son los siguientes:
– Posición X del ratón: Este dato nos proporcionará la información del lugar donde se encuentra el
puntero del ratón.

57
– Posición Y del ratón: Igual que la información anterior, este dato nos dará la posición del puntero
del ratón del eje Y.

– Pregunta y respuesta: Este es uno de los bloques más interesantes que podemos encontrar en el
apartado de sensores. El bloque de pregunta nos permitirá que el personaje muestre un mensaje
pidiéndole al jugador que conteste. El programa podrá recoger la respuesta en su variable para
usarla más tarde.

PISTA
Una variable es un pequeño cajón donde guardar información que podemos
consultar o actualizar en cualquier momento.

58
EJEMPLO
1. Nuestro Scratchy es muy propenso a salirse del escenario y nuestra misión es evitarlo cuando el
programa lo detecte. Utilizaremos el sensor tocando borde y estableceremos la condición si – en-
tonces. Resultando el algoritmo siguiente: cuando pulsemos la bandera verde estará comprobando
siempre si nuestro personaje está tocando el borde y si lo hace se deslizará durante un segundo
hacia una posición aleatoria.
Utilizaremos el evento de tecla derecha para poder mover al personaje y comprobar el ejemplo.

59
2. En primavera mucha gente tiene alergias igual que nuestra personaje Abby. Por esa razón,
cada vez que Abby toque una zona verde de césped se irá enseguida a otro punto del escenario
para evitar la alergia.
Para hacer esto, utilizaremos el sensor llamado “tocando color” y cuando Abby lo toque se despla-
zará a un punto aleatorio en un segundo.
Todo esto, igual que en el ejemplo anterior, comenzará cuando pulsemos la bandera y se estará
comprobando el sensor siempre.
Además añadiremos controles para forzar a Abby a tocar el color verde y que huya.

60
EJERCICIOS
1. La bateadora de Scratch está preparada con su bate amarillo para golpear la pelota y man-
darla lo más lejos posible con todas sus fuerzas. Tu objetivo es que cuando la pelota toque el bate
amarillo, ésta salga disparada a una posición aleatoria del mapa. Necesitarás eventos para poder
desplazar la pelota por el escenario y que llegue hasta el bate.
2. Scratchy tiene una campana en su casa para que le avisen de que es el momento de dejar de
programar e ir a comer. Busca el objeto de la campana y reproduce su sonido mientras se esté
pulsando la tecla espacio. En este ejercicio, se deberá usar el sensor “tecla espacio presionada” y
no el sensor que desencadene el sonido.

61
CODETIME -
OPERADORES
Los operadores contienen una serie de bloques que nos van a permitir realizar una variedad de ope-
raciones matemáticas, lógicas y con cadenas de texto que podemos utilizar con el resto de bloques
como el de movimiento, apariencia, control, etc.

¿Recuerdas cómo identificar los operadores en Scratch?


Los operadores los podemos encontrar en la zona de bloques con el
color verde.

Algunos de los bloques más importantes que podemos encontrar son los siguientes:
- Suma: Introduciendo varios valores numéricos nos dará el resultado de una suma matemática.

- Resta: De igual manera que ocurre con la suma se puede introducir dos números y obtener el
resultado de la resta.

62
- Multiplicación: Este operador permite introducir dos valores y obtener el resultado de la multipli-
cación de los valores.

- División: El último operador matemático básico de Scratch nos permitirá hacer división entre los
parametros que le pasemos.

- Número aleatorio: Este bloque nos generará un número aleatorio entre los dos números indicados
en la entrada de datos.

Los bloques que nos encontramos a continuación tienen un resultado booleano, es decir, la respuesta
al bloque solo tendrá dos resultados, verdadero o falso.
- Mayor que: Este bloque permite comparar dos valores y nos dará el resultado de verdadero o
falso si el primer valor es mayor que el segundo.

- Menor que: De forma similar al bloque anterior, éste nos permite comparar dos valores y nos dirá
si el primer valor es menor que el segundo o no.

- Igual: Este bloque nos devolverá el valor “verdadero” si los datos son exactamente iguales, en el
caso de que no lo sean, devolverá el valor “falso”.

63
En ocasiones necesitamos que se cumplan varias condiciones a la vez, que se cumpla una opción
entre varias, o incluso que no se cumpla una. Los bloques siguientes nos van a permitir realizarlo.
– Operador lógico “Y”: Este bloque nos va a permitir forzar al programa a que se cumplan varias
condiciones. Se cumplirá esta opción “y” esta otra.

- Operador lógico “O”: Este bloque condicional nos va a permitir que se cumpla una de las opciones
únicamente. Se cumplirá esta condición “o” esta otra.

- Operador lógico no: Este operador es más simple que los anteriores, devolverá un valor booleano
opuesto al introducido en el bloque. Si se introduce un valor verdadero, devolverá un falso. Si se
introduce un falso, devolverá un verdadero. Nos permite indicar que no queremos que se cumpla
cierta condición.

En las tablas siguientes vamos a ver las posibles condiciones que pueden ocurrir en cada una de las
opciones.
El 1 lógico en un valor de entrada (input) o salida (output) significa que se cumple la condición y el 0
lógico que no se cumple.
Veamos una tabla para el operador lógico Y (AND en inglés)

64
Si observas la tabla, únicamente se cumplirá la condición de salida si todas las entradas se cumplen.
Sin embargo, si observamos la tabla para la función lógica O (OR en inglés), siempre que se cumpla
una de las posibles opciones, el valor de salida será siempre que se cumple la condición.

Finalmente, la tabla de la función lógica NO nos muestra introduciendo una condición su salida.

Finalmente vamos a ver los operadores que trabajan con cadenas de texto. Las cadenas de texto
o Strings son simplemente tipos de datos del tipo texto (palabras o frases comunes).
Estos operadores nos van a permitir unir palabras formando frases, conocer las letras que hay en
las palabras, conocer el tamaño del texto o comprobar si una palabra está contenida en una frase.

Veamos los bloques que podemos encontrar para trabajar todo esto:
– Unir 2 cadenas de texto: En infinidad de ocasiones vamos a necesitar unir datos introducidos por el
usuario y textos ya predefinidos del juego. Por ejemplo, al iniciar el juego se le pregunta al jugador
cual es su nombre y automáticamente el juego le saluda: ¡Bienvenido al juego Diego!

65
- Letra en determinada posición: Para jugar al ahorcado se necesita conocer qué letra hay en
cada posición de la palabra. Este bloque nos sería muy útil para crear ese juego porque nos per-
mitiría comprobar si la letra introducida por el jugador está en la palabra que tenemos que adivinar.

- Longitud de la palabra: Cada vez que busquemos una letra en particular tenemos que conocer la
longitud de la cadena de texto para saber cuando parar de comprobar letras.
Con este bloque, podremos conocer cuantos carácteres tiene una cadena de texto incluyendo los
espacios en blanco.

EJEMPLOS
1. Le pedimos a nuestro personaje que piense en la respuesta de una suma que le damos para que
haga.

2. En esta ocasión, nuestro Scratchy se va a desplazar cada vez entre 5 y 15 pasos. Realizare-
mos una suma de 5 más un número aleatorio, y lo introduciremos en el valor de entrada de despla-
zar al personaje, resultándonos un bloque compuesto como el siguiente:

66
3. El operador “mayor que”, nombrado en las explicaciones nos va a permitir establecer compara-
ciones entre varios números. En este ejemplo, compararemos un número aleatorio entre 1 y 100 y
nuestro personaje dirá si el número aleatorio es mayor o menor de 50.

4. Si nos fijamos en el ejemplo anterior, cuando el número sea mayor o menor de 50, nuestro
personaje nos lo dirá. Pero ¿Y si el número es 50 exactamente? Para esto, enlazaremos varias
condiciones. Si el número 50 es menor o igual a 50 entonces nos dirá que es mayor.
En este caso, es necesario el uso de variables que las veremos en el capítulo siguiente.

67
5. Sin embargo, si queremos que el número 50 se clasifique en el grupo de menores de 50 se pue-
de usar también el operador NO para indicarle que si el número aleatorio es igual a 50, entonces
no se cumple la condición.
En este caso, es necesario el uso de variables que las veremos en el capítulo siguiente.

6. Acabamos de crear nuestro primer juego y queremos que al jugador se le llame por su nombre.
En este ejemplo, vamos a pedirle al usuario que introduzca su nombre y posteriormente nuestro
personaje favorito le saludará.

7. Imaginemos que hemos creado el juego del ahorcado, y cuando el jugador no consigue acertar
ninguna letra, le programaremos al juego que le diga la primera letra de la palabra.

68
EJERCICIOS
1. Scratchy acaba de aprender a sumar y está ansioso por demostrarte que sabe sumar 5 a
todo lo que le preguntes. ¿Cómo lo harías? Puedes utilizar los siguientes bloques.

2. ¿Te ha pasado alguna vez que quieres jugar a un juego de mesa con tu familia o amigos y no
tienes los dados? En este ejercicio Scratchy nos tendrá que decir un número aleatorio entre 1 y 6
cada vez que pulsemos la bandera.
3. Sorprendentemente, nuestro juego nos va a premiar cada vez que saquemos un 6 con el dado
anterior. En este ejercicio, cada vez que pulsemos la bandera generaremos un número aleatorio
y si es igual a 6, saltará el aviso de premio. ¿No sabes por dónde empezar? Te enseño los bloques
que necesitas.

¡Enhorabuena! ¡Te queda


muy poco para acabar!
¡Todo esfuerzo tiene su
recompensa

69
CODETIME-VARIABLES

Todo videojuego tiene sus cajones donde guardar la información que va a necesitar en cualquier
momento, a eso lo llamamos variables.
Una variable va a contener información del juego como puede ser el nombre del jugador, los puntos
que ha ganado, las vidas que tiene, las coordenadas donde se encuentra el personaje, etc.
Cada dato o información irá en una variable diferente que tendremos que crear.

¿Recuerdas cómo identificar el bloque de variables?


El bloque de variables se caracteriza por tener un color
naranja más fuerte que el bloque de control.

Aunque en esta sección podemos encontrar hasta 5 bloques diferentes, únicamente vamos a utili-
zar 2 de estos bloques para trabajar a lo largo del libro.
Únicamente usaremos el bloque de consultar la variable y el bloque de dar un valor a la variable.
Antes de nada, es importante saber crear una variable para poder usarla. Justo entre los bloques
verdes de los operadores y antes de los bloques naranjas de las variables podemos ver un recuadro
que si pinchamos nos permite crear una variable.

70
El nombre que tenga la variable no es importante pero es recomendable que tenga relación con
los datos que vamos a guardar, y seleccionaremos la opción de crear para todos los objetos. Por
ejemplo, si quisiéramos guardar la edad del jugador, podríamos llamar a la variable “edad”.
Para guardar la información en la variable, usaremos el bloque llamado “dar a edad el valor” y en la
entrada de información introduciremos lo que queremos guardar.

Para utilizar la variable, usaremos el bloque redondo con el nombre de la variable como en el ejemplo
anterior en los bloques que nos permita introducir datos de tipo numérico o de texto.

71
EJERCICIOS
1. Crea una variable nombre y guarda tu propio nombre en ella usándo los bloques que más te
gusten.
2. Usa a tu personaje para que diga o piense en el nombre que tienes guardado dentro de la va-
riable.
3. Utiliza el operador “unir” para que tu personaje te salude con un mensaje personalizado como,
por ejemplo: ¡Bienvenido al juego Diego!

¡Felicidades! ¡Ya sabes


todo lo necesario para
crear tu juego! ¡Ahora
toca divertirse!

72
PROYECTO 1: JUEGO PONG
¡Enhorabuena! Si has llegado hasta aquí quiere decir que eres una persona con una capacidad
enorme de esfuerzo y una gran inteligencia.
¿Por qué no empezamos a divertirnos?¿Conoces el juego Pong?
El juego Pong nos mostrará una pelota que va rebotando en el escenario y nosotros defendemos
uno de los lados con una barra. ¡Si la pelota toca nuestro lado perdemos!

¿Qué necesitamos para nuestro juego?


– Una pelota. La puedes dibujar tu mismo/a o puedes utilizar una de las imágenes que ya vienen en
Scratch.
– Una barra negra. Esta barra negra la puedes dibujar y arrastrarla a la parte inferior del esce-
nario donde defenderás tu lado.
– Un fondo: En este caso, se usará un fondo blanco pero cada uno puede usar el fondo que más le
guste.
– Fondo game over: Este fondo lo mostraremos en la pantalla cuando perdamos.

73
¡Genial! Ya tenemos todos los objetos que necesitamos. ¿Por dónde empezamos?
Cada uno puede empezar a programar por lo que más claro tenga, o lo que más le apetezca en
este momento. Para este ejemplo, vamos a empezar a programar el movimiento de nuestra barra.
¿Qué movimiento le vamos a dar?
Muy sencillo. Únicamente vamos a querer que se desplace de izquierda a derecha usando las flechas
del teclado. ¿Recuerdas que vimos ejemplos similares en el tema de movimiento? ¡Te invito a que
vuelvas a ese tema y antes de seguir, piensa como lo harías tú!
En este caso, se puede hacer muy simple. Usando los eventos de pulsación de flechas, sumaremos
al eje X un número positivo o negativo en función del lado que queremos que se desplace.

¿Y si quisiéramos que nuestro control se moviera más rápido? Entonces solo necesitaríamos au-
mentar el valor que se desplaza en el eje X.
Perfecto. Podemos seguir con nuestro juego. ¿Qué más deberíamos programar? Tómate un mo-
mento y piensa que le hace falta al juego para poder jugar.
Cada uno puede programar su juego como quiera, en este caso, nosotros le vamos a programar las
siguientes funciones y con los siguientes bloques:
– Cuando la pelota sobrepase una línea del eje Y habremos perdido. ¿Cómo hacemos esto? El plan-
teamiento sería el siguiente, si la posición Y de la pelota es inferior a -156 entonces pondremos el
fondo de “game over”, esconderemos la pelota y detendremos todo el juego.

74
– Cuando la pelota toque nuestra línea deberá rebotar. ¿Como hacemos este algoritmo? El plan-
teamiento sería, si la pelota toca la línea entonces apuntará la pelota hacia la parte superior de la
pantalla, concretamente hacia una posición aleatoria.

Supongo que te estarás preguntando, ¿Pero cómo voy a golpear la pelota si no hemos programado
su movimiento? ¡Tienes razón! Vamos a darle movimiento a la pelota.
– La pelota debe estar moviéndose constantemente y rebotar cuando toque un borde. ¿Como lo ha-
cemos? En primer lugar, apuntaremos la pelota hacia arriba y después utilizaremos un bucle infinito
para que se esté moviendo para siempre y el bloque para que rebote en el borde.

¡Ya está casi terminado el juego! Sólo nos queda reestablecer la partida cada vez que perdamos.
¿Cómo lo hacemos?
Cada vez que presionemos la tecla espacio pondremos el fondo blanco para jugar y volveremos a
mostrar la pelota.

75
¡Genial! ¡Sólo nos queda unir las piezas y a jugar!
¡Recuerda! Comprobar la posición de la pelota y si toca la línea negra se debe hacer por siempre (al
igual que el movimiento de la pelota). ¡Mételo todo en el mismo bucle “por siempre”!

76
Todavía queda algo que hacer. ¡Disfruta de tu primer videojuego!
Llegados a este punto, estoy seguro de que eres ya un jugador increible de Pong. ¿Te apetece si
contamos todos los puntos que eres capaz de hacer?
¡Genial! Entonces vamos a ganar un punto cada vez que golpeemos la pelota. Para ello, vamos a usar
una variable y el planteamiento será el siguiente: Si la pelota toca la línea entonces le daremos a la
variable el valor que ya tenía más un punto.

Sólo te queda introducir el nuevo bloque en el


programa que ya tenemos y recuerda ponerlo
a 0 cada vez que empiece la partida.

¡Ya tienes tu
primer juego!
¡A jugar!

77
PROYECTO 2: JUEGO DEL COME-
COCOS
En esta ocasión, vamos a realizar nuestro particular comecocos. ¿Sabes a que juego nos referi-
mos?
El juego del comecocos es un juego en el que controlando a una pequeña bola amarilla tenemos que
huir de unos fantasmitas a la vez que comemos todo lo que encontramos en el mapa.
En este proyecto, vamos a realizar una versión más sencilla del comecocos para poder trabajar con
variables, sensores, movimientos, disfraces, fondos y operadores.
¿Cómo va a funcionar nuestra versión del comecocos?
Nuestro comecocos va a tener la misión de sobrevivir el mayor tiempo posible sin que lo atrape el
fantasma.
Al principio del juego, nuestro fantasma le perseguirá muy despacio pero según pase el tiempo se
irá enfadando y persiguiendote más rápido.
¿Que necesitamos?
– Fondo del juego.
– Fondo de fin de partida.
– Comecocos.
– Fantasma.
– Creatividad e imaginación para ampliarlo todo lo que desees.
Todo lo que vamos a usar en este juego lo vamos a pintar nosotros. ¡Comenzamos!
Vamos a preparar el fondo para jugar. Para ello, vamos a dibujar un fondo como a nosotros más nos
guste y todo con el mismo color. Si no recuerdas como se creaba un fondo, no pasa nada, repasa el
capítulo de los fondos y vuelve a este punto.
En mi caso, he creado un fondo con una caja central desde la que empezará el fantasma, unas
paredes para que no pueda cruzar el jugador, y paredes para hacer más difícil que se mueva el
jugador.

78
Para el fondo de final de partida, únicamente nos hará falta un fondo de un color único y un texto
de fin de partida como se ha hecho en el juego anterior. En este caso, he elegido un un fondo negro
con el texto de “game over” en color rojo.
En este caso, se puede hacer muy simple. Usando los eventos de pulsación de flechas, sumaremos
al eje X un número positivo o negativo en función del lado que queremos que se desplace.

¡Muy bien! Ya tenemos los dos fondos. A continuación, nos hará falta crear a nuestro
comecocos, sus disfraces y al fantasma.
Para crear tu personaje, tienes que ir a la sección de personajes y elegir la opción de
pintar como hemos trabajado en temas anteriores.

Para dibujar el comecocos simplemente puedes


dibujarlo con un círculo amarillo simple y será ne-
cesario crear otro disfraz con una boca.

79
El fantasma que nos perseguirá también será ne-
cesario que lo dibujemos pero en este caso no será
necesario crear varios disfraces. Puedes dibujar
el fantasma como más te guste. En este caso, yo lo
he dibujado a mano y lo he coloreado de una forma
muy sencilla. ¡Tú también puedes hacerlo!

¡Llega la hora de programar!¿Qué funcionalidades tendrá nuestro juego?


– Movimiento de nuestro jugador con el uso de las teclas.
– Evitar que nuestro jugador cruce muros.
– Movimiento del fantasma.
– Aumentar velocidad del fantasma.
¿Se te ocurren más funciones que podríamos programar en nuestro juego?
Para programar nuestros movimientos, utilizaremos los eventos de pulsación de las flechas del te-
clado y desplazaremos a nuestro personaje usando el eje X y el eje Y. También giraremos a nuestro
comecocos hacia la dirección que se vaya a mover para que quede más real el desplazamiento.

80
En estos momentos, nuestro coco es capaz de moverse por todo el escenario sin ninguna limitación
pero nos gustaría que no pueda atravesar los muros y le resulte más difícil desplazarse. Para ello,
le indicaremos que cuando toque el color del muro va a retroceder varios pasos, de tal forma, que
nunca podrá atravesarlo.

¡Genial! Ya tenemos nuestros fondos donde jugar y la capacidad del personaje en moverse por
donde nosotros únicamente queremos.
Ahora vamos a programar al fantasma para que comience en su caja al iniciar la partida, nos per-
siga a una velocidad que irá cambiando a lo largo del juego y finalice la partida cuando nos alcance.
¿Cómo logramos todo esto?
Al hacer click en la bandera posicionaremos en X y Y al fantasma, y por siempre, deslizaremos al
fantasma en 10 segundos hacia el jugador.
Para que aumente la velocidad, al hacer click en la bandera aumentaremos el valor de una variable
llamada velocidad cada 15 segundos en su valor anterior más 1.
¿Pero, cómo hacemos que vaya aumentando la velocidad?
Cuando se deslize el fantasma hacia el jugador, lo hará en 10 segundos menos la velocidad (que
vamos aumentando cada 15 segundos).
Veamos los bloques para ver el resultado.

81
¡Recuerda que estos bloques tienes que crearlos en el personaje del fantasma!
Finalmente, vamos a poner la velocidad a 0 al inicio de la partida, poner el fondo del juego, mostrar
a nuestro personaje y cambiarle el disfraz cada dos segundos al comecocos. ¡Todo esto se hará en
el área de programación del comecocos!

82
¡Fantástico! Ya tenemos el juego finalizado. ¿Por qué no lo pruebas? ¡Te reto a mantenerte vivo más
de 3 minutos! ¿Lo podrás conseguir?

83
DESPEDIDA
¡Ya conoces todo lo necesario para programar todo lo que se te ocurra! ¡Es momento de
programar tus propios juegos!
¡Recuerda que la práctica hace al maestro! En estos momentos estás de camino a ser un maestro
de la programación de Scratch. Puedes llegar a ser un gran creador de videojuegos si sigues el
siguiente consejo: ¡PRACTICA, PRACTICA Y PRACTICA!
Así de sencillo es lograr el domino completo de la creación de los videojuegos.
¿Ya lo tienes dominado y necesitas nuevos retos? Con tus nuevos conocimientos podrás acercarte
a estos nuevos mundos:
– Programación de mundos en Minecraft.
– Iniciación a la robotica con Mblock
– Desarrollo más avanzado de videojuegos con Unity.
En todos los retos que te he mencionado encontrarás que las bases de programación aprendidas
también son aplicadas. ¡Sólo me queda desearte mucha suerte y ánimo en este mundo tan fasci-
nante!

¡HASTA PRONTO!

84

También podría gustarte