Академический Документы
Профессиональный Документы
Культура Документы
Creacin de un juego
Para poder crear un juego con el editor de Gamesonomy, es necesario estar
registrado en la aplicacin.
Haz click sobre el botn Registrarse de la barra superior.
Introduce los datos que se solicitan en la ventana Registro, y una vez introducido,
pulsa en el botn Registrar para validar estos datos .
1
Una vez registrado, para acceder a la pgina de inicio de Gamesonomy, haz clic en la
opcin Entrar de la barra superior e introduce tus datos.
2
Una vez registrado, podrs entrar en la opcin Crear que te permitir crear un
nuevo juego, editarlo, duplicarlo, eliminarlo o publicarlo.
3
Pueden verse tres pestaas:
4
play: si esta casilla est seleccionada, se activar en el juego el sonido
asignado, escuchndose durante toda la ejecucin del mismo.
sound: permite seleccionar el archivo de sonido que se quiere asignar al
juego.
Parameters:
volume: determina el volumen del sonido.
pan: controla el altavoz por el que sale el sonido. El valor 0 significa que
el sonido sale por el centro, 1 por la izquierda y 1 por la derecha. Se
permite poner cualquier valor entre -1 y 1 para poder as hacer efectos
de sonido pasando de un lado a otro.
loop: indica que el sonido se ejecuta una nica vez si la casilla no est
activa y en un bucle si est activa.
start: indica el momento en el que el sonido debe empezar a sonar
El espacio de trabajo
Desde la barra de opciones del editor de Gamesonomy se puede: guardar un juego;
deshacer/rehacer acciones; copiar el formato de un actor a otro; crear un actor;
5
visualizar la lista de actores existentes en el juego; seleccionar entre diferentes
opciones de visualizacin y probar el funcionamiento del juego que se est creando.
Save game: guarda el juego y muestra una ventana que indica que el juego se
ha guardado. Pulsar en Ok para confirmar.
Show cast: muestra la lista de todos los actores que forman la escena y el
orden que ocupan en ella, estando en la parte inferior de esta lista el actor que est
ms al fondo y en la parte superior el que est ms cercano al observador. En cada
fila aparecen, la imagen que representa al actor (si la tuviese), su nombre y la
etiqueta asignada (si la tuviese).
6
Grid: activa/desactiva una rejilla en el rea de trabajo de la escena.
Elementos principales
El juego
Como se ha explicado en Creacin de un juego, lo primero que se hace es
establecer las propiedades del juego en su ventana Properties.
Debido a necesidades que van apareciendo a lo largo del desarrollo de un juego, a
menudo es necesario cambiar alguno de los valores ya establecidos o incluir nuevas
propiedades globales. Se puede acceder a las propiedades del juego en cualquier
tan solo aparece en ella el botn que permite crear nuevos atributos, variables o
propiedades.
7
Tendrs que hacer clic sobre este botn para que aparezca la ventana
Property que te permitir crear una nueva propiedad. En Name se indica el
nombre de la nueva propiedad, en Type puedes elegir entre las opciones
number, text o bool (nmero, texto o booleano).
Nota: Un campo booleano es aquel que slo puede tomar los valores verdadero o falso.
8
Las escenas
Inicialmente el juego aparece con una nica escena vaca que tendrs que ir
configurando. A medida que tu juego sea ms complejo, podrs aadir nuevas
escenas.
En la parte izquierda de la pantalla est situado el visor de escenas. A medida que se
van aadiendo escenas al juego, su secuencia puede verse en este visor. El
Para eliminar una escena, basta con seleccionarla y pulsar la tecla Suprimir.
Es conveniente establecer las propiedades de la escena antes de empezar a incluir
actores en ella. Haciendo doble clic sobre una escena del visor de escenas, se accede
a la ventana Properties de propiedades de esa escena. En esta ventana, adems de
indicarse el nombre de la escena, puede establecerse la informacin general de la
escena y aadirse nuevas propiedades en las dos pestaas que incluye.
9
Informacin bsica: en la seccin Camera se establece la posicin de la
cmara en x/y, as como el ngulo de giro y el zoom con el que queremos
mostrar esta escena, y en la seccin Gravity, la gravedad en x/y.
Los actores
Los actores son los elementos que forman las escenas. El editor de Gamesonomy es
la herramienta que se utiliza para crear un actor y establecer sus propiedades. Un
actor adems, puede tener asociado un comportamiento definido a partir de reglas
establecidas desde el editor de reglas.
10
Cada vez que se hace clic sobre un actor, se selecciona y se visualiza
su caja envolvente.
Para duplicar un actor, primero hay que seleccionarlo y despus utilizar la
combinacin de teclas Crtl+C y Crtl+V. Automticamente se crear una copia del
actor.
Para copiar el formato (propiedades y reglas) de un actor a otro, primero se
selecciona el actor del que se quiere copiar el formato, a continuacin se activa la
11
este tipo sera por ejemplo un actor tipo marcador. Si la casilla no est activa,
la posicin de este actor cambiar si cambia la posicin de la cmara.
Como muestra la imagen anterior, en la parte superior de esta ventana, adems del
Para acceder a la ventana de asignacin de etiquetas Tags hay que hacer clic sobre
el icono .
12
En la casilla superior de esta ventana se introduce el nombre nuevo de etiqueta que
se quiere asignar actor. Si se quiere asignar una etiqueta ya existente, habr que
seleccionarla en la lista de etiquetas que aparecen debajo de la casilla de
introduccin del nombre de una etiqueta nueva. Se puede asignar o desasignar una
etiqueta a un actor, activando o desactivando la casilla que aparece a la izquierda de
su nombre. Se puede eliminar la etiqueta de esta lista, haciendo clic sobre la x que
aparece a la derecha del nombre de etiqueta.
Es importante saber que a un actor se le puede asignar ms de una etiqueta y que
un grupo de actores puede tener la misma. Esta opcin es de gran utilidad a la hora
de confeccionar las reglas de comportamiento del actor. Si un grupo de actores tiene
asignada una misma etiqueta, estos podrn realizar una accin conjunta, pero
adems, a alguno de ellos se le podra asignar otra etiqueta diferente que lo
individualice del grupo, para de este modo poder asignarle un comportamiento
individual.
Cada una de las pestaas de la ventana Properties que aparecen debajo del icono
13
Position:
x/y: posicin del actor en x e y.
Size:
width/height: dimensiones ancho/alto originales del actor.
Scale:
width/height: factor de escalado del actor en los ejes x e y
respectivamente.
Rotation:
angle: ngulo de rotacin respecto del original, que se aplica al actor al
representarse en la escena.
bounding shape: permite elegir entre una caja de colisin box (rectangular)
circle (esfrica) o polygon (permite crear un polgono que envuelva al
14
Informacin sobre la visualizacin del actor: establece si el actor est visible
en la escena, la imagen que lo representa, su color, su opacidad, y si el actor est
invertido respecto a alguno de los ejes.
15
horizontal_flip / vertical_flip: inversin (reflejo) del actor (giro de
180) respecto al eje y o al eje x.
horizontal_scroll / vertical_scroll: establece si se va a crear un
scroll respecto al eje x o al eje y respectivamente.
tile_X / tile Y: establece el nmero de veces que se va a repetir el actor
en una fila o en una columna. Si los valores de tile_X y de tile_Y son
diferentes de 1, se crear una matriz de imgenes de X*Y dentro del
actor.
16
Offset: desplaza el texto el nmero de pxeles indicado.
x/y: establece el desplazamiento del texto en x (horizontal) y en y
(vertical) desde su posicin inicial. Un valor positivo de x desplaza el
texto hacia la derecha y uno negativo hacia la izquierda. Un valor
positivo de y desplaza el texto hacia arriba y uno negativo hacia abajo.
play: si esta casilla est activa, permite aadir sonido al actor y que ste se
escuche. Si no estuviese activa, impedira aadir sonido y acceder al resto de
parmetros de esta propiedad, o evitara que se oyese en caso de tenerlo.
sound: permite seleccionar el archivo de sonido que se quiere asignar al actor.
Parameters:
volume: determina el volumen del sonido.
pan: controla el altavoz por el que sale el sonido. El valor 0 significa que
el sonido sale por el centro, el valor 1 por la izquierda y el valor 1 por
la derecha. Se permite poner cualquier valor entre -1 y 1 para poder as
hacer efectos de sonido pasando de un lado a otro.
loop: indica que el sonido se ejecuta una nica vez si la casilla no est
activa y en un bucle si est activa.
start: indica el momento en el que el sonido debe empezar a sonar.
17
active: habilita/deshabilita las propiedades fsicas del actor. Si la casilla active est
deshabilitada, las fsicas de este actor no actan. Una vez que se activan las fsicas de un actor, la
escena pasa a ser una escena que contiene fsicas. Para poder establecer el resto de parmetros de
18
fixed rotation: establece si el actor gira. Si la casilla est activa, significa que el actor
no gira
Material:
density: establece el peso del actor. A mayor valor, mayor peso.
friction: establece si se va a tener en cuenta la friccin de un actor con
algn otro en la escena.
restitution: establece si el actor tiene rebote. A mayor valor, mayor
rebote. Al ser un objeto fsico, se comportar como un objeto real, por
lo que el nmero de rebotes no se puede establecer en un nmero
determinado.
Damping:
linear/angular: establece el rozamiento lineal/angular que ejerce el
actor en la escena cuando no hay nada (con el aire).
19
Adems, tambin muestra el orden de dibujado de los actores, estando en la parte
superior de la lista el actor que se ha creado en ltimo lugar. Si en algn momento
dos actores ocupan una misma posicin, el que aparentemente estar ms cerca del
observador es el ltimo que se ha creado.
Desde esta lista tambin es posible eliminar un actor de la escena, simplemente
habra que seleccionarlo y pulsar la tecla Suprimir
Si se est trabajando en la ventana Cast y se hace doble clic sobre la fila de un actor, adems de
seleccionarse el actor en la escena aparece su ventana de propiedades.
Las reglas
Un actor puede tener asociado un comportamiento definido a partir de una serie de
reglas establecidas en el editor de reglas. Las reglas regulan las acciones que el actor
ejecuta.
Cada vez que se selecciona un actor, aparecen a la derecha de su caja de seleccin etiquetas
numeradas que representan las diferentes reglas que lleva asociadas.
20
Si al actor an no se le ha asociado ninguna regla, nicamente aparece el smbolo . Haciendo
clic sobre este smbolo, se aaden etiquetas al actor, y haciendo doble clic sobre una etiqueta, se
accede al editor de reglas.
21
En la parte superior, al lado de la palabra Rule, se puede introducir un nombre que
identifique la regla. Una vez que la regla tiene nombre, pasando el ratn por encima
de la etiqueta en el editor de Gamesonomy, este nombre se visualiza.
Las reglas, estn representadas grficamente mediante un diagrama de flujo o grafo
creado a partir de la seleccin de condiciones y acciones.
En la parte superior del grafo aparece un crculo, si est de color rojo, la regla no est
activa, si est verde, la regla s estar activa. Para activar y desactivar una regla, solo
hay que hacer clic sobre este crculo.
Para colocar una condicin o una accin en el grafo, basta con arrastrar el botn
correspondiente desde la barra de botones lateral, al lugar del grafo donde se quiera
colocar. Una vez situado en el grafo, hay que hacer clic sobre l para configurarlo.
Para salir de la regla, se puede hacer clic en la casilla x situada en la esquina
superior derecha del editor de reglas o directamente hacer clic fuera del editor de
reglas.
22
Al insertar una condicin, se crean automticamente dos salidas. La salida derecha
se ejecutar si una vez evaluada la condicin, el resultado es verdadero. Si el
resultado de evaluar la condicin fuese falso, se ejecutar la salida izquierda.
Para salir de la configuracin de cualquier condicin o accin, basta con hacer clic en
la x de la esquina superior derecha de esta condicin o accin, o directamente
hacer clic fuera de ella, aceptndose as la condicin o accin programada.
BOTONES DE CONDICIN DEL EDITOR DE REGLAS
23
Una vez colocada una condicin en el editor de reglas, haciendo clic sobre el icono
incrustado en el grafo, aparecen las opciones que permiten configurar esta
condicin.
Key: evala el estado de una tecla del teclado. Para configurar esta condicin, en la
casilla key indica la tecla que se quiere evaluar. La casilla KeyMode ofrece la
posibilidad de elegir entre las opciones down (tecla pulsada), up (tecla no
pulsada) y pressed (tecla pulsada y mantenida).
Una vez establecida la condicin que evala el estado de la tecla, habr que incluir
en la regla una accin a tomar o una nueva condicin a evaluar. La siguiente figura
muestra un ejemplo del grafo que representa que si se pulsa la tecla Enter, se
realizar una animacin.
24
Touch: evala el estado del botn izquierdo ratn o del touch en la pantalla.
Para configurar esta condicin, la casilla mode ofrece la posibilidad de elegir
entre down (botn del ratn pulsado), up (botn del ratn no pulsado), isover
(ratn pasando por encima del objeto al que se le aplica la regla) y tap (se hace
click o tap sobre l). La casilla onActor activa, significa que slo se tendr en
cuenta el touch, cuando se hace sobre el actor.
25
El botn permite introducir valores correspondientes al actor al que se le est
asignando la regla, Me, a cualquier otro actor de la escena, Cast, a la escena,
Scene o al juego, Game.
El botn muestra una lista de operadores que pueden incluirse en el clculo del valor del
atributo. Los operadores que se ofrecen son:
26
Check: evala una propiedad booleana (verdadero/falso) de un actor, del
juego o de la escena, incluida en la casilla property.
27
Entre estas dos casillas, hay un botn que muestra un men desplegable que
contiene las diferentes opciones de comparacin que pueden realizarse entre los
operandos incluidos en estas casillas.
28
El actor que se va a mostrar se selecciona en el desplegable actorID, donde
aparecen todos los actores de la escena. Las casillas x e y indican la posicin
relativa al centro del actor propietario de regla en la que se colocar el actor. Este
actor, adems, aparecer rotado respecto a su posicin original un ngulo indicado
en la casilla angle.
Nota: en cualquier regla, si se introduce un valor positivo en angle , el giro se
realiza en sentido contrario a las agujas del reloj, y por lo tanto, si el valor que se
introduce es negativo, el giro se har en el sentido de las agujas del reloj.
Cuando se elimina un actor del juego, hay que tener en cuenta si est asociado a
otro actor en el juego, por ejemplo, si se quiere realizar un spawn de l
posteriormente, no se podr.
29
Play sound: en la casilla sound se selecciona el sonido que se activar en el juego.
Apply force: aplica una fuerza lineal indicada en la casilla strength con un ngulo
indicado en la casilla angle.
30
Apply force to: aplica la fuerza lineal especificada en la casilla strength, desde el
actor, al punto indicado en las coordenadas (x, y) introducidas en las casillas x e
y respectivamente. Con estos valores y la posicin del actor se calcula el ngulo con el que se
aplica la fuerza.
Apply torque: aplica una fuerza con el ngulo indicado en la casilla angle.
Para que esta accin pueda realizarse, el actor tiene que tener activas sus
propiedades fsicas. Si se aplica la fuerza continuamente, es decir, si no se indica que
se tenga que cumplir una condicin para que se ejecute esta accin, lo que estamos
programando es un impulso continuo, y por lo tanto el actor girar sobre s mismo
indefinidamente.
31
Rotate: permite rotar un actor con una velocidad introducida en la casilla speed.
32
Destroy layer: despus de haber hecho una pausa en la ejecucin de un
juego y habiendo cargado una capa por medio de la accin New layer, esta
accin elimina la capa superpuesta para que aparezca la escena en la que estbamos
situados antes del parar la ejecucin del juego, dejando el juego situado en el
momento en que se realiz la interrupcin.
Todas las condiciones y acciones del editor se han explicado individualmente, pero
en la confeccin de un juego lo normal es que las reglas no sean tan sencillas y
requieran de condiciones y acciones anidadas para conseguir una determinada
situacin.
33
Ejemplos
Crear un shooter
Los videojuegos de disparos o shooters son un gnero que engloba un amplio
nmero de subgneros con la caracterstica comn de permitir controlar un
personaje que, por norma general, dispone de un arma (mayoritariamente de fuego)
que puede ser disparada a voluntad. Pertenecen al gnero de accin.
El juego que a continuacin se detalla, representa una nave que se mueve por la
escena, disparando contra enemigos que desaparecen cuando o bien la nave o bien
un proyectil impacta sobre ellos. Su realizacin se ha dividido la en los siguientes
pasos:
Incluir una nave en la escena
Mover la nave con las teclas de flecha
Incluir un proyectil en la escena y configurar su movimiento
Disparar el proyectil
Incluir enemigos en la escena y definir su movimiento
Crear un generador de enemigos
Destruir enemigos
Incluir un contador de enemigos eliminados
Aadir vidas de la nave
http://www.gamesonomy.com/tutos/shooter.zip
Este tutorial no pretende ms que guiarte en tus primeros pasos a la hora de hacer
un shooter, y ensearte el manejo de las herramientas que el editor Gamesonomy
ofrece a la hora de crear un juego. De este modo aprenders a la vez que creas tu
propio juego.
34
Incluir una nave en la escena
Una vez que has entrado en el editor de Gamesonomy, para incluir un actor en la
escena, haz clic sobre el botn Crear actor y a continuacin, haz clic en el
lugar de la escena donde quieras situarlo. En este momento aparece en la escena un
actor nuevo (vaco).
Haz doble clic en el recuadro que representa al actor para abrir su ventana de
propiedades Properties y poder as configurarlo. Una vez abierta, lo primero que
35
Recuerda!!! Al actor siempre se le asigna un nombre por defecto, pudiendo
cambiarse haciendo clic sobre l y escribiendo el nuevo nombre.
Llama nave a este actor.
Haz clic sobre el icono etiqueta . Se abre la ventana Tags. Escribe nave
en la casilla en blanco y pulsa el botn .
Para seleccionar la imagen que representa al actor, haz clic sobre la casilla situada a la derecha de
image o haz clic sobre la imagen que aparece al lado del nombre del actor , y acceders
a la biblioteca de imgenes del juego.
En la ventana Images podrs elegir una de las imgenes que ya existen para tu
juego o, tendrs que hacer clic sobre el botn para acceder a los discos de tu
ordenador y poder as seleccionar y aadir una nueva imagen. Haz doble clic en la
imagen elegida para incluirla en la biblioteca de imgenes de tu juego si has tenido
que buscarla fuera de la biblioteca de imgenes de tu juego. Una vez elegida la
imagen adecuada, haz doble clic sobre ella y sta aparecer en el rea de edicin del
juego y en la ventana Properties. En tu caso, debes seleccionar la imagen nave.
36
Ahora, en lugar de poner None en la casilla Image pondr nave, que es el
nombre de la imagen seleccionada para este ejemplo.
Nota: para un buen resultado visual de la escena, las imgenes que utilices tienen
que estar en formato .png con el fondo transparente.
Haz clic sobre el icono que aparece en la caja de seleccin del actor. Se
crear una etiqueta identificada con el nmero 1.
37
Haz doble clic sobre esta etiqueta para acceder al editor de reglas. Introduce
mover al lado de la palabra Rule para identificar la regla y as, una vez
fuera del editor de reglas, cada vez que pases el ratn por encima de esta
etiqueta, aparecer el texto mover que te permitir identificar la regla.
Para definir la primera condicin de esta regla, haz clic en el icono incrustado
en el grafo. Pulsa sobre la tecla Updel teclado para que sta se incluya en la
casilla key, indicando as que se evale esta tecla. En la casilla keyMode
elige la opcin pressed (tecla pulsada y mantenida). Ya est establecida la
primera condicin.
38
Para indicar que el actor se mueva hacia arriba cada vez que se pulse la tecla
Up, arrastra el botn de accin Translate hasta la salida derecha
(condicin verdadera) de la condicin programada y configralo.
39
Arrastra de nuevo el botn de condicin key , ahora hasta la salida
izquierda de la condicin tecla pulsada Up soltndolo cuando se abra un
hueco en esta rama del grafo. Se evaluar esta condicin en el caso de que la
tecla Up no est pulsada.
Haz clic en el nuevo icono incrustado en el grafo. Pulsa sobre la tecla Down
estando situado en la casilla key. En keyMode elige la opcin pressed.
Para que el actor se mueva hacia abajo mientras se mantenga pulsada la tecla
Down, arrastra el botn de accin Translate a la salida derecha
(condicin verdadera) de la condicin tecla Down pulsada y configralo.
Hay que poner 270 la casilla angle, ya que el movimiento es vertical, pero esta vez
hacia abajo.
40
Para que el actor se mueva hacia la derecha mientras se mantenga pulsada la
tecla Right, arrastra el botn de accin Translate a la salida derecha
(condicin verdadera) de la condicin tecla Right pulsada y configralo.
41
El valor del ngulo a incluir en angle este caso es 180, ya que el movimiento va a
ser horizontal hacia la izquierda.
Ya est finalizada la primera regla del actor. Comprueba que el actor se mueve por la
escena al pulsar las teclas de flecha, y de paso comprueba que al pulsar cualquier
otra tecla, no se mueve.
42
Crea un nuevo actor, y sitalo fuera de la escena (fuera del rectngulo que delimita
la zona visible del juego), ya que slo se ver cada vez que pulses la tecla
Space. Este actor, por lo tanto, habr que definirlo inicialmente como un actor
inactivo. Para ello, el botn que aparece en la zona superior de la ventana de
Crear una regla al actor disparo y a continuacin, entra en el editor de reglas. Pon
a la regla el nombre movimiento proyectil.
43
Poner 0 en angle, significa que el proyectil no realiza ningn giro en su
movimiento, se mueve hacia la derecha, en un ngulo de 0 grados.
PROGRAMACIN DEL DISPARO DEL PROYECTIL
Ya est definido el actor disparo y su movimiento, pero falta programar cundo y
cmo el proyectil aparece en el juego. A continuacin, se va a configurar la regla que
hace que la nave dispare el proyectil.
Aade una nueva regla al actor nave, entra en el editor de reglas de
Gamesonomy e introduce como nombre de esta regla disparo.
Para que el proyectil aparezca en la escena y se mueva cada vez que se pulse la tecla
Space, es necesario replicar el actor que lo representa en una determinada
posicin.
44
En esta accin se deben configurar tres cosas: el actor a replicar, en este caso,
disparo, la posicin (x,y) donde aparecer y el ngulo que determina la direccin
de movimiento.
La posicin (x,y) es relativa al actor que la crea. Es decir, (0,0) sera el centro de la
nave. Por esto y teniendo en cuenta que el ancho del actor nave es 180 pxeles,
poner 90 en la casilla x significa que la posicin de la que sale el proyectil est
situada a 90 pxeles a la derecha del centro geomtrico del actor nave. De este
modo, el actor disparo siempre saldr de la punta de la nave. Como la y no la
cambiamos, en vertical saldr del centro de la nave.
Para que la escena quede ms completa, antes de seguir programando este juego,
vamos a poner un fondo a la escena.
Introduce un actor en la escena. Entra en su ventana Properties y asegrate
45
Selecciona la pestaa Informacin sobre la visualizacin del actor y
configralo como se muestra a continuacin.
Si el fondo sale por delante del resto de actores, entra en la lista de actores Cast y
cambia su orden, de modo que el actor fondo sea el ltimo de la pila.
46
Entra en la ventana Properties del actor, cmbiale el nombre a right y recuerda
asignarle una etiqueta (right) y configura su Informacin bsica.
47
Para controlar si el proyectil choca contra la pared, entra de nuevo en la regla
movimiento proyectil, que pertenece al actor disparo, para completarla.
Arrastra el botn de condicin Collides debajo del botn de accin
Translate. Indica el actor contra el que vas a controlar la colisin,
seleccionando su etiqueta en la casilla tag, en este caso se trata del actor
etiquetado como right, que es el que representa la pared.
Recuerda!!! Pones etiquetas a un actor para controlar si choca contra otro actor.
Prueba el juego y vers como el proyectil desaparece una vez choca con el actor
right.
48
Incluir enemigos en la escena
Crears un nico enemigo y despus, mediante la inclusin de un actor en la escena
y la definicin de una regla obtendrs un generador de enemigos que incrementar
su nmero.
Para crear el enemigo inicial, incluye un actor nuevo en la zona superior de la
ventana de trabajo, fuera de la escena. Entra en su ventana
Properties, asegrate de que no est activo al comienzo del juego ( )
y configura la pestaa Informacin bsica como se muestra a continuacin.
Recuerda!!! Tener activa la casilla screen significa que el actor est situado en una
capa especial, siempre en coordenadas de pantalla, lo que le permite estar siempre visible sin que
le afecte un cambio en la posicin de la cmara.
49
La siguiente figura puede servirte de ejemplo para colocar el enemigo en la escena.
50
Poner -300 en la casilla speed indica que el actor enemigo se mueve 300 pxeles
en el sentido negativo del eje x (de derecha a izquierda).
CREACIN DEL GENERADOR DE ENEMIGOS
Ya est definido el enemigo base y su movimiento, pero falta crear el generador de
enemigos que establezca cundo y dnde aparecern cada una de las distintas
replicas del actor enemigo en la escena.
Crea una nueva regla para este actor y entra en el editor de reglas. Introduce
como nombre de esta regla multiplicar enemigos.
Arrastra el botn de condicin Timer al grafo y configralo.
51
Poner 0.5 en la casilla seconds indica que la accin que se va a definir se llevar a
cabo cada 0.5 segundos.
Recuerda!!! Los decimales se ponen con puntos y no con comas como estamos
acostumbrados.
Poner 0 en la casilla x indica que cada enemigo generado saldr del centro
geomtrico del generador en la coordenada x.
Para determinar la posicin en y donde se generar el enemigo, se utilizar
52
salir en cualquier lugar a lo largo del eje y. Por lo tanto, procura colocar el
generador en el centro de y del tamao de la cmara. Pon 0 en la casilla
angle, ya que los enemigos aparecen siempre horizontalmente.
Destruir enemigos
Una vez creados los enemigos y la nave que dispara, tendrs que conseguir que
cuando un actor disparo haga blanco en un enemigo o un actor nave choque
contra l, ste se destruya. Ya sabes que todos los actores tienen a su alrededor una
caja de colisin. Se considera que un actor choca contra otro siempre que lo hagan
sus cajas de colisin. Por esto, tendrs que comprobar si la caja de colisin de un
actor disparo o la caja de colisin del actor nave colisiona con la caja de colisin
de un actor enemigo.
Aade una nueva regla al actor enemigo, entra en el editor de reglas y llmala
destruir_enemigos.
Arrastra el botn de condicin Collides debajo del botn verde del grafo.
Indica el actor contra el que vas a controlar la colisin, seleccionando su
etiqueta en la casilla tag, en este caso se trata del actor etiquetado como
disparo.
53
Arrastra de nuevo el botn de condicin Collides, ahora a la salida izquierda
del botn de condicin Collides recin programado. Indica el actor contra el
que vas a controlar la colisin, seleccionando su etiqueta en la casilla tag, en
este caso se trata del actor etiquetado como nave.
54
Ya puedes probar como se destruyen los enemigos cada vez que son alcanzados por
un disparo o chocan con la nave.
55
Abre la ventana de propiedades del actor para configurarlo. Una vez abierta,
asegrate de que el botn est activo.
Entra en la pestaa Informacin bsica y configrala como se muestra a
continuacin.
No se le asigna ninguna imagen, ya que su contenido ser una variable numrica que
ir variando en funcin del nmero de enemigos eliminados del juego.
56
Para un correcto funcionamiento de este actor, necesitars aadirle un atributo que
le permita contar el nmero de enemigos que se destruyen en el juego. Selecciona la
pestaa Ms Propiedades, la ltima pestaa de la ventana Properties.
57
Haz clic y sita el cursos dentro de la ventana de texto. Utilizando el botn ,
selecciona paso a paso el atributo que va a mostrar el actor marcador
(Me>custom>muertos). De este modo, en el marcador aparecer visible en todo
momento el nmero de enemigos eliminados del juego. Una vez que la variable
aparece en la ventana, configura su formato.
58
En el contador aparece un cero, porque la variable
muertos la has inicializado a cero. Para incrementar este contador de enemigos
destruidos, tendrs que entrar en la regla destruir_enemigos del actor enemigo.
59
Coloca otro botn Change debajo del otro botn Destroy y configralo igual que has hecho
Prueba el resultado.
60
Aadir vidas al la nave
Para que el juego sea ms atractivo vas a permitir nicamente que los enemigos
impacten tres veces contra la nave, es decir, la nave tendr tres vidas. Para ello
incluirs en la escena tres actores representados por la imagen del actor nave,
donde cada una de estas imgenes representar una vida del actor nave. Cada vez
que se pierda una vida, desaparecer una de estas imgenes.
Incluye un nuevo actor en la escena, abre su ventana de propiedades Properties y
asegurarte de que el botn que aparece en la zona superior de la ventana est
activo.
Selecciona la pestaa Informacin bsica y configrala como muestra la siguiente
figura.
61
Una vez que tienes este actor, cpialo dos veces y en lugar de nave1, llmalos
nave2 y nave3.
Sitalos en la escena tal y como muestra la siguiente figura.
Para hacer que cada vez que un enemigo choque contra la nave, se pierda una vida y
desaparezca una de estas naves, debers aadir una regla al actor nave, el player
del juego.
Antes de crear esta regla, debers aadir un nuevo atributo al actor nave, ya que
no hay ninguna variable que describa esto.
Entra en la ventana Properties del actor nave y selecciona la pestaa Mas
propiedades. Aade el nuevo atributo vida e inicialzalo a 3 como indica la
siguiente figura.
62
Aade una nueva regla al actor nave, entra en el editor de reglas y llmala
perder_vidas.
Arrastra al grafo el botn de condicin Collides y configralo.
63
Utilizando el botn , rellena la casilla property seleccionando paso a paso el
atributo que se va a cambiar (Me>appearance>Effects>color). Selecciona el nuevo
color en la casilla value.
Para controlar si la nave se ha quedado sin vidas tendrs que preguntar si la variable
vida se ha quedado a cero.
Arrastra un nuevo botn de condicin Compare debajo del botn de accin
Change recin programado y configralo.
64
Utiliza el botn para rellenar la primera casilla seleccionando paso a paso el
atributo que se va a comparar (Me>custom>vida).
Arrastra el botn de accin Destroy a la salida derecha del botn de
condicin Compare para que en caso de que al actor nave no le queden
vidas, este se destruya.
Una vez pasado 0.5 segundos despus del choque, el actor que se haba puesto de
color rojo recuperar su color original.
Arrastra el botn de condicin Timer a la salida del botn de condicin
Collides y configralo.
65
Utilizando el botn rellena la casilla property seleccionando paso a paso el
atributo que se va a cambiar (Me>appearance>Effects>color). Selecciona el nuevo
color en la casilla value, en este caso el color blanco, que lo dejar como era
inicialmente.
66
Utilizando el botn , rellena la primera casilla seleccionando paso a paso el
atributo que se va a comparar (Cast>nave>custom>vida).
Arrastra el botn de accin Destroy a la salida derecha del botn de
condicin Compare para que desaparezca la imagen que representa a la
vida que est ms a la derecha .
Aade una nueva regla al actor nave2, entra en el editor de reglas y llmala
desaparece_nave2.
67
Utilizando el botn , rellena la primera
casilla seleccionando paso a paso el atributo que se va a comparar
(Cast>nave>custom>vida).
Aade una nueva regla al actor nave1, entra en el editor de reglas y llmala
desaparece_nave1.
Arrastra un nuevo botn de condicin Compare debajo del botn verde de
inicio de regla y configralo.
68
Utilizando el botn , rellena la primera casilla seleccionando paso a paso el
atributo que se va a comparar (Cast>nave>custom>vida).
Arrastra el botn de accin Destroy a la salida derecha del botn de
condicin Compare para que desaparezca la imagen que representa a la
vida que est ms a la izquierda .
Prueba el resultado.
Ejemplo 2
Crear un pong
El Pong es un videojuego de deporte en 2D que simula un juego de tenis de mesa.
Un jugador controla una paleta movindola verticalmente en la parte derecha de la
pantalla, y puede competir tanto contra un oponente controlado por la mquina,
como con otro jugador humano que controla una segunda paleta en la parte
opuesta. Los jugadores usan las paletas para pegarle a la pelota hacia un lado u otro.
69
El objetivo es que uno de los jugadores consiga ms puntos que el oponente al
finalizar el juego. Los puntos se obtienen cuando el jugador adversario falla al
devolver la pelota.
En el ejemplo que se presenta, se muestra un pong con un nico jugador jugando
contra la mquina. La realizacin de este juego se ha dividido en los siguientes
pasos:
http://www.gamesonomy.com/tutos/pong.zip
70
A continuacin, pondrs un fondo en la escena que simule la pista de juego. Esta
imagen ser un actor ms en tu escena.
Haz clic sobre el botn Create new actor para incluir un actor en la escena.
Haz doble clic sobre l para abrir su ventana de propiedades Properties para
configurarlo. Asegurarte de que el botn est activo. De este modo, las reglas
que le asocies se ejecutarn, y el actor estar visible tanto en la ventana de edicin
como en la de juego.
71
Establecer los lmites del juego
El siguiente paso ser establecer los lmites que nunca va rebasar la pelota. En la
escena se incluirn cuatro paredes que harn de lmites, una a la derecha, otra a la
izquierda, una superior y otra inferior. Cada una de ellas ser un actor.
CREAR LA PARED DERECHA
Crea un actor como ya lo has hecho en el paso anterior, y una vez que lo tengas
situado en la escena, tendrs que seleccionar los puntos de control que rodean la
caja envolvente del actor y arrastrar estos puntos hasta conseguir una pared derecha
similar a la que muestra la siguiente imagen.
72
La casilla visible desactivada indica que el actor no estar visible en la escena
cuando se ejecute el juego.
CREAR LA PARED IZQUIERDA
Repite los pasos realizados para crear la pared derecha, salvo en su nombre y su
etiqueta, que en este caso ser pared_izquierda para ambos casos. Puedes evitar
el realizar todos los pasos de nuevo si utilizas la opcin de copiar formato sobre
el nuevo actor. Debes tener en cuenta, que cuando se le aplica el formato de un
actor a otro o cuando se copia un actor, tambin se copian las etiquetas que tiene
asociadas, as que, cada vez que copies un actor que lleve una etiqueta asociada,
debers comprobar si esto es correcto.
Una vez que tengas la pared izquierda, tu escena debera quedar similar a la que
muestra la siguiente imagen.
73
CREAR LA PARED SUPERIOR
Introduce un actor nuevo en la escena. Abre su ventana Properties para
configurarla, asegrate de que el botn est activo.
Selecciona la pestaa Informacin sobre la visualizacin del actor y configrala
como se muestra a continuacin.
Una vez hecho esto, vers la imagen seleccionada en el rea de edicin del juego.
Una vez que tengas el actor situado en la escena, estralo hasta conseguir una pared
superior como la que se muestra en la siguiente figura. Para colocarla en el lugar
adecuado, haz clic en la imagen y arrstrala a esa posicin.
74
Vuelve a abrir la ventana Properties para seguir configurando el actor. Si te cuesta
seleccionar el actor en la escena, recuerda que entrando en la lista de actores Cast
y haciendo clic en su fila, se seleccionar automticamente. Selecciona la pestaa
Propiedades fsicas del actor y configrala como se muestra a continuacin.
Al activar la casilla active se habilitan las propiedades fsicas del actor, de este modo, se podr
hacer que la pelota choque contra esta pared y rebote.
Seleccionar static entre las opciones de type indica que el actor permanece fijo
(una pared). El actor no se mover aunque se le aplique una velocidad o una fuerza
(colisin). Esta opcin evita que cuando la pelota choque contra esta pared, la
pared se mueva.
75
CREAR LA PARED INFERIOR
76
Vas a aprovechar esta rejilla para crear y colocar los jugadores en la escena.
CREACIN DEL JUGADOR DE LA DERECHA
77
Una vez que el actor aparece en la escena, establece su tamao y posicin como se
muestra en la figura anterior, de este modo, el jugador quedar centrado en el
lateral derecho de la escena.
Al tratarse de un jugador en el que la pelota puede chocar y rebotar, habr que
configurar sus propiedades fsicas. Para ello, abre de nuevo su ventana Properties,
selecciona la pestaa Propiedades fsicas del actor y configrala como se muestra
a continuacin.
Para crear el jugador de la izquierda, se pueden repetir los pasos realizados para
crear el jugador de la derecha, se puede copiar este actor con la combinacin de
78
teclas Ctrol+C y Ctrol+V, o utilizando la opcin de copiar el formato del jugador
de la derecha sobre un nuevo actor introducido en la escena. El nombre de este
nuevo actor ser pong_a. Una vez que el actor aparece en la escena, establece su
tamao y cntralo en el lateral izquierdo de la escena como muestra la siguiente
imagen.
CREACIN DE LA PELOTA
El ltimo actor a crear en este paso es la pelota. Hay que tener en cuenta que
siempre saldr del recuadro central de la lnea que divide los dos campos de juego, y
que es aconsejable que se confunda con este recuadro.
79
Introduce un actor nuevo en la escena y abre la ventana Properties para
configurarlo. Asegrate de que el botn est activo.
80
Una vez hecho esto, vers la imagen seleccionada en el rea de edicin del juego.
Para establecer su caja de colisin y su tamao, selecciona la pestaa Informacin
bsica.
Se selecciona la opcin circle entre las cajas de colisin que ofrece la casilla
Bounding shape, ya que al tratarse de una pelota, es ms coherente considerar
que su caja de colisin sea redonda.
Establece unos valores de ancho Width y alto Height iguales para que el actor
sea cuadrado y modifica su tamao hasta que sea igual o un poco ms pequeo que
los recuadros que separan los dos campos de juego.
81
Seleccionando dynamic se establece que el actor sea siempre mvil, cuando se le
aplica velocidad y cuando se le aplica el resultado de una fuerza.
Se necesita saber si la pelota est o no en juego para hacer o no un saque, y cul de
los dos jugadores ha ganado para saber en qu sentido se har el saque. Como no
existe ningn atributo que informe de estas caractersticas, ser necesario crear dos
nuevos atributos para este actor.
Selecciona la pestaa Ms Propiedades de la ventana Properties.
82
Pulsa sobre el botn Add para que el nuevo atributo aparezca en la ventana de
propiedades del actor ms propiedades, pudiendo eliminarse de manera sencilla,
haciendo clic sobre la x que aparece junto a l.
Para establecer el atributo que define si el jugador pong_j ha ganado, debers
crear un nuevo atributo del mismo modo que has creado el atributo enJuego. Al
nuevo atributo lo llamars ganaJugador y tambin ser una variable numrica.
Las variable numricas se inicializan por defecto a 0. En este caso, se establece que
la variable enJuego a 0 significa que la pelota esta parada y que la variable
ganaJugador a 0 que el jugador de la derecha pong_j ha perdido.
83
No se le asigna ninguna imagen, ya que su contenido ser una variable numrica que
ir variando en funcin de los puntos ganados por el jugador pong_j.
A continuacin selecciona el actor y colcalo en un lugar visible dentro de la escena.
Fjate en el ejemplo de la siguiente figura.
84
Para la primera propiedad, pon el nombre linearvelocity en la casilla
Name, y elige la opcin number en la casilla Type para indicar que el
contenido de este atributo ser una variable numrica. Inicialzala a 0.
Para el otro atributo hars lo mismo, pero llamndole puntos, y
manteniendo que es una variables numrica, e inicializada a 0.
Para que en el marcador del el actor pong_j aparezca el nmero de puntos
conseguidos por l, debers entrar de nuevo en su ventana de propiedades y
seleccionar la pestaa Informacin sobre el texto asociado al actor y configrala.
85
Finalmente, sita el actor marcador_a simtricamente al actor marcador_j como
muestra la siguiente figura.
Para crear el actor marcador_a que visualiza los puntos del jugador pong_a, crea
un actor y cpiale el formato del actor marcador_j. Como puedes observar se han
copiado tambin las variables aadidas al actor marcador_j, pero ahora, harn
referencia al actor marcador_a.
86
Crea una regla y entra en el editor de reglas del jugador pong_j. Llama Mover
jugador a la regla. Al jugador de la derecha se le va a asociar un movimiento
rectilneo vertical, que se ejecutar a la vez que se mueva el ratn intentando
contactar con la pelota.
87
Arrastra el botn de accin Translate to , debajo del crculo verde que
indica el comienzo de la regla. Configralo como se muestra en la figura.
valor del atributo posY utiliza el botn y selecciona paso a paso el nuevo
atributo (Cast>pelota>geometry>Position>y). Se ir acercando a ella movindose
200 pixeles cada vez.
88
Abre la ventana que permite establecer esta condicin. En la primera casilla,
selecciona la variable enJuego creada especialmente para este actor
(Me>custom>enJuego), y compara si esta variable es igual al valor 0
introducido en la segunda casilla.
Recuerda!!! Los atributos nuevos creados, aparecern siempre en la categora
custom del actor.
89
Si la variable ganaJugador no es igual a 1 (salida izquierda de la condicin), el
jugador pong_j ha perdido el ltimo punto y la pelota sale hacia el otro jugador,
pong_a.
Para establecer esta accin, arrastra a esta salida el botn de accin Apply
force y configralo como muestra la siguiente figura.
90
Comportamiento de la pelota en funcin del actor de la escena con el que choque
Crea una segunda regla para el actor pelota. Identifica esta regla con el nombre
Comportamiento pelota. Esta regla constar de tres condiciones.
La primera condicin comprueba si el actor pelota choca contra el actor
pared_derecha.
Una vez dentro del editor de reglas, arrastra el botn de condicin Collides
debajo del botn verde de comienzo de la regla y configralo.
91
Arrastra el botn de accin Change a la salida derecha de esta condicin
y establece sus valores.
92
Ya has establecido la primera condicin de esta regla, ahora aadirs otra. Si el actor
pelotano ha chocado con la pared derecha, habr que comprobar si ha chocado
con la pared izquierda. Esta segunda condicin, la incluirs en la salida izquierda de
la primera condicin, es decir, cuando la condicin no se ha cumplido.
93
Utiliza el botn para rellenar la casilla property.
Selecciona (Cast>marcador_j>custom>puntos)
Si la pelota no ha chocado con ninguna de estas dos paredes, no habr que hacer
nada y el juego seguir. Si por el contrario, ha chocado con alguna de ellas, habr
94
que inicializar una serie de atributos necesarios antes de que se produzca un nuevo
saque y comience la disputa por un nuevo punto. Esto se establecer en la tercera
condicin de esta regla.
Como las inicializaciones son las mismas tanto si el choque se ha realizado con la
pared derecha como con la pared izquierda, sera conveniente asignar a estos dos
actores una misma etiqueta para evitar as tener que duplicar en las dos ramas la
informacin.
Aade un nuevo Tag a los que ya tienes, llmalo por ejemplo, pared.
Asciaselo tanto a la pared derecha como a la pared izquierda, que a partir de
ahora tendrn dos etiquetas asociadas cada una de ellas.
Vuelve a entrar en la regla que estabas creando y arrastra el botn de
condicin Collides a la salida comn de las dos condiciones
Collides anteriores, de modo que pase por esta condicin siempre como se
muestra en la siguiente figura.
95
Selecciona pared en la casilla tag de la condicin collides. Como esta
etiqueta est asignada a la pared derecha y a la izquierda, con una sola
condicin collides es suficiente.
Aade las cinco inicializaciones necesarias en caso de que la condicin se
cumpla, es decir, en caso de que la pelota choque o con la pared derecha o
con la izquierda. Para establecerlas tendrs que arrastrar cinco veces el botn
de accin Change a la salida derecha de la condicin collides tal y como se
puede ver en la figura anterior.
Las variables que se establecen son las siguientes:
96
Inicializacin 1: establece la velocidad inicial en x con la que debe salir la pelota,
ya que debido a la fuerza que se le ha aplicado con la accin Apply force, sta se
ha incrementado.
97
Inicializacin 4: establece el valor de la coordenada x desde la que se har el
saque.
98
Con estas ultimas acciones, ya has terminado de configurar este sencillo pong. Si lo
pruebas, vers como los jugadores a veces se salen de la escena, intenta corregir
este error. Seguro que lo haces bien.
Podras tambin completar este pong estableciendo el final del juego una vez que ha
transcurrido un tiempo determinado o cuando uno de los dos jugadores ha
alcanzado un nmero determinado de puntos.
Ahora ya puedes probar el juego finalizado.
Ejemplo 3
Crear un juego de plataformas
En los videojuegos de plataformas el jugador controla un personaje que avanza por
el escenario evitando obstculos fsicos, bien sea saltando, escalando o
agachndose. Adems de las capacidades de desplazamiento como saltar o correr, el
personaje jugador suele recoger objetos para poder completar el juego. Se trata de
un gnero de videojuegos, surgido a comienzos de la dcada de los 80 y que en la
actualidad sigue manteniendo bastante popularidad.
Los videojuegos de plataformas en 2D se caracterizan por usar scroll de la pantalla,
horizontal como en Super Mario Bros o vertical como en Bubble Bobble y en Donkey
Kong.
En este tutorial aprenders a disear un juego bsico de plataformas dividido en los
siguientes pasos:
99
Establecer la funcionalidad del actor jugador
Establecer el movimiento de la cmara
Construccin de la escena
Chocar contra actores de la escena y eliminarlos
http://www.gamesonomy.com/tutos/imagenes_actores.zip
100
est activo. De este modo, las reglas que le asocies se ejecutarn, y el actor
estar visible tanto en la ventana de edicin como en la de juego.
Recuerda!!! Las etiquetas se asignan a los actores para controlar las posibles
colisiones que se hagan sobre ellos.
Recuerda!!! Para un buen resultado visual de la escena, las imgenes que utilices
para representar a los actores debern estar en formato .png con transparencias.
Selecciona la pestaa Propiedades fsicas del actor y configrala como se muestra
a continuacin.
101
La opcin dynamic establece que el actor sera mvil siempre, tanto si se le aplica
una velocidad, como si se le aplica el resultado de una fuerza.
Poner a 0 el valor de restitution, establece que el actor no tendr rebote.
Recuerda!!! Una vez que se activan las fsicas de un actor, la escena pasa a ser una
escena que contiene fsicas.
Prueba el juego. Qu ocurre? El ninja se cae hasta desaparecer de la escena. Por qu ocurre
esto? Porque al ponerle fsicas al actor, automticamente se le pone fsicas a la escena. Esta
circunstancia hace que el actor caiga debido a su peso y a la fuerza de la gravedad. Para
solucionarlo, se incluir en la escena un nuevo actor que haga de base sobre la que se mueva el
player.
102
Para que el actor pueda desplazarse sin caerse, es necesario colocar un actor que
haga de base fsica sobre la que andar. Inicialmente, se colocarn en la escena dos
bases a diferentes alturas para poder simular el desplazamiento y los saltos del
player sobre ellas.
Sita un nuevo actor en la escena. Utiliza los puntos de control para que el tamao
del actor simule una base sobre la que se pueda desplazarse el player. Tambin
puedes hacerlo desde la pestaa Informacin general actor de la ventana de
propiedades del actor Properties. Vers un ejemplo de la base en la figura
siguiente.
103
No es necesario seleccionar ninguna imagen, ya este actor solo se utiliza para
simular una base invisible.
Selecciona la pestaa Propiedades fsicas del actor y configrala como muestra la
siguiente figura.
Sitala, por ejemplo, a la izquierda del actor original y un poco ms arriba, y alrgala
utilizando los puntos de control, como se muestra en la siguiente figura. Observa la
imagen que aparece a continuacin e intenta hacer algo similar.
104
Recuerda!!! El resultado de la copia de un actor, es otro actor idntico. Lo nico que
cambia es el nombre genrico, que se le asigna automticamente para diferenciarlos
en la lista de actores cast.
DESPLAZAR HORIZONTALMENTE EL PLAYER POR LA ESCENA CON LAS TECLAS DE
FLECHA
Los movimientos que se van a programar son movimientos rectilneos y horizontales. Para que el
movimiento del actor parezca real, habr que crear una animacin diferente para cada movimiento
que se represente.
105
Recuerda!!! Si tras evaluar la condicin sta es verdadera, se seguir el camino de la
derecha, si fuese falsa, se seguir el camino de la izquierda.
Fjate en la imagen del actor que se ha introducido en la escena. Inicialmente est
que mire en el sentido del desplazamiento . Cada vez que se cambie el sentido
del desplazamiento, el actor deber girarse para simular correctamente el nuevo
sentido de desplazamiento. Esto se controla estableciendo las reglas adecuadas en el
comportamiento del movimiento del player.
Para que el actor mire hacia la derecha cuando pulses la tecla Right, arrastra
deja sin marcar la casilla value. Esto es lo mismo que cambiar esa propiedad a False.
106
Para rellenar una casilla horizontal_flip seleccionando su valor con el botn , debers
seguir la siguiente ruta:
Para simular que el player anda, tendrs que incluir en la escena una animacin del
actor.
107
Finalmente, arrastra el botn de accin Translate justo debajo del
botn Animate y configralo.
Sal del editor de reglas, haz clic en el botn Jugar de la barra de opciones y pulsa la tecla
flecha a la derecha para comprobar si el actor se desplaza hacia la derecha mientras tienes
esta tecla pulsada.
108
Arrastra al grafo el botn de condicin key , a la salida izquierda
(condicin falsa) del primer botn de condicin key programado y
configralo como se indica a continuacin.
Para que el actor mire hacia la izquierda cuando pulses la tecla Lef, habr que girar el actor
original 180 sobre s mismo.
109
Recuerda!!! Tener activada la casilla horizontal_flip, significa que el actor se
representa girado 180 de cmo est orientado originalmente.
Para simular el movimiento del actor, arrastra el botn de accin Animate
Para que el player se desplace hacia la izquierda cuando pulses la tecla tecla
110
Animate que acabas de introducir y configralo como se indica a
continuacin.
Poner -100 en la casilla speed significa moverse 100 pxeles hacia la izquierda.
Prueba a mover el player por la escena con las teclas flecha a la derecha y flecha
a la izquierda. Sita el actor encima de la base ms alta para que al moverse hacia
la derecha, veas tambin como cae de una plataforma a otra.
Hars un paso ms en esta regla antes de darla por finalizada. Cuando no se ha
pulsado ni la tecla Right ni la tecla Lef y el actor esta sobre una base, este actor
permanecer sobre la base con un pequeo movimiento que le dar mayor
sensacin de realismo.
111
Se selecciona la etiqueta suelo para comprobar si el player est chocando con
cualquier actor etiquetado como suelo.
Si se cumple la condicin (el actor est sobre el suelo), se incluir una animacin del
actor en la escena.
112
El resultado final de la regla right-lef ser el que muestra la siguiente figura.
113
SALTO DEL PLAYER CON LA TECLA DE FLECHA UP
Ahora vas a programar el movimiento del player que simula un salto, movimiento del actor hacia
Arrastra el botn de condicin key , debajo del crculo verde que indica
el comienzo de una regla y configralo.
114
En el caso de que el player est sobre una base (salida derecha de la condicin
Collides), habr que establecer las condiciones en las que se va a realizar el salto.
Collides (el player est sobre una base). Selecciona el archivo de sonido jump para
Al estar trabajando con una escena con fsicas y al estar activas las propiedades
fsicas del player, cuando ste de un salto, lo har con una velocidad inicial. A media
que pase el tiempo, por efecto de la fuerza de gravedad, la velocidad ir
disminuyendo hasta que el actor se pare y tenga que comenzar a descender. Para
controlar esta caracterstica, se programa un lmite de velocidad para que el actor
comience a descender, en un valor prximo a 0, por ejemplo, 0.1 pxeles/segundo.
115
Para rellenar la casilla property adecuadamente tendrs se hacerlo a travs del
116
Haz clic en el icono que representa el botn de condicin Compare y
configura la comparacin.
117
La casilla superior de la condicin Compare la rellenars utilizando el botn
seleccionando las opciones: Me>physics>Movement> velocity Y.
La condicin ser verdadera siempre que la velocidad del player sea mayor que
0.1 y falsa en el caso que sea igual o inferior a 0.1. En el caso de que sea cierta,
se simular un salto incluyendo una animacin del actor en la escena.
118
En el caso de que la condicin Comprare sea falsa (velocity_y <= a 0.1) tendrs
que establecer el momento en el que el actor comienza a descender. Considerars -
0.1 la velocidad a partir de la cual se realizar el descenso.
Recuerda!!! La condicin ser verdadera siempre que la velocidad del player sea
inferior a -0.1. El valor negativo indica que el sentido del movimiento es hacia
abajo.
Saldr por la opcin falso cuando el valor absoluto de velocity_y est entre 0.1 y
-0.1 (ambos incluidos). En este caso, el player no realiza ninguna accin, se simula
el momento en que el actor pasa de subir a bajar.
119
El esquema general de la regla jump deber ser como el que se muestra a
continuacin:
Ahora, sal del editor de reglas y prueba los saltos del player. Observa que el actor
realiza los saltos correctamente en el sentido de la marcha, a pesar de que cuando
se seleccionaron las imgenes de las animaciones, estas estuviesen mirando hacia la
120
derecha. Esto se debe a que en la regla right-lef se actualiza el valor de la
propiedad del actor horizontal_flip en funcin del sentido del movimiento. Por
esto, cuando el player va hacia la derecha, la animacin del actor al saltar mira hacia
la derecha y mira hacia la izquierda cuando va hacia la izquierda.
Lo que queda dentro del rectngulo gris, es la parte de la escena que se mostrar en
la pantalla, es decir, el visor de la cmara.
Recuerda!!! Por defecto, el centro de la escena coincidir con el centro del visor de
la cmara.
Para poder ver la escena a medida que el player se mueve por ella, habr que
conseguir que la cmara siga al actor. Para apreciar mejor este paso, vas a incluir un
fondo negro en la escena. Para ello, crears un nuevo actor y a continuacin, abrirs
su ventana de propiedades Properties para configurarla. Asegrate de que el
121
Se ha incluido en la escena el actor que va a simular el escenario sobre el que se va
a desarrollar el juego. Como puedes ver, no tiene el tamao adecuado.
Utiliza los puntos de control para que el tamao del fondo sea mayor que el visor de
la cmara tal y como se muestra a continuacin.
122
Has notado que el player ha desaparecido de la escena? En realidad, no es as, lo
que ha ocurrido es que los actores se superponen en la escena a medida que se
crean. Por este motivo, el actor fondo tapa al actor player. Para solucionarlo,
cambiars el orden de los actores en la lista de actores.
Abre la lista de actores que forman parte de la escena pulsando sobre el botn
Show cast de la barra de opciones. Observa como el actor fondo est
en la parte superior de la lista.
Haz clic en la fila que se corresponde con el actor fondo y arrstrala al final
de la lista. Automticamente el player est de nuevo visible en la escena.
123
Observa que los actores que no tienen imagen s se siguen viendo en la escena
aunque el fondo este en la fila superior, esto es porque la lista de actores es una lista
de visualizacin para aquellos actores que tienen asignada una imagen.
Recuerda!!! Es importante el orden en que los actores estn colocados en la lista de
actores.
Para hacer que la cmara siga el recorrido del actor por toda la escena, crears una
nueva regla para el actor player, entra en su editor de reglas e introduce el
nombre camara para identificar la regla
Hasta que la x del player no sea sea mayor que 0 (centro de la escena), la cmara
permanecer sin moverse. En el momento que este valor se supere, la cmara
deber empezar a moverse para as mantener al player en el centro del visor de la
cmara. Para conseguirlo, tendrs que hacer coincidir la x del player con la x de
la cmara.
124
Arrastra el botn de accin Change a la salida derecha (condicin
Prueba el juego para ver cmo la cmara sigue al actor. Tambin se advierte que la
cmara nunca se mueve desde el punto inicial hacia la izquierda. Esto es, porque
slo se han considerado los valores positivos de la x. Si se quiere conseguir este
efecto, tendrs que tener en cuenta los valores negativos de la x.
Construccin de la escena
El resultado final de la escena que se va montar, debera ser similar al que se
muestra a continuacin.
125
Nota: Para que se aprecie mejor la composicin de la escena, en las imgenes que se
muestran a continuacin no aparecer el fondo negro, aunque en tu trabajo s
estar.
INCLUIR LOS ACTORES PIEDRA
Empezars por reducir la longitud de la base suelo creada en el apartado anterior
utilizando los puntos de control.
A continuacin, sita un actor nuevo en la escena. Abre la ventana de
propiedades del actor Properties para configurarlo. Asegrate de que el
126
Arrastra el actor hasta la base suelo y utiliza los puntos de control para que
la longitud del actor sea similar al de esta base.
Siguiendo los pasos anteriores, colocars en la escena una segunda piedra, como se
ve a continuacin.
127
suponiendo que el actor tiene que caer por accin de la gravedad, no lo hace,
se debe a que la caja envolvente del player no est completamente fuera de la
base, y por lo tanto se entiende que el actor an est sobre la misma.
Para solventarlo, debers hacer las bases un poco ms pequeas que el actor que
representa su imagen.
128
El valor de opacity se pone a 0.8 para que cuando el ninja caiga al agua, parezca
que se sumerge, ya que este valor hace que el actor no sea totalmente opaco. Se
puede apreciar la diferencia de este efecto manteniendo opacity a 1 y haciendo
que el ninja caiga al agua. Una vez que se vea lo que pasa, se deber poner esta
propiedad a 0.8 y volver a hacer que el player caiga al agua.
Sita el actor agua1 debajo de la primera piedra y adapta su tamao con los
puntos de control del actor.
Este actor no necesita activar sus fsicas, ya que cuando el ninja se caiga al agua
tendr que hundirse, pero en cambio, s debers poner una base en el fondo del
agua para que el actor no desaparezca de la escena. Para colocar esta base, copiars
alguna de las bases que ya tienes en la escena.
Selecciona una de las bases existentes y con la combinacin de teclas Ctrl+C y
Ctrl+V, obtendrs su copia. nicamente cambiar su nombre, que se asigna
automticamente para diferenciarlos en la lista de actores.
Sitala debajo del actor agua1 y haz que la parte inferior quede por debajo
del visor de la cmara. Observa la imagen que aparece a continuacin e
intenta hacer algo similar.
129
Para dar sensacin de movimiento al agua, se le asignar una animacin.
Asigna una nueva regla al actor agua1 y entra en su editor de reglas. Llama
animacin_agua a esta regla.
Arrastra el botn de accin Animate debajo del crculo verde.
Adems, se ha pensado que quedara bien que cada vez que el player caiga al agua
se emita un sonido y que cada vez choque con la base que simula el fondo del agua,
la partida vuelva a empezar y el ninja aparezca situarlo al comienzo de la escena de
nuevo.
Aade una regla al actor agua1, entra en la ventana del editor de reglas y
ponle el nombre choque_agua.
130
Para comprobar si ste actor choca con el agua, arrastra el botn de condicin
131
Poner un valor 1 en la casilla seconds, significa que se est dejando pasar un
segundo.
Para especificar que una vez pasado un segundo el juego vuelva a
empezar, arrastra a la salida derecha (condicin verdadera) de la
132
Para simular una segunda zona con agua entre la segunda y la tercera piedra, utiliza
la combinacin de teclas Ctrl+C y Ctrl+V para hacer la copia de la base y del agua.
Observa la siguiente figura.
133
Show cast, y reduce o aumenta el tamao de los actores hasta obtener el
resultado deseado. Observa el ejemplo que se ha mostrado al inicio de esta pgina.
Aade una regla al actor diamante1. Accede al editor de reglas y pon a la regla el
nombre choque_diamante.
134
Arrastra el botn de accin Play sound a la salida derecha de la
Para que el diamante desaparezca cada vez que el ninja choque con l, hay que
seguir completando la regla.
sound .
135
Copia este actor tantas veces como quieras y sita estos actores por la escena. A
continuacin tienes un ejemplo de la escena ya finalizada.
136