Una vez hayan descargado la plantilla. Abran con su editor de texto el archivo "intro.c" que está en la carpeta "src".
Van a ver esto:
Código:
#include "headers/important.h"
bool intro_main()
{
if (get_time() == 0) {
// Do something
} else if (get_time() < 2 * SECOND) {
//Do more things
}
if (key_down(KEY_A | KEY_B | KEY_START) || get_time() == 20 * SECOND)
{
return true;
}
inc_timer();
return false;
}
Ustedes pueden modificar todo lo que quieran que este dentro de las llaves externas ("bool intro_main() { ... }", ustedes podrían editar los puntos suspensivos). Ese código que está allí se va a ir ejecutando continuamente hasta que le digan que pare. Les explico por partes como funciona.
La parte que dice:
Código:
if (get_time() == 0) {
// Do something
} else if (get_time() < 2 * SECOND) {
//Do more things
}
Esto es la parte principal. Aca debería poner todo lo que quieran que haga la intro.
Si leyeron las partes anteriores se darán cuenta que hay una funcion llamada "get_time", que no recibe ningún parámetro, y está comparando su valor con 0. Pero lo más seguro es que no entiendan que significa eso. Y está bien, porque no lo expliqué
Para hacer una intro ustedes tiene que realizar muchas cosas en diferentes momentos de tiempo. Por eso es que el sistema tiene un reloj. La funcion get_time(), lo que hace es devolver el valor actual del reloj. Si el reloj tiene un 0, get_time() será equivalente a que si hubiera un 0, pero si tiene un 25, se remplazará por 25.
Por eso es que esa primera parte se ejecutará
sólo cuando el reloj esté en 0. Probablemente allí quiera cargar los gráficos e iniciar la música por ejemplo.
Ahora supongo que entienden un poco más la parte del else if. En la primera vuelta de la función se ejecutará lo que ustedes escriban en vez de "//Do something". Y a partir de la segunda vuelta, se ejecutará la parte del else if, hasta que la condición se deje de cumplir.
Y para que entiendan la condición que supongo que todos deben estar perdidos. SECOND es una palabra que se reamplaza por el valor numérico que vale un secundo (si get_time() es 1, no quiere decir que pasó un segundo). Así que básicamente 2* SECOND será el valor numérico equivalente a dos segundos; por lo que mientras el valor del reloj sea menor a 2 segundos, se ejecutará lo que escriban en lugar de "//Do more things".
Sientanse libres de modificar esto como les plazca.
La parte de:
Simplemente le suma uno al reloj. Les recomendaría no sacarlo a no ser que sepan lo que hacen.
Esta parte no la voy a explicar demasiado. "key_down" es una funcion que se remplaza por true si una tecla está presionada o por false si no lo esta. Para más información ver la seccion de funciones. Pero bueno lo que tenemos es basicamente una condición donde si el jugador presiona una tecla o el reloj alcanza 20 segundos ocurre algo. "return true" es la forma que tenemos de decirle al juego que la intro termino, por lo que si se cumple la condición la intro terminará (en este caso, que la saltee apretando A, B o start; o que pasen 20 segundos).
Código:
if (key_down(KEY_A | KEY_B | KEY_START) || get_time() == 20 * SECOND)
{
return true;
}
Y finalmente esto:
Es lo opuesto a return true, le dice al juego que la intro todavía continua.