[Powered by Google Translate] ZAMYLA CHAN: Está bien.
Hola a todos y bienvenidos a Tutorial 0.
Zamyla mi nombre, y yo voy a estar llevando estos
tutoriales de este año.
En CS50, cada conjunto de problemas se acompaña de un tutorial
por lo que vamos a ir a través de boletín de problemas de la semana, hable
a través de, hablar de cómo empezar, discutir diferentes
técnicas y consejos para romper realmente el problema planteado en
algunas picaduras manejables.
También estoy muy feliz de contestar cualquier pregunta que usted
tener sobre el conjunto de problemas.
Sin más preámbulos, me alegro de que estés aquí, si usted es
aquí en persona, o la sintonía en línea.
Vamos a empezar.
>> Así que el primer p-set en CS50 -
en realidad, no vamos a entrar en mecanografía y la máquina
Código cosas todavía.
Estamos realmente va a utilizar Scratch, que es un
programa que nos permite hacer un poco de arrastrar y soltar
programación.
Y así, a pesar de que no estamos escribiendo, lo que realmente nos permite
explorar algunos de los conceptos fundamentales que
vamos a utilizar a lo largo de todo CS50.
Ahora, algunos de estos conceptos son
Aquí encontrará una lista en la caja de herramientas.
Lo que me gustaría hacer para cada tutorial es presentar a todos ustedes
con un conjunto de herramientas que se pueden utilizar para el tutorial.
Y así, no se preocupe.
Vamos a repasar todos estos términos y todas ellas
teorías durante el tutorial.
Ahora, si usted termina con todas estas herramientas, o simplemente
algunos de ellos, que es muy bueno saber lo que está equipado
con poder para abordar el conjunto de problemas.
>> Así que en Scratch, la jerga primero que necesitamos saber es qué
es un sprite.
Así que cada objeto o personaje todo, ya sea un gato de un perro
o una bola, que se llama un sprite.
Y por eso, si quiero, digamos, dos gatos - si están o no
idénticos -
Voy a tener que hacer dos sprites diferentes en Scratch.
Y así sprites tienen los scripts asociados con ellos.
Los scripts son en realidad lo que va a ser la construcción -
arrastrar y soltar - con sus bloques.
Y así lo que se está es una especie de determinar y definir cómo
el sprite se comporta.
Sprites no son en realidad imágenes, porque tenemos
trajes también asociados con los sprites ese tipo de
determinar lo que el duende se parece.
Y usted puede tener más de un traje para un sprite dado.
>> Así que en algún momento durante su programa Scratch, como vamos a mostrar
más tarde el día de hoy durante la visita guiada, en realidad se puede
cambiar el traje de tu sprite para que se vea bien
ligeramente diferente o completamente diferentes.
Y por lo que hay tres maneras de crear un sprite en Scratch.
Uno de ellos, se puede dibujar su propio Scratch
construido en editor de pintura.
Usted puede subir su propia imagen, utilice uno de Scratch incorporado
unos, o, la última opción, obtener un sprite al azar.
Ahora bien, si usted se siente especialmente afortunado, entonces yo
invitamos a probar su suerte y crear un sprite al azar.
>> Así que todos los sprites se colocan en
la etapa en Scratch.
La etapa - podemos tratarlo como nuestro lienzo.
Y así todos los sprites se colocan en el escenario.
Y esta etapa, lo que hace es permite que todos los sprites
para moverse en él.
Y al igual que los sprites, el estadio también tiene scripts.
Y así, estas secuencias de comandos, para colocarlos en el escenario -
es realmente útil cuando, por ejemplo, tiene un guión que no
exactamente se refieren a un sprite específico, sino más bien
se refiere a varios sprites o simplemente, en general, algo
que usted quiere hacer.
Así que usted puede poner los archivos de comandos de la etapa de cambio, y que
diseño sería un poco mejor.
Ahora, mientras usted puede tener múltiples sprites, es bueno
tenga en cuenta que sólo puedes tener un escenario.
Pero etapas también tienen fondos.
A diferencia de los trajes, como hacer sprites, etapas tienen
orígenes.
Y de nuevo, usted puede dibujar su propia cuenta o subir su propio diseño
imagen que desea utilizar como fondo.
>> Entonces, ¿alguien tiene alguna pregunta antes de seguir adelante?
Aceptar.
Siéntase libre de interrumpir lo que durante el tutorial, y
Estoy encantado de responder a cualquier pregunta que usted tenga.
Aceptar.
Por eso, cuando se inicia el programa sprite, lo que va a
Qué se le va a hacer clic la bandera verde.
Pero si usted no conecte nada a este bloque de la derecha
aquí, entonces nada en realidad va a suceder.
Porque, verás, lo que las secuencias de comandos y la etapa de la necesidad de
hacer es realmente saber para responder al evento -
eso es lo que ellos llaman, eventos - de la bandera verde
que se ha pulsado.
Así que hay que adjuntar en realidad los bloques de la ranura en la
parte inferior del bloque de bandera verde que se hace clic, y luego la
programa sabrá qué hacer y cómo responder a la
bandera verde que se ha pulsado.
>> Bueno, ¿qué viene después?
Bueno, tenemos una gran cantidad de bloques de Scratch para usar, y
donde la carne, en definitiva, de su programa reside en estos
declaraciones.
Y por lo que estas declaraciones son convenientemente
organizado por color.
Usted tiene acciones relacionadas con el movimiento,
sonido, apariencia, etc.
Y para que veas que puedes navegar entre ellas en el
fichas en el programa Scratch.
Y así, mientras usted tiene otras cosas construidas a su alrededor,
lo que los estados hacen realmente es en realidad dice la
sprites o la etapa de hacer algo.
A diferencia de simplemente decir, OK, cuando lo hace, el
declaraciones contienen realmente la verdadera sustancia de la misma.
Digamos que usted desea ejecutar sólo una determinada acción, por ejemplo
sólo desea que el gato a maullar cuando una cierta cosa sucede.
Podemos tomar ventaja de booleanos, lo que has aprendido en
una conferencia.
Y estas son expresiones que se evalúan
ya sea verdadera o falsa.
Y por lo que estos se identifican en Scratch por el -
se ven los ángulos al final de esos bloques.
Y por lo que tiene una gran variedad de diferentes tipos de Booleanos.
Ha "es el más siendo presionado hacia abajo", "hace 2 más 2
equivale a 5 ", o" es que el usuario presiona una tecla determinada en
el teclado? "
>> Ahora, usted no sólo puede utilizar estas solo.
Lo que tienes que hacer es combinarlos con una condición.
Así que la condición está ahí en la ficha de control en Scratch.
Y por lo que convenientemente tiene un marcador de posición que poco
muestra la forma del bloque que tiene que poner en él.
Así que dependiendo del contexto de la situación, puede elegir
un valor booleano y luego se coloca en el interior de su condición.
Y allí se tiene una sentencia condicional.
Si pones instrucciones dentro de ese bloque, entonces usted tiene un
estructura creada, por lo que una vez que una determinada condición se cumple en
la izquierda, a continuación, ejecutar la sentencia.
¿Sí?
>> ESTUDIANTE: Si una variable representa un número, puede
utilizar la variable dentro del booleano, como el verde,
por ejemplo?
ZAMYLA CHANDLER: Sí, se puede.
Puede arrastrar y soltar el valor de la variable dentro de la
dar forma circular allí.
>> Ahora, una de las ventajas de los ordenadores es la gran potencia
y la velocidad a la que pueden ejecutar procesos repetitivos.
Y así, en lugar de, por ejemplo, repetir una instrucción más
y una y otra vez y realmente escribir eso - o
en este caso, en Scratch, arrastrar y soltar y
arrastrar y soltar -
lo que podemos hacer es encapsular en un bucle.
Y así, los bucles pueden utilizarse para ejecutar cualquiera de las cosas
infinitamente con un bucle para siempre, o por una
establecer el número de veces -
decir, repetir "Say Hi" 10 veces o hasta que un cierto
condición es verdadera.
Y así, una vez más, se ve que Scratch está dando a entender que cuando
usted tiene una condición como la "repetición hasta que," entonces la única
cosa que quepa en el interior hay un valor booleano.
Está bien.
>> Así que ahora, sabemos que podemos encapsular repetitivo
procesos dentro de bucles.
Usted puede ver por qué algo como esto podría no ser ideal.
No encaja en la diapositiva.
Esencialmente, sólo hace lo mismo una y otra vez
10 veces, de hecho.
Se mueve 10 pasos, saluda, se mueve 10 pasos, dice hola.
Así que ahora usted puede ver que una vez que tengamos lazos, algo así como
esto es mucho mejor.
Es más corto, es más pequeña, y que en realidad se completa la
lo mismo.
Ahora, en Scratch esto podría no hacer una gran diferencia, pero
lo que realmente le ahorra tiempo.
>> Así que a la expresión variable -
en realidad se puede utilizar las variables y los puso dentro de
condiciones.
Según lo expresado allí, ves que tenemos una variable llamada
"Contrarrestar", y estamos igualando eso para ver si
es menor que 0.
Así que las variables son esencialmente, yo diría,
contenedores para los valores.
En Scratch, los tipos de valores pueden ser palabras o
que pueden ser números.
Y así, con estas variables, lo que podemos hacer con ellas es
puede establecer su valor.
Así que en el primer ejemplo aquí tenemos el ejemplo de texto
que contiene el valor "Hello, World!" En el segundo ejemplo,
se asume que ya tenemos una variable llamada
"Contrarrestar", y en ese caso, lo estamos cambiando por 3.
Lo estamos incrementando por 3.
Y luego, en el último ejemplo, las variables se pueden arrastrar
para ser puesto en una expresión booleana.
>> Ahora, cuando se crea una variable, lo que tiene que
decidir es si usted hace la variable para toda la
sprites en su programa Scratch, o simplemente para la
detalles sprite en el que usted ha seleccionado al hacer
la variable.
Así que esta es una decisión muy importante que hacer.
Y realmente se reduce a lo que desea que el ámbito de aplicación
variable a tener.
Así, por ejemplo, un ejemplo de alcance local sería si
elegir sólo para este elemento sprite para que el variable.
Así que significa que sólo ese sprite para poder
acceder a esa variable.
Sólo ese sprite sería capaz de verlo,
cambiarlo, modificarlo.
Si usted elige para tener un alcance global -
así que eso es si usted dice para todos los sprites, si
selecciona esa opción -
entonces eso significa que la fase, así como todos los sprites
será capaz de ver, modificar y acceder a dicha variable que
que has creado.
Cualquier pregunta hasta ahora sobre variables o algo?
Sí.
>> ESTUDIANTE: Para las variables, se puede tener dos variables de
el mismo nombre si están en sprites diferentes?
ZAMYLA CHAN: Como siempre que sean sprites locales ---
ah, sí, lo siento.
Así que la pregunta es si se puede tener dos variables de
el mismo nombre en un programa y si tiene dos variables con
el mismo nombre pero son dos sprites locales, por lo que un duende,
el gato, tiene un nombre variable "counter", y el sprite dos, el
perro, tiene una variable llamada "contador", siempre y cuando los
son ambos sprites locales, a continuación, su ámbito de aplicación no se extiende a
el resto del programa.
Y por lo que ninguno de los otros sprites o la
etapa se confundirá.
Está bien.
>> Así que he mencionado antes del punto de entrada cuando tuvimos la
cuando está verde bloque marcado se hace clic.
Y así lo que es -
dice: OK, cuando ocurra el evento de que la bandera verde es
clic, esto es lo que debe hacer.
Y de modo que no es realmente el único evento
que tenemos en Scratch.
También tenemos otros eventos.
Así tenemos, por ejemplo, cuando una llave en
el teclado se pulsa.
Y en realidad se podría escoger las letras de la A a la Z, 0
al 9, o las teclas de flecha.
Y luego también tenemos otros eventos, por ejemplo cuando su
sprite se hace clic.
Y así, cuando se empieza con eso, se observa la tendencia clave
es que solo tienen una ranura en la parte inferior, y así
entonces, una vez más, las claves de usted en que nada de lo anterior se une
ese bloque.
Se construye a partir de eso y de abajo.
>> Ahora, por ejemplo, ¿qué pasa si queremos que suceda algún evento sólo
cuando, no sé, un gato está en contacto con un sector determinado de
el escenario o algo así?
En realidad no tenemos ninguna construcción en
evento para significar que.
Entonces, ¿qué vamos a tener que hacer es en realidad crear nuestro propio evento.
Y eso se llama radiodifusión.
Así que cuando se quiere indicar que un cierto ha pasado,
a continuación, se utiliza - en la ficha de control, hay un bloque llamado
"Emisión". Y entonces, podrás escribir el nombre de la
evento que desea transmitir, y luego lo
sprite o sprites -
usted puede tener múltiples sprites reaccionan a este mensaje -
o la etapa se tiene que manejar, tendrá que
recibirlo, tendrá que decir, OK, entiendo que esto tiene
sucedido, así que voy a hacer esto con él.
Y así, cada vez que se emite un evento, eso es con el
entendido que cualquiera que sprite o duende es otro
va a tener que recibir ese evento y responder.
>> Ahora, el último concepto antes de entrar en un ejemplo real
de un programa de Scratch es roscas.
Hilos Así es cuando el equipo se está ejecutando
procesos simultáneos al mismo tiempo.
Les garantizo que todos nosotros hemos aprovechado
temas cuando estamos viendo una película en el mismo tiempo que
escribiendo un ensayo o algo así.
El ordenador está ejecutando varias cosas al mismo
tiempo, al igual que cero puede.
Así como se puede ver en este ejemplo, estos dos scripts pueden
ser usado para el mismo sprite exacto, debido a que estos
comenzando bloques de punto de entrada en realidad puede utilizarse
múltiplos de veces.
Te garantizo que probablemente la bandera verde clic bloque
será uno de los más populares
bloques del programa.
Así que aquí vemos que cuando la bandera verde se hace clic, no hay
un proceso en marcha, así como cuando la bandera verde es
clic, hay un proceso separado pasando.
Y así, los arañazos se ejecutará estos dos al mismo tiempo.
Y así, con estos hilos, sabiendo que en realidad se puede
tener más de un punto de entrada -
incluso si es el mismo punto de entrada -
que va a ser realmente útil si desea, por ejemplo,
separar tareas distintas una de otra.
Está bien.
Así que vamos a ver en realidad en un ejemplo de un programa de Scratch.
>> Aceptar.
Así que ya he hecho un pequeño programa para nosotros aquí.
Así que sólo voy clic en la bandera verde para comenzar y ver
lo que hace.
Así que tenemos un pez naranja aquí -
un sprite pescado -
parece moverse y luego reiniciar y volver.
Y luego tenemos un sprite de tiburón.
Y este elemento sprite tiburón puede moverse, puede girar, lo que puede
nadar.
Aceptar.
Así que es bastante divertido.
Pero definitivamente podemos añadir más a eso.
Por ejemplo, podemos ver que cuando el tiburón se está moviendo, lo que puede
en realidad salir de la pantalla y casi
desaparecer de la vista.
Así que queremos cambiar eso, porque no queremos que la
tiburón de escapar.
Y por eso vamos a dejar nuestro script y luego editar el tiburón
scripts, tal vez añadir algo.
Nótese que en este sprite particular en este caso, por los siglos de bucle
extremos con un borde recto.
No tiene ninguna ranura.
Así que, de hecho, esto tiene sentido, porque es un bucle infinito.
Está ejecutando algo infinitamente.
Por lo tanto, nunca va a terminar.
Incluso si había algo debajo de ella, lo haría
Nunca llegaremos a eso.
Así que en realidad se vio obligado a introducir un hilo.
>> Está bien.
Así que vamos a añadir otro script.
Así que voy a empezar con este punto de entrada cuando está verde
bandera se hace clic.
Así que lo que quiero hacer es comprobar continuamente si el
tiburón se va a tocar el borde.
Pero sé que, en realidad, en virtud de que hay un movimiento ordenado
pequeño bloque que dice, oh, si en el borde, rebote.
Así que lo que quiero hacer es ejecutar continuamente.
Y así lo que este "si en el borde, rebote" hace - en realidad
comprueba si ya estoy en el borde, y luego recuperarse.
Así que tenemos que encontrar algún tipo de bucle continuamente
ejecutar esta instrucción.
Así que si miramos bajo control, ¿alguien tiene una idea de
qué lazo podríamos querer usar?
Si.
>> ESTUDIANTE: El bucle infinito.
ZAMYLA CHAN: Exactamente, sí.
El bucle infinito.
Así que vamos a seguir que aquí, y luego decir, si en el borde, rebote.
Y luego vamos a ver.
Está bien.
Así que el pez se mueve como de costumbre.
Y entonces, oh -
Ahora el tiburón no puede escapar y rebota en la pantalla.
Cool.
Está bien.
Así que yo estaba mirando hacia adentro
No puedo - ¿sí?
>> ESTUDIANTE: ¿Cómo hacer que se aplican al tiburón mientras se mueve
a los peces?
ZAMYLA CHAN: Ah.
Así que la razón por la que sólo el tiburón rebota, a diferencia
pescado, así, es porque este guión que escribimos está dentro
el sprite tiburón.
Ya ves, aquí arriba, el sprite tiburón está seleccionado.
Está bien.
Así que vamos a añadir algo más.
Yo estaba estudiando en los trajes diferentes que
Rasguño tiene, y vi a este pequeño y lindo de tiburones chomp.
Así que pensé que, bueno, bueno, tal vez podamos poner en práctica el
tiburón mordiendo, por ejemplo, cuando pulsamos el espacio.
Voy a parar esto.
Está bien.
Sí.
>> ESTUDIANTE: ¿Podrías mostrar el - es que bajo disfraces?
ZAMYLA CHANDLER: Oh, sí.
Así que me fui bajo disfraces, y luego me miró debajo de importación.
Y aquí, Scratch tiene toda una serie de trajes que
usted puede elegir.
Y luego hay un montón de animales, y luego la
tiburón tiene un par de trajes asociados.
Aceptar.
Así que en este guión aquí, ya estoy comprobando continuamente
en el bucle para siempre, bien, bien, si la flecha de la izquierda es presionado,
entonces quiero girar en sentido antihorario.
Si la flecha derecha es presionado, deseo girar las agujas del reloj.
Si la flecha hasta que se pulsa, entonces yo
quiere avanzar hacia adelante.
Así que lo que podemos hacer es añadir a este script, en lugar de
añadir un aparte, porque esto ya está llegando
el tema de las teclas que están siendo presionados.
>> Así que vamos a añadir una que dice que si la tecla de espacio - vamos a utilizar el
espacio clave para chomp abajo.
Así que éstos flecha izquierda tecla pulsada, etc, estos son
en el azul brillante.
Así que vamos a ir a la detección de azul brillante, y mirar hacia abajo.
Ah, y aquí es un espacio de tecla pulsada.
Así que lo que quiero hacer es que la conmutación de tiburón para su
chomping abajo disfraz.
Eso tiene que ver con la forma en que el tiburón
Parece, por lo que vamos a ve.
Y aquí tenemos, convenientemente, cambie a
disfraz de tiburón chomp.
Pero cuando chomp abajo, no queremos que el tiburón sea
chomping abajo para siempre, así que vamos a añadir, OK, bueno, entonces,
después de lo muerde, queremos que vuelva.
OK, así que vamos a ver lo que hace.
Así lo hemos moverse.
Aceptar.
Así que tenemos que masticar.
Es una especie de masticar rápidamente, sin embargo, debido a que en Scratch,
Les está ejecutando de forma instantánea.
Entonces, vamos a controlar y hacer apreciar su
chomp, espera un segundo.
Y aquí abajo muerde un poco más de tiempo antes de que se
de nuevo a su hambre.
>> Aceptar.
Así que estoy bastante contento con el tiburón ahora.
Sin embargo, el pescado, lo que parece estar haciendo - es un avance
par de pasos, de hecho, cinco veces.
Se mueve 50 pasos.
Y entonces lo que está haciendo aquí en este bloque superior aquí es que estoy
decir, OK, bueno, esto va a ir a un cierto valor de x.
Para encontrar las coordenadas, en realidad se puede simplemente puntero del ratón sobre
la pantalla y, a continuación, en la parte inferior -
por aquí -
lo voy a mostrar lo que las coordenadas son.
Así que usted puede tomar ventaja de eso para introducir las coordenadas
que desee.
Y así lo que esta declaración está diciendo aquí está diciendo, OK,
así, el pescado se inicia en este valor de x determinado y luego la
de altura se puede cambiar.
De hecho voy a coger una altura aleatoria que aún se mantiene
dentro de las limitaciones de la etapa.
Y aquí, lo que me estoy aprovechando de es
retransmisión de eventos.
Así que ya ves que este controlador de eventos es fish1 nuevo.
Así que cada vez que el pez recibe el nuevo fish1 evento, que va a
ejecutar esto.
Y luego ves que después se mueve hacia adelante su importe conjunto
de veces, entonces se emite en realidad
de nuevo, OK, nuevo fish1.
Pero en cambio, ¿qué vamos a hacer para que el único pez
continúa hasta el final de la pantalla antes de que se reajuste,
en lugar de sólo un poco de ir al centro de la misma.
Así que en lugar de decir, repetir cinco veces - porque nosotros no
realmente sé cuántas veces será necesario hasta que
alcanza el final de la pantalla, vamos a usar otra cosa.
>> Así que me voy a separar esto, porque
realmente no quiero esto.
Para borrar bloques en Scratch, lo que haces es simplemente arrastrar
a la liberación izquierda, y luego se elimina.
Si usted decide que no quiere hacer eso, entonces se puede
siempre que recuperar.
Pero queremos deshacernos de esto.
Lo que queremos hacer es que queremos seguir en movimiento 50 pasos y
haciendo una pausa de un segundo hasta que toque el extremo de la pantalla.
Así que ¿alguien puede detectar un bucle que podríamos querer utilizar ese
repite un proceso justo hasta que toque la pantalla.
>> ESTUDIANTE: Repite hasta.
ZAMYLA CHAN: He oído que "repetir hasta", y eso es correcto.
Así que sí, esta repetición hasta que el bloque también tiene una -
pero vemos que esta repetición hasta que el bloque no es del todo
completa, ¿no?
Así que tenemos que decir, OK, bueno, repetir hasta cuándo?
Por eso decimos, bien, bien, repita hasta que el pescado esté en contacto con la
borde de la pantalla.
Así que voy a decir que eso es bajo de detección.
Hay un booleano conmovedor.
Y así, se puede elegir lo que quiere ser la comprobación
que el pescado está en contacto.
Así que aquí, queremos decir tocando el borde.
Y entonces nos quiere agregar este interactivo
Y ahora, si queremos ver a nuestros peces van, una vez que toque el
borde, que va a volver de nuevo.
Está bien.
Así que estoy feliz con eso.
Y vamos a abrir HungryShark1.
>> Bueno, algo así como un programa de cocina, he añadido un poco
más funciones.
Así, por ejemplo, se ve que el pescado es en realidad
deslizándose sin problemas, a diferencia de antes, cuando era
tipo de movimiento y parada, el movimiento y parada -
esencialmente saltando píxeles establecidos.
Miré debajo de Movimiento, que se encuentra esta declaración de planeo, y yo
dijo, OK, en lugar de mover y parar, mover
y parar, voy a deslizarse 70 unidades a la derecha,
pero estar en mi posición y lo mismo aquí.
Está bien.
Así que tenemos un tiburón que puede masticar.
Cool.
Pero se llama HungryShark, después de todo, así que vamos a tener la
tiburón comer a los peces.
>> Entonces, ¿cómo podemos decir a los peces o decirle al tiburón que tiene
chomped abajo?
¿Cómo podemos comunicar?
Sí.
ESTUDIANTE: En el segundo traje del tiburón,
se captura el pescado.
ZAMYLA CHANDLER: Sí, exactamente.
Así que sabemos que cuando estamos cambiando el traje a la
chomp, chomp que tenemos abajo.
Ahora, finalmente, tendrá que comprobar.
Digamos que queremos que los peces desaparecen una vez que su comida.
Vamos a tener que comunicar de alguna manera a los peces que
que tendrá que ocultar, por ejemplo, o desaparecer de
la pantalla una vez que ha sido mordió abajo.
>> Entonces, ¿qué tipo de concepto, ¿qué tipo de herramientas podemos utilizar para
tienen el tiburón se comunican a los peces, OK,
He mordió abajo?
ESTUDIANTE: Radiodifusión.
ZAMYLA CHANDLER: Sí, exactamente, la difusión de un evento.
Así que vamos a ir para el Control y digamos difusión.
Y vamos a transmitir chomp.
Está bien.
Pero una vez que transmitir algo, eso es con el
supuesto de que en realidad estamos va a tener algo
recibirlo.
Así que va a ser el pez.
Así que vamos a decir, cuando recibo chomp.
Ahora, cuando el tiburón chomp abajo sólo un espacio vacío, no lo hacemos
desea que el pescado para reaccionar a que en todo.
Así que vamos a decir, OK, bueno, sólo si el tiburón está en contacto con la
peces en el momento de la chomp -
que es cuando realmente va a hacer algo.
Así pues, vamos a utilizar la condición si, a la derecha,
porque estamos comprobando si algo es verdad o no.
Así que si nos remontamos a la detección, entonces podemos
utilizar aquí, si toca.
Y luego aquí, vamos a elegir el tiburón.
A continuación, en Apariencia, este bloque hide -
que básicamente va a hacer que los peces desaparezcan del escenario.
Haremos que ocultar, pero queremos que otro pez, ¿verdad?
El tiburón tiene hambre.
Queremos darle más pescado.
Así que también vamos a emitir un nuevo pez nuevo.
Aceptar.
Así que vamos a ver lo que hace.
>> Cool.
Así que muerde abajo y aparece otro pez.
Pero eso es un poco demasiado rápido para otro pez que ir.
Así que vamos a esperar un segundo antes de que
emitir un nuevo pez.
Está bien.
Aceptar.
Así que esta es una muy buena toma de un juego.
Sin embargo, todos los juegos necesitan una partitura, ¿no?
Entonces, ¿qué podríamos utilizar para llevar la cuenta?
Sí.
ESTUDIANTE: Otros -
ZAMYLA CHAN: Si.
Exactamente.
Si.
Por eso queremos hacer un seguimiento de cómo básicamente
muchos peces se come.
Para ello, vamos a tener que hacer una variable.
Vamos a llamar a este respecto.
Y así, presumiblemente, ya que este es un juego que estamos jugando,
vamos a querer a los peces a ser capaz de -
decir, una vez que su come puede aumentar la calificación o
algo y luego la etapa probablemente tendrá que hacer
algo con el dolor también.
Así que voy a optar por hacer esta variable a nivel mundial y decir
para todos los sprites.
Aceptar.
Por eso, cuando queremos aumentar el marcador?
Cuando un pez se ha comido.
Así que ya tenemos aquí un proceso que está tratando
con los peces que se comen.
Así que vamos a añadir esta declaración aquí -
cambio en la puntuación de 1.
Cool.
Así que una vez que comes un pescado, que aumenta la puntuación.
>> Está bien.
Así que decir que estoy cansado de este juego.
Me detengo.
Y entonces, oh, quiero volver al juego.
Quiero empezar una nueva partida.
Pues bien, el resultado es todavía 3, aunque estoy
jugando un juego nuevo.
Realmente no quiero nunca anotar para restablecer, ¿verdad?
Así que vamos a añadir una declaración cuando se inicia el juego en el
organizar decir, OK, bueno, queremos restablecer la partitura.
Así que aquí fijamos el puntaje variable a 0.
Y ahora, cada vez que se inicia un juego, la puntuación
comenzará a 0.
Cool.
Aceptar.
Así que ahora, vamos a pasar a HungryShark2.
>> Así que he hecho un poco más ahora, y es lo que he hecho
clic derecho en el sprite de pescado.
Yo quería más pescado, y así hice clic duplicado y lo hizo
un nuevo sprite idéntica a uno y también se copia en todos los
está también.
Entonces este fish2 es esencialmente idéntico al
fish1, excepto que en lugar de a partir de la izquierda y
desplazando a la derecha, comienza a la derecha y se mueve a la izquierda.
Y entonces yo también eligió un traje nuevo para él.
Luego encontré otro traje que era un pez manchado, y yo
Era como, cool, esto parece venenoso, así que vamos a suponer
que se trata de un pez venenoso.
Y entonces dije, OK, bueno, en lugar de comer la
peces venenosos y que su aumento de puntuación, que en realidad
queremos que disminuya.
Así que aquí hemos puntuación decreciente por 1 cada vez que el
tiburón que se come.
Y entonces, me gustó mucho el vestuario que Scratch
proporcionado, y miré, y entonces me pareció que las shark's -
parecía un tiburón enfermo.
Y entonces he editado yo hacía verde.
Y yo estaba como, cool, es un tiburón enfermo.
Está bien.
>> Así que vamos a añadir a nuestro script de algún tipo de forma de hacer que la
interruptor de tiburón a estar enfermo cada vez que
come un pescado envenenado.
Aceptar.
Así pues copiamos todos los scripts de nuestra original
los peces en el pez venenoso, que ya cuenta con este elemento sprite aquí
que dice que, cuando me mordió abajo, yo soy
realmente mordió abajo?
Así que podemos tomar ventaja de esto para comunicar a la
tiburón, oh, bueno, usted acaba de comer un pescado venenoso.
Eres un enfermo.
Y así, este sería el tipo de acción?
¿Qué se quiere hacer?
Broadcast.
Sí, exactamente.
Así que vamos a difusión.
Llamémoslo tiburón enfermo.
Aceptar.
Así que ahora, el tiburón, obviamente, va a ser el que está
recibir este evento.
Así que vamos a añadir cuando recibo el tiburón estar enfermo.
Aceptar.
Así que sabemos que tenemos este traje -
el tiburón está enfermo.
Y entonces sabemos desde antes de que clase de apreciar
cuando podemos hacer una pausa un poco antes de volver.
¿Sí?
>> ESTUDIANTE: ¿Cómo se copia de escritura
un sprite a otro?
ZAMYLA CHAN: Ah.
Así que en este ejemplo, cuando yo acabamos de duplicar el sprite, a
copiar un guión a otro sprite, lo que hice aquí fue
sólo decir duplicado, y que en realidad hizo todo un nuevo
sprite con todos los scripts incluidos.
Pero supongamos que desea copiar sólo un guión determinado a otro
sprite, entonces lo que haría es en realidad sólo tienes que arrastrar este,
ciernen sobre otro guión, y ahora aquí lo duplica.
En este caso, ya lo tenía, así que sólo se puede eliminar
que de nuevo.
Pero para copiar un script en otro, lo que haces es simplemente
arrástrelo a los otros sprites.
Aceptar.
>> Así que estamos de vuelta en el tiburón de estar enfermo.
Tiburón Así que ha recibido está enfermo, y dice que, OK, bueno,
una vez que estoy enfermo, me voy a cambiar a mi vestuario que dice
"Tiburón enfermo", y ahora, vamos a añadir una espera para
apreciar el verde.
Y entonces vamos a tener hambre, así que puede simplemente
volver al tiburón tener hambre.
Está bien.
Así que vamos a comer este pescado púrpura.
Eso está bien.
Buena pregunta.
¿Qué pasó con el contador?
Aceptar.
Así que nos hemos fijado puntuación a 0, pero este resultado - lo que
esta marca de verificación se oculta o unhides la variable
de la pantalla.
Pero lo que podemos hacer en lugar de lo desmarcando o control -
que en realidad puede tener este bloque aquí dice "mostrar u ocultar
la variable. "Así que vamos a asegurarnos de que cada vez que comenzamos
el juego que la variable se muestra.
>> Aceptar.
Así que ahora la variable se muestra.
Comemos un pez venenoso, y nos enfermamos.
Cool.
Está bien.
Así que ahora, es raro para un juego que tengamos negativo
puntos, ¿no?
Por lo tanto, sigue comiendo estos y es como -
entonces ¿qué cada vez que tenemos negativa, si hemos comido demasiado
muchos peces venenosos, más de juego - tiburón es demasiado enferma.
Está bien.
Así que lo que tendrás que hacer es que tendremos que
transmitir algún evento -
más de juego.
Así que podemos hacer esto de varias maneras, en realidad.
Podríamos tener un lugar en la etapa de una secuencia de comandos que
continuamente los controles es la puntuación negativa?
Es el resultado negativo?
Si es así, emitimos este evento.
>> Así que esa es una manera de hacerlo.
O podemos tomar ventaja del hecho de que sabemos que la
única manera de que su puntuación podría ser negativo es cuando usted come una
peces venenosos, ¿verdad?
Porque cuando usted come otro pez, su
puntuación se va a aumentar.
Así que no hay uso en el control de si debe ser
más de juego o no.
Así que este es un proceso similar aquí.
Así que en realidad sólo se puede añadir a esta "cuando recibo tiburón
enfermo ".
Así decimos añadir esta condición.
Queremos decir que, si el resultado es menor que 0.
Así que vamos a ir a los operadores, vamos a utilizar
Este menor que uno, vamos a arrastrar nuestro
puntuación aquí, por ejemplo 0.
Y así, si la puntuación es 0, entonces queremos transmitir
algo que se llama el juego.
>> Aceptar.
Así que digamos que tenemos el juego.
Vamos a vivir aquí o algo así.
Bueno, queremos que el tiburón sólo para volver a tener hambre si
el juego todavía se pueden reproducir.
Así que en lugar de utilizar un "si", vamos a utilizar
un "if else" construir.
Lo que esto hace - dice, está bien, así que si esta condición es
cierto, entonces hacer esto, pero si es falso, entonces hacerlo.
Así que vamos a añadir si el resultado es menor que 0, entonces
transmitir más de juego, pero no si - si su
puntuación sigue siendo positiva -
a continuación, volver a tener hambre.
Aceptar.
Cool.
Así que ahora que tenemos este juego a través de eventos, tendremos que tener
alguna manera de responder a ella.
>> Así que vamos a hacer un nuevo guión que dice "cuando recibo juego
terminado. "Y lo que tenemos aquí bajo control es en realidad este
detener todos los botones, por lo que, básicamente, imita a que haga clic en
el rojo de parada firme aquí.
Así que vamos a tener la parada del tiburón.
Y por eso también queremos que el pescado que parar, así que vamos a arrastrar y
copiarlo pulg
Queremos que todo el pescado que parar.
Y entonces vamos a tener la parada del escenario.
Está bien.
Así nadando, comemos un pescado, y
a continuación, el programa se congela.
Estoy haciendo clic abajo pero en realidad no puede hacer nada.
OK, pero digamos que no queremos recordar al usuario que
que tienen un valor negativo, por ejemplo, entonces podemos, por
ejemplo, ocultar la variable de la pantalla.
Así que cuando la etapa recibe más de juego, entonces, se oculta
la puntuación variable.
Aceptar.
Así que vamos a comer pescado una vez más.
Y entonces la puntuación desaparece, y sólo hay esta pantalla.
>> Está bien.
Así que eso es un juego bastante decente, y si tuviera más
tiempo, entonces usted podría llegar a sumar
guiones más y más.
Y entonces, he añadido unos cuantos peces más, les hizo avanzar
a diferentes velocidades, y luego cada vez que el tiburón se come un
pez venenoso, que en realidad dice: "Blech!"
Y entonces lo que hice fue añadido un nuevo fondo para la
etapa - un juego sobre el fondo.
Y así lo hace durante la etapa del juego a través de eventos
manejo es que cambie a los antecedentes de más de juego
fondo.
Y así, me escondí todos los sprites del escenario para que
sólo el juego más de fondo se muestra.
Hay un par de otras adiciones pequeñas que he añadido,
por ejemplo, antes, cuando terminamos nuestro programa, entonces nuestro
tiburón, la próxima vez que empezamos, se pondría en marcha en
esa posición también.
Lo que quiero añadir es cuando la bandera verde se hace clic, a continuación,
el tiburón se remonta al origen y luego mira hacia
el derecho, por lo que cada vez, tiene un
tiburón a partir de ahí.
>> Así que usted puede experimentar in Motion y cosas así, que
sólo para añadir pequeños detalles que hacen que su
juego un poco más pulido.
¿Alguien tiene alguna pregunta acerca de HungryShark?
Cool.
Está bien.
Así que eso es un ejemplo de algo que se puede hacer
en principio con todas las herramientas que hemos comentado anteriormente.
Así que también se incluyen en las diapositivas tutorial.
Las verás más adelante.
Es sólo una visión general de los procesos que hemos hecho -
progresando desde HungryShark0 todo el camino hasta nuestro final.
Uno
Si.
Pero eso es todo.
Yo me quedo atrás si ustedes quieren
más preguntas.
Esto era Tutorial 0.
Gracias a todos por venir, y yo te veré en Tutorial 1.