Mostrando entradas con la etiqueta juego. Mostrar todas las entradas
Mostrando entradas con la etiqueta juego. Mostrar todas las entradas

sábado, 12 de mayo de 2018

Snap! Space Invaders 4

Efectos de destrucción del invasor


En este punto del diseño del juego en el que nuestra nave es capaz de disparar, necesitamos que el invasor visualice su destrucción del modo más realista posible y que en esa destrucción se produzca un sonido acorde con lo que sería una explosión.

El efecto visual del invasor destruyéndose lo implementaremos haciendo que éste muestre un segúndo disfraz en el que se vea desintegrándose. Podemos hacer esto modificando el disfraz inicial con cualquier programa de retoque fotográfico; nosotros hemos usado Gimp y nos quedó así:



Lo añadimos al cajón de disfraces de nuestro invasor que quedará con estos dos disfraces:


Ahora buscamos un efecto sonoro para la explosión en alguna base de datos de Internet, por ejemplo des esta misma:

https://www.freesoundeffects.com/free-sounds/explosion-10070/

y la añadimos a nuestro juego de la siguiente forma.


Una vez tenemos incorporado el disfraz y el sonido vamos con el código.

La idea es que cuando un misil alcance a nuestro invasor éste cambie durante un corto tiempo a su disfraz de destruido y luego desaparezca, todo ello acompañado del sonido. El código es el siguiente:


Sólo con este snippet nuestro juego es totalmente funcional.

El resultado:




<< Anterior

domingo, 6 de mayo de 2018

Snap!: Space Invaders 3

¡Lanzando proyectiles!


Ahora que controlamos nuestra nave y nuestro enemigo está operativo, necesitamos dar un paso más y hacer que podamos disparar al enemigo al pulsar la barra espaciadora.

En este post vamos a programar esa función para el juego. Vamos a ello.

Como siempre, lo primero es crear el sprite. Debido a la simplicidad del proyectil lo crearemos nosotros desde el propio panel de edición de Snap! pulsando en el pincel como indica la imagen:


Nuestro proyectil será simplemente una recta amarilla que simule algo parecido a un rayo laser.

Una vez creado nuestro tercer sprite preguntémonos cuál será su funcionamiento.

Cuando el usuario pulse la tecla espaciadora deberá salir el proyectil de la nave y seguir una trayectoria recta vertical ascendente hasta desaparecer por la parte superior de la pantalla. Dejaremos para otros posts la destrucción del invasor.

El primer bloque será la ocultación del proyectil al empezar el juego ya que éste no debe ser visible si aún no se ha disparado.


Lo siguiente será la detección de la barra espaciadora pulsada para posicionar el proyectil justo donde esté la nave usando la variable nave_x como abcisa y -120 como ordenada. A continuación haremos visible el proyectil y con un solo bloque ordenaremos su desplazamiento desde la nave hasta la parte superior de la pantalla en la misma vertical:


El resultado:




<< Anterior Siguiente >>

sábado, 5 de mayo de 2018

Snap!: Space Invaders 2

Dando vida al enemigo


En esta segunda parte de nuestro juego de Space Invaders crearemos a nuestro enemigo. En un principio será sólo uno y lo llamaremos invasor. Usaremos esta imagen png con fondo transparente: 


Al iniciarse el juego nuestro invasor aparecerá centrado en la parte alta de la pantalla y se empezará a moverse de un lado a otro de la pantalla rebotando en los bordes. Además, cada vez que llegue a un borde bajará 10 píxeles su posición.

Vamos a ello. Nuestro código comenzará detectando el mensaje "Empieza el juego", para ello usaremos el bloque cuando me llegue.

Nada más detectarse el inicio de juego deberemos asegurarnos de que el invasor tiene el disfraz normal. Esto ahora no se entiende, pero más adelante haremos que nuestro invasor tenga otros disfraces para cuando sea destruido, por lo que ahora basta con colocar el disfraz normal. Tras esto lo colocamos en centrado en lo alto de la pantalla y lo hacemos visible, ya que más adelante, cuando sea destruido lo haremos desaparecer.


Lo siguiente será apuntar en una dirección, por ejemplo hacia la derecha y echar a andar. Esto lo hacen los siguientes bloques:

Por último vamos a programar cómo hacer que al tocar un borde de la pantalla la posición del invasor baje 10 píxeles:


El resultado como puede verse hace lo que queríamos:



<< Anterior Siguiente >>

jueves, 3 de mayo de 2018

Snap!: Space Invaders 1

Creación de nuestra nave


Vamos a crear un juego similar al legendario "Space Invaders" de Arcade de 1978. En este primer post crearemos únicamente nuestra nave.

Al iniciarse el programa, la nave deberá aparecer centrada en la parte inferior de la pantalla y podremos desplazarla de izquierda a derecha mediante las flechas del teclado.

Vamos a ello:

Primeramente colocaremos un escenario negro o estrellado y cargaremos nuestro sprite que llamaremos nave. Usaremos esta imagen en formato png con fondo transparente.



A continuación empezaremos el código. Tras el bloque de inicio, enviaremos un mensaje a todas las partes del programa indicando que el juego ha empezado. Fijaremos la coordenada y de nuestra nave a -120 píxeles para que aparezca en la parte baja de nuestra pantalla.

Para controlar el movimiento horizontal crearemos una variable que llamaremos nave_x, y que nos servirá para saber en todo momento dónde está nuestra nave. Esto será importante cuando lancemos proyectiles ya que éstos deberán salir de la nave, esté ésta donde esté.

Asignamos un valor inicial de 0 para nave_x; esto hará que aparezca centrada en la pantalla al iniciarse el programa.

El resto del código es un bucle infinito donde se comprueba si se pulsan las teclas de flecha-derecha o flecha-izquierda y se incrementa o decrementa el valor de nave_x en 3 píxeles respectivamente, actualizando después el nuevo valor de nave_x.



El resultado como puede verse hace lo que queríamos:



<< Anterior Siguiente >>