Tutorial MonoGame – La pantalla de Splash

Tutorial MonoGame – La pantalla de Splash

Ya es tiempo de agregar pantallas. En nuestro tutorial pasado comenzamos a arreglar todo para ir haciendo nuestro Engine y mostrar en la clase Game1 la pantalla que le indiquemos.

Creando constantes globales

Lo primero que vamos a hacer es crear unas constantes que vamos a estar utilizando todo el juego. Nos servirá para hacer cálculos y para que sea más fácil acceder a ellas.

Crea un archivo llamado Constants.cs en la raíz del proyecto y escribe lo siguiente

Vamos a utilizar el tamaño de la pantalla y cuánto tiempo va a estar la pantalla de splash mostrándose antes de que empiece el juego.

Agregando nuestros sprites

Anteriormente, habíamos creado los archivos xnb para agregarlos a nuestro proyecto, el tiempo de agregarlos es ahora.

Debido a que hay un problema (o al menos no he encontrado la forma de hacerlo) vamos a hacer un pequeño truco. En nuestro proyecto se encuentra una carpeta llamada bin, dentro hay otra llamada Debug y dentro de esta una llamada netcoreapp2.0, dentro de esta carpeta crea una nueva llamada Content.

Copia y pega las capetas Audio y Sprites dentro de la carpeta Content de nuestro proyecto de MonoGame para agregarlos.

Ya con esto estaremos listo para usarlos.

Creando la pantalla de Splash

Ahora vamos a agregar el archivo SplashScreen.cs dentro del folder Screens, dentro de la clase escribe el siguiente código

Vamos a explicar un poco lo que hace este código

Primero agregamos dos variables que vamos a usar, la primera es el GameData, que son los datos de todo el juego que vamos a estar pasando, el estado del juego en sí. También agregamos un background que nos va a servir para guardar la imagen que vamos a mostrar en nuestra pantalla de splash.

Aquí simplemente cargamos nuestra imagen, como puedes ver, no ponemos la extensión al final, ya que todos son archivos xnb.

En el método Update vamos a checar cuanto tiempo ha pasado desde que se inició el juego, si es mayor a 3 segundos, que es el tiempo que le pusimos a la variable, vamos a escribir Go to Main Menu. Por ahora solo escribiremos eso, en el siguiente tutorial vamos a pasarnos a la siguiente pantalla.

Por último, en el método Draw dibujamos nuestro sprite. Lo que hacemos es pasarle la textura que cargamos, luego creamos un rectángulo que es donde va a estar posicionado, con un tamaño de la pantalla, y al final le pasamos el color de tinta, si no queremos que se coloree, le pasamos Color.White.

Actualizando la clase Game1

Vamos a actualizar nuestra clase Game1 para poder usar nuestra pantalla de splash. En el constructor de la clase agrega esto

Con esto le decimos a nuestro juego el tamaño de la pantalla que queremos, el alto y el ancho.

Luego, en el método LoadContent agrega al final esto

Aquí agregamos nuestra primera pantalla, que es el splash.

Si corremos el proyecto dotnet run veremos lo siguiente

Si esperas 3 segundos, deberías de ver lo siguiente en la consola

Ya con esto sabemos que el código funciona y estamos listo para que agreguemos la siguiente pantalla.

Palabras finales

Ya por fin tenemos agregada nuestra pantalla de Splash. En el siguiente tutorial vamos a agregar la pantalla principal donde estará el menú de inicio del juego.

A %d blogueros les gusta esto: