Hasta ahora solo falta una cosa para tener un gameplay completo.
Es la condición de finalización, en este caso este será un juego donde irán saliendo enemigos hasta
que mi granjero pierda las fuerzas.
En este caso tiene balas infinitas.
Podríamos restringir el número de balas?
Podríamos hacer muchas cosas.
De momento lo voy a hacer muy fácil.
Cuando uno de los enemigos llegue a la zona de muy abajo, se salga de la pantalla y mi granjero no
se lo haya cargado automáticamente para mover muy fácil.
Esto quiere decir que cosas como tener un enemigo tan en la esquina como este alce me va a putear vivo.
No me lo puedo cargar.
Vale, entonces lo primero que habrá que hacer es en nuestro spawn manager.
Recordad que teníamos la zona de Spanic, así que si vamos al scrip en el Spawn Mãnager creo que habíamos
puesto desde menos 20 a 20.
Os acordáis el de Spawn Reiche x ser consistentes si vuestro personaje sólo se puede mover de menos
15 15 pues espania enemigos, por ejemplo de 14 a 14.
Vale.
Lo digo porque si no será muy injusto.
Será en plan hostia.
Como el primer enemigo ya me salga fuera de zona, no me lo cargo.
Entonces el Spawn Ranch lo reducimos a un poquito menos que la zona de movimiento del player 14 puntos.
Yo creo que es más que de sobras cuando hay que lanzar el mensaje de que mover.
Pues en este caso va a ser muy simple cuando el primer enemigo que mi granjero no se pueda cargar llega
abajo, ya tenemos un método que es capaz de detectar que un enemigo llega abajo y que de hecho lo destruye.
Si no, cuál es el script que utilizábamos para ello?
Distro y autoctonos, distro y autor.
Bounds recordar que aquí teníamos esta doble funcionalidad que me permitía saber si un objeto superaba
la frontera superior o un objeto superaba la frontera inferior.
Sí, pues en este caso el código que debemos ejecutar es única y exclusivamente.
Si llegamos a la frontera inferior, entonces éste es el típico caso donde antes os lo junté para podernos
explicar el anti olor.
Pero ahora el que esté junto es un problema para mí, porque solo quiero destruir.
Solo quiero indicar el fin del juego cuando se cumple la segunda condición, no la primera.
Entonces, este es el típico caso donde lo hemos querido juntar para reducir una línea de código, pero
casi, casi.
Más que ayudarme, ahora me putea.
Entonces no pasa nada.
A veces en programación os va a ocurrir esto.
Vais a necesitar copiar, pegar las líneas de código que estén dos veces.
Una se llevará la primera condición y sólo la primera condición, y la otra se llevará la segunda condición.
Solo la segunda condición.
Cuidado con los paréntesis.
Si borramos que nos carga es un paréntesis de más o de más.
Se sale de color rojo o se descarga un paréntesis que no tocaba.
Entonces fijaros que la frontera superior era para destruir vallas.
La frontera super inferior es para destruir enemigos.
Aquí lo único que voy a hacer por ahora.
Como no os he enseñado a crear más escenas para crear una escena de Game Over o demás muy simple, voy
a mostrar un mensaje por consola.
Entonces, cómo se mostraba un mensaje por consola?
Os acordáis de VAC?
Punto y había tres tipos de logs.
Os acordáis?
El log normal y corriente para mostrar un mensaje de información?
El error para mostrar un error de color rojo bien vivo.
Y el log warning, que es para mostrar una advertencia en plan cuidado, que ha pasado algo que hay
que tenerlo en cuenta.
Cuál de los tres mensajes consideráis que es el que deberíamos usar para mostrar un mensaje ahora mismo
de fin de la partida?
Lo normal y corriente está fantástico.
Vale un look normal y corriente y ponéis aquí, entre comillas, el mensaje favorito de los 26 nerds
en plan tejones inútil vale mover como mensaje
y en principio esto finaliza el gameplay.
Los enemigos se escanean.
Yo les puedo disparar.
Soy capaz de mantenerlos a raya gracias a las balas y soy capaz de detectar cuando la partida termina
por que un enemigo ha pasado el borde inferior de la pantalla.
Por lo tanto, fijaros que ahora solo me queda una cosa que es venir aquí y darle al play, ver qué
tal y sobretodo faltara ajustar los valores de la dificultad.
A lo mejor es muy lento el personaje o a lo mejor los animales son muy rápidos.
Fijaros que aquí y ahora yo puedo, yo me puedo poner a disparar a saco.
Yo puedo estar disparando como un condenado y vivir aquí infinitamente, probablemente cosas del estilo.
No poder disparar siempre como estoy haciendo ahora que ahora estoy haciendo una ráfaga aquí probablemente
el que tenga aquí la ráfaga simplifica mucho el juego.
Entonces, dónde disparábamos en el Player Controller dentro de la deuda.
Aquí teníamos el key, el Get Key que Ecodes país.
Si en lugar de que key hago Get It Down, que en lugar de mantener pulsada es al bajar el dedo, que
es lo que va a pasar ahora.
Pues ahora igual me carga el dedo de mucha gente.
La gente se disloca el dedo porque cuando disparas, por mucho que mantenéis, solo sale una.
Tienes que empezar a darle al dichoso espacio en blanco para que salgan los bichos estos.
Ahora simplemente sería un juego de cansancio, de cansar al jugador hasta que no, hasta que la vida
no puede más.
También podríamos estar jugando con el tiempo de refresco.
Hay armas o hay juegos que, por ejemplo, lo que hacen es que puedes disparar, pero luego tienen un
down un pequeño tiempo durante el cual no puedes disparar nada.
Y no es hasta que sea superado ese down que podéis volver a disparar.
Se podrían implementar diferentes tipos de mecánicas?
Evidentemente iremos viendo algunas de éstas.
Aquí me interesaba sobretodo que pudiéramos ahora detectar el fin de la partida, el fin de la partida.
Recordad, debería mostrarme este mensaje en consola game over mover.
Cuando un enemigo llega abajo del todo, dejamos que el perro llegue abajo del todo y.
De hecho, que los animales siguen bajando y sigue habiendo que mover trasgu y moverse típicamente,
si queréis que el mover congele el juego absolutamente congele el juego.
Lo único que tenéis que hacer es el game over que estaba aquí en el distraido Autonomous.
Recordáis que había el Thain del Tatin?
Os acordáis que sabía que servía para saber cuánto había pasado de un intervalo de tiempo a otro?
Pues el timing tiene muchas otras cosas.
Tiene el delta time, tiene el fix time que se utilizará en el motor de físicas.
Ya hablaremos de él, tiene un escaleta en el Times Coil, etc. Hay un montón de tipos de tiempos en
Unity.
En particular si queréis que cuando muera se congele todo.
Hay uno que se llama El Tiempo, el Times Coil, el Times, que es un factor que multiplica el tiempo
por defecto.
Todo el tiempo va a velocidad 1 sin bajar a velocidad.
5.
Hariais efecto Matrix?
Como que todo va a cámara lenta.
Si pusiera velocidad.
2 todo iría como los Lumi duros.
Vale, todo iría más acelerado de lo normal.
Entonces, si el Times que lo igual a cero, lo que haceis es que el tiempo se congela, el tiempo deja
de correr y se mantiene parado al infinito.
Entonces, si el Times está en cero, lo único que debéis hacer es lo siguiente os vais al play, os
quedáis asimilando el juego.
Veréis que los animales van bajando como siempre, en algún momento a la que el primer animal se salga
de la pantalla metiendo la pinta, o sea, el perro.
El resto se congelan.
Lo veis?
Es la forma perfecta de parar el juego y listos.
Hay muchísimos parámetros relacionados con el tiempo que aparecen en los proyectos Settings.
Aquí hay una sección en Proyect Settings recordad EDIT Proyect Settings.
Si la habéis perdido, hay una sección que se llama Thain Tiempo.
Aquí hay un par de parámetros.
Os fijais que hay un fixed step, el fix.
Este es el intervalo de tiempo al que el juego intenta correr si o si.
Es decir, cada cero coma cero dos segundos ejecutar un nuevo Freinet el máximo un trimestre 0,3 3 3.
Es decir, lo mínimo a lo que puede correr vuestro juego a 3 frames por segundo, que os puedo asegurar
que es injugable.
Aquí tenéis el times que no veis.
Este es el que yo por código he cambiado a cero para que se congele el máximo partido Times Tepes.
Para el sistema de partículas.
Pero aquí lo chulo es esto.
Fijaros si vosotros el Times que lo cambien por código, como acabo de hacer yo ahora.
Fijaros ahora por defecto.
Esto se mueve normal y corriente.
Si yo le bajo el Times Coil a 0,5 veis que se mueven más lentos.
Incluso mi personaje se mueve mucho más lento.
Es efecto Matrix el efecto Matrix y de hecho, si disparamos al efecto Matrix, que parece que me estoy
cargando a los enemigos, lo veis?
Por supuesto, si acelero, el tema es que esto es un poco más rápido.
Vale que el me ha bajado a cero porque yo lo he cambiado por codigo el día de mañana cuando hay que
resetear simplemente el reset.
Vuelve Rupp a cambiar el Times.
Keyla 1 y listos, pero fijaros que fácil que es establecer un menú de mover al menos el mensaje de
que mover las pantallas os las voy a enseñar a diseñar, pero más adelante las pantallas para el mensaje
de mover un botón de reset y además la vamos a hacer un poco más adelante.
Pero aquí fijaros que ya he visto que te he dado todos los parámetros del Time para poder conseguir
el efecto primero de mover y el segundo de parar el tiempo si.
Vale preguntas, no?