Tutorial: Como hacer un juego. 2- Enemigo

Enemigo

En esta parte vamos a ver como crear enemigos. Vamos a utilizar el documento que ya creamos en la primera etapa de este tutorial. Una vez abierto vamos a dibujar nuestro enemigo.Yo hice algo así:

Una vez dibujado el enemigo lo hacemos MC (F8 - Clip de Película - Punto de registro en el centro - Aceptar). Ahora vamos a ponerle las acciones. Presionen F9 para que aparezca el panel de acciones de nuestro enemigo.

1
2
3
4
onClipEvent(load){
this._x = random(550);
this._y = -30;
}
Linea 1
  • onClipEvent: Introduce el MC.
  • load: Lo que introduzca entre las llaves va a suceder cuando el fotograma carga. Vamos a determinar la posición en la que este MC va a aparecer.
Linea 2 y 3
  • this._x = random(550): Estamos definiendo la posición horizontal de nuestro enemigo al comienzo del juego (load). Con random(550) vamos a obtener un número al azar entre 0 y 550; o sea que la posición X va a estar entre 0 y 550
  • this._y = -30: Ahora definimos la posición Y de forma fija. Al comienzo será -30 (no se va a ver, piensen que el punto límite que vemos es el 0, al poner -30 estamos haciendolo aparecer 30 pixeles arriba del límite).Ahora presionen Ctrl+Enter. Si no aparece nuestro enemigo, todo salió bien. Seguramente quieren el movimiento del enemigo. A hacerlo!
1
2
3
4
5
6
7
onClipEvent(load){
this._x = random(550);
this._y = -30;
}
onClipEvent(enterFrame){
this._y -= velocidad
}
Linea 5
  • enterFrame: Determina las acciones que sucederán en el juego.
Linea 6
  • this._y += velocidad: A laa posición Y de este MC, por cada frame, le vamos a sumar la variable "velocidad". Más tarde vamos a definir cuanto es "velocidad". Ej: Pasa una frame y la posición del MC es -30 + "velocidad". Pasa la segunda frame y la posición del MC es -30 + "velocidad" + "velocidad". Si prueban el juego ahora no va a ocurrir nada... Falta darle un valor a "velocidad". Pongan esto:
1
2
3
4
5
6
7
8
onClipEvent(load){
this._x = random(550);
this._y = -30;
var velocidad:Number = 5
}
onClipEvent(enterFrame){
this._y -= velocidad
}
Linea 4
  • var velocidad:Number = 5: Siempre que vamos a crear una variable se debe poner var. Luego se define el nombre de esta (velocidad) y el tipo (Number). Una vez hecho todo esto podemos darle un valor. En este caso le doy 5 pero ustedes pueden poner el número que quieran... Prueben el juego. Nuestro enemigo se mueve! (pero no vuelve a aparecer)
Para que reaparezca vamos a escribir esto:

1
2
3
4
5
6
7
8
9
10
11
12
onClipEvent(load){
this._x = random(550);
this._y = -30;
var velocidad:Number = 5
}
onClipEvent(enterFrame){
this._y -= velocidad
if(this._y >= 400){
this._x = random(550);
this._y = -30;
}
}
Linea 8
  • if(this._y >= 400){: if introduce una condición que la tenemos entre paréntesis. La condición es: si el Y de este MC es mayor o igual (">=") a 400 (puse 400 porque es la altura total de mi documento, adaptenlo al suyo si es necesario). Lo que va entre llaves es lo que ocurre en la condición.Linea 9 y 10
  • *Ver linea 2 y 3*

Lo único que falta es que pase tambien cuando toca a nuestro querido personaje. Vamos a usar el hitTest, función que detecta el contacto entre dos MC. Primero tenemos que darle un nombre al personaje para que flash lo reconozca en el juego. Clickeen el MC y presionen Ctrl+F3. Ahora a la izquierda de la ventana que apareció tenemos un campo de texto que dice .

Ahí escriban jugador. Este es el nombre que le ponemos al MC y con el que nos vamos a referir en el script.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
onClipEvent(load){
this._x = random(550);
this._y = -30;
var velocidad:Number = 5
}
onClipEvent(enterFrame){
this._y -= velocidad
if(this._y >= 400){
this._x = random(550);
this._y = -30;
}
if(this.hitTest(_root.jugador)){
this._x = random(550);
this._y = -30;
}
}
Linea 12
  • if: Declara la condición. Entre paréntesis la vamos a poner y entre llaves se pone lo que sucede cuando la condición se cumple.
  • (this.hitTest(_root.jugador): La condición, por ser hitTest, está compuesta por tres partes. La primera se utiliza para declarar uno de los dos MC que van a participar del contacto. Luego del punto viene la condición y finalmente entre paréntesis llamamos al nombre de instancia con el _root y lo declaramos.
Linea 13 y 14
  • Por ahora vamos a hacer que cuando el enemigo toque a nuestro personaje vuelva a aparecer. Después vamos a poner vidas, etc.Prueben con Ctrl+Enter y miren!
Por hoy terminamos, en la próxima entrada vamos a ver como crear vidas, puntaje y más. (ver parte 3)
-Rest

4 comentarios:

JuanGroso124 dijo...

Gracias a estos tutoriales estoy aprendiendo un poco del lenguage :D

nazlowe dijo...

hola quisiera saber como se hace para tener una caja de comentarios como esta agredesco tu ayuda saludos
pasa por mi blog

Rest dijo...

Perdón Nazlowe pero no te entendí. A qué caja te referís? Porque la caja donde se escriben los comentarios viene por defecto en el blog.

khezoow dijo...

buen tuto Juaco =P

Publicar un comentario

Bueno, les pedimos que si quieren pongan el nombre de usuario de Kongregate en el comentario y sean moderados.