3er paso: Interacción entre objetos (parte I)

Repasemos lo que obtuvimos hasta aquí con la mirada de un verdadero programador de Scratch: tenemos un proyecto que consiste de un escenario (inmutable paisaje estrellado), y de un objeto (nuestro amigo Murci).
Y ya que es hora de poner números, es conveniente contemplar una dimensión más: la cantidad total de scripts o "hilos de programa"… Contando los que nos ayudan a dibujar la trayectoria, tenemos tres scripts. ¡Tanto trabajo y sólo esto!

Sin entrar en profundas disquisiciones sobre cantidad y calidad, tratar de reducir "cuan bueno es un proyecto" a un tema numérico es como mínimo un acercamiento simplista, especialmente si miramos en el tema scripts. La cantidad (es obvio) no habla sobre cualidades de programación como ser: claridad, uso del camino complejo sólo cuando es estrictamente necesario, cierta "elegancia" al encontrar una solución, etc. ; todos estos son objetivos que debe tratar de lograr —con el tiempo— un buen programador. (Fin de la digresión).

Nuestra próxima misión involucrará la introducción de un nuevo objeto al paisaje, no con fines estéticos, sino para que Murci  interactúe con algo más que con "ese rectángulo que es su mundo". Y en orden de seguir nuestro postulado "de lo simple a lo complejo…" nos concentraremos básicamente en este punto: interacción.
Veamos cuales son los siguientes pasos a seguir:
  • Crear un nuevo objeto usando la herramienta de edición de imágenes de Scratch.
  • Ordenar las capas del proyecto de manera que se ajusten a una visualización adecuada.
  • Agregar capacidades de sonido al objeto Murci
  • Definir un tipo de comportamiento para el momento en que se produzca la interacción entre los objetos, y bosquejar una solución.
  • Integrar la solución propuesta junto a los scripts ya existentes, y de esa manera dar punto final al proyecto.
Manos a la obra, y paciencia y voluntad en el corazón…

Crear el nuevo objeto

Como primer paso reabrí el proyecto en el que estuvimos trabajando hasta aquí (si no sabés cuál estamos en problemas).
Cuando trajimos a escena a Murci  hicimos lo más simple: importamos sus imágenes asociadas (disfraces) seleccionándolas de entre aquellas que nos proporciona Scratch. Esta vez optaremos por dibujar desde cero nuestro nuevo objeto: un simple árbol.
nuevo
Ya pasamos por esto… debemos ir a la zona de inserción de objetos nuevos (en la parte superior del listado de objetos) y hacer clic en Pintar un objeto nuevo; como no podía ser de otra manera nos aparecerá la pantalla Editor de pinturas —que ya conocemos—.
lupa
Como la imagen que vamos a hacer ocupará cierto tamaño en el escenario, te convendrá trabajar teniendo presente su relación con el mismo; lo mejor será usar la lupa con su opción Alejar al máximo: de esa manera en el rectángulo de edición coinciden el tamaño real con el mostrado (480px por 360px) —igual al del escenario en modo de escena normal—.
Te encuentras ahora frente a "una hoja en blanco"… es momento que demuestres tus capacidades artísticas a la hora de dibujar un lindo arbolito (no como yo). Sólo para que te sirva como guía, te muestro como me quedó a mí:
ventana editor
No te preocupes porque el tuyo te quede parecido, y tampoco por las dimensiones: recordá que tenemos varias maneras de adaptar el tamaño de un objeto a nuestras necesidades.
Una vez que estés conforme con el resultado, sólo tenés que Aceptar para incorporar tu nuevo objeto al proyecto.
Aunque no es indispensable, conviene cambiar los nombres que le coloca Scratch en forma automática a los objetos nuevos: cuando necesites referenciarlos más adelante en alguno de los bloques de programación, te será mucho más sencillo trabajar si usás un nombre apropiado… en nuestro caso —y en una muestra de arrojo e imaginación— lo renombraremos árbol.
borrar1
El cuanto a su posición, por ahora hacé clic sobre él en el escenario y correlo a la derecha del mismo (con las raíces en el suelo, por favor).
El nuevo objeto también (al igual que Murci) tendrá sus propios atributos, a saber: cooordenadas x e y, dirección, tamaño, y especialmente uno sobre el cual el lenguaje Scratch no tiene (a mi gusto y al de muchos), la consideración suficiente: una capa asociada —ya volveremos sobre este conflictivo tema—.
Como todo árbol que se precie de tal, no va a distinguirse por sus movimientos: ¡está enraizado…!
(en un proyecto más complejo que el nuestro quizás se podría simular como sería afectado por el viento, no sé…).

Digámoslo ya: la presencia del árbol en el proyecto se justifica en función a cómo Murci va a interactuar con él (el papel protagónico no es negociable). Desde el punto de vista de la programación esto nos dá una pista: el objeto árbol no tendría en principio scripts de relevancia asociados a él…

Antes de seguir no dejemos de mencionar un punto: en el Área de Listado de Objetos aparecerá —al lado del objeto Murci— nuestro nuevo objeto árbol (como ves ahora son 2 objetos).
borrar2

IMPORTANTE

Tengamos bien presente de aquí en adelante que cualquier cambio en los programas o en las propiedades de uno u otro objeto (o en los del escenario) requerirá de la selección previa del mismo: la función del Área de Listado de Objetos no es sólo de enumerar los componentes básicos del proyecto, sino también la de permitirnos seleccionarlos de manera de poder efectuarles "a posteriori" las modificaciones que queramos.
Si corremos nuestro programa con el nuevo objeto agregado, no notaremos en principio mayores diferencias funcionales: aparentemente sólo es un cambio en el paisaje, que podríamos haber agregado directamente al fondo del escenario (o sea, editando dicho fondo con las herramientas de dibujo de Scratch).
Sin embargo, pronto mostraremos el valor potencial que nuestro arbolito puede proporcionar a la animación.
Previo a esto debemos discurrir —largamente— sobre un tema pendiente… las capas y su relevancia en el resultado de un proyecto Scratch.
Para explicar esto usaremos un proyecto transitorio, así que guardá los cambios para que Murci se dé tiempo para contemplar su nuevo entorno… ya volveremos con él.
Última actualización:Febrero 22, 2014

No hay comentarios.:

Publicar un comentario

© Scratch CodeLab | D153ñ0 b454d0 3n l4 pl4n71ll4 SimpleRWD d3 Oloblogger