Bienvenidos.
Vamos a revisar la vamos a realizar el reto del disparo triple.
Nos habíamos quedado en que ahora tú puedes simular si recolectas el paro o no..
Usando la variable checando si está en verdadero o falso.
Entonces cuando esta variable sea verdadera vamos a disparar el triple láser y cuando sea falso vamos
a disparar un láser sencillo.
Lo que siempre debemos empezar haciendo es escribir un poco de pseudocódigo.
Como puedes ver aquí arriba tenemos esta variable que determina si estamos disparando triple o no y
luego tengo mi variable laisser y tal vez algunos de ustedes pensaron en crear un par de variables adicionales
para almacenar cada uno de los lásers.
Pero de hecho no necesitas hacer eso porque ya tenemos una referencia al objeto que vamos a crear.
Entonces escribamos la lógica para lo que queremos hacer.
Aquí está nuestro método.
Entonces aquí adentro escribimos un poco de código y muy sencillo.
Si tengo disparo triple dispara tres lásers si no dispara uno nuestra variable falla y en general nuestro
sistema de aún no va a cambiar.
No voy por taxista disparando uno o tres lasers lo que quiere decir que podemos poner nuestra lógica
dentro de este y entonces escribimos y tipus puchalt y escribimos dos signos de igual.
Y lo que escribimos este signo es igual a Juntos es el operador de comparación.
Entonces si Cancho es igual a otro que lo que queremos hacer queramos disparar tres lásers y para hacer
eso vamos a usar nuestro método instante.
Queremos mantener nuestro disparo central.
Entonces copiamos disparo central.
Ahora agregamos el disparo del lado izquierdo.
Entonces ya tenemos el disparador del centro que vamos a hacer.
Vamos a copiar y pegar el del centro y modificarlo para que sea el izquierdo.
Entonces tránsfer posición se mantiene igual pero en el nivel 3.
Para mi la X va a ser menos 0.55 F.
En el caso de 0.06 F.
Entonces aquí lo que le estamos diciendo es que crear un nuevo láser en la posición central de mi jugador
pero que le quede un pequeño una pequeña variante en X de menos mate 5 y un poquito hacia arriba 0.06
el siguiente paso seria copiar mi chip para el izquierdo y el derecho.
Entonces ya tenemos izquierdo central y tengamos derecho el hacer Derecho es idéntico al izquierdo solo
que la posición en X es positiva 0.55 F y la G se mantiene igual.
Entonces si revisamos la lógica aquí vemos que sí es igual.
6.
Para ver estos tres lásers si no ellos nada más vamos a disparar un láser entonces el Installer que
tenemos aquí abajo lo vamos a meter aquí dentro del chanfaina lo dejamos igual.
Igual hasta el punto más Fairy o quizá el Veamos esto vamos a probarlo.
Bueno primero hay que remover estas tres lásers que habíamos creado previamente y vamos a correr el
juego primero si vemos el player vemos que su variable es falso.
Entonces cuando nosotros disparamos vemos un solo disparo.
Pero si hacemos esta variable verdadero dando clic en el check box ahora empezamos a disparar disparos
triples.
Entonces aquí tenemos ya funcionando mi disparo triple y lo que voy a hacer ahora es enseñarte una forma
alternativa en la que pudiste haber creado esto mismo en programación siempre va a haber más de una
forma de solucionar el mismo problema y no necesariamente tú o la solución que tú escogiste está bien
o está mal.
Simplemente hay mejores formas de solucionar los problemas.
Hay formas que te pueden ayudar a salvar algo de tiempo.
Hay unas formas que te pueden ayudar a mejorar el performance de tu juego.
Ahora cómo pudimos haber logrado alguna forma que sea mejor de la que hicimos.
Si revisamos el código Veamos que tal vez no sea necesario tener tres funciones de instancia.
Aquí lo que hacemos actualmente es crear tres objetos cuando en realidad podríamos simplemente crear
uno solo.
Por ejemplo yo sé la posición de los láseres que tiene me disparo triple.
Entonces lo que voy a hacer en este momento es cargar de nuevo un láser a mi escena y lo voy a colocar
en la posición en la que debería de aparecer que en mi caso 0.80 i8.
También voy a crear mi láser del lado izquierdo.
Aquí lo voy a duplicar y voy a llamarlo leff quien bajo la ley se lo voy a asignar una X de menos 0.55
y una de 0.06.
Ahora voy a duplicar ley y lo voy a llamar rigg.
Y lo que voy a hacer es cambiar su X aunque que sea positiva ya que tenemos aquí nuestro placer y lo
que voy a hacer ahora es crear un objeto vacío puedo dar clic derecho y clic que incluye tempi o presionar
el Charcot el chip.
Para crear ese objeto y lo que acabamos de crear es un objeto vacío que simplemente representa un punto
vacío en el espacio de nuestra escena y este lo voy a arramblar a que se llame Trípoli.
Ahora lo que voy hacer es mantener la posición de tipus En Cero Cero Cero y arrastrar estos tres lásers.
Primero voy a cambiar el nombre del centro y.
Y luego los voy a arrastrar los tres al mismo tiempo dentro de tripulación.
Ahora cuando muevo el pulso te darás cuenta que se mueven los tres objetos al mismo tiempo.
Lo que acabo de crear es un objeto que tiene objetos hijo dentro del Hay tres lásers hijos dentro de
él y lo que voy a hacer ahora es simplemente arrastrarlo a mi carpeta princeps para crear un nuevo mapa
a partir de él y así poder instancias dentro de mi juego.
Entonces ya creamos un primo de tripulación y vemos que ahora es un elemento por sí mismo lo que quiere
decir que ahora es independiente del otro placer que veamos creado podía borrar mi prepucio de la escena.
Voy a regresar a mi código voy a crear una nueva variable la voy a llamar iveth Gamma Repullo.
No olvides realizarla.
Y ahora lo que va a pasar es que cuando mi variable de uso sea igual Astroboy instancia este nuevo objeto
en lugar del anterior.
Entonces ahora en lugar de tener estos 3 instance puedo tener solamente uno y escribir instante.
Abro paréntesis la posición vaser Transform puntos posición porque va a ser la posición del jugador
y para la rotación.
No me importa entonces voy a poner 4 punto Identity.
Perdona que escribí algo que no vale.
Borrarlo.
Saludamos esto y vamos a probarlo.
No olvides poner la variable.
Y si lo corrobora y no asignado el variable de tipus vamos a tener un error llamado Null Reference o
referencia nula.
Así que probamos ponemos orden en verdadero corremos el juego intentamos disparar y aquí estamos viendo
en la consola múltiples errores.
Múltiples referencias que dicen algo así como unas referencias cepellón de Big haceun y que todo eso
significa es que estamos tratando de instancias de crear un objeto que es nulo y como lo puedes ver
aquí en el inspector nuestra variable es bueno no tienen nada y es simplemente agregamos nuestro tripulación
shot y estamos listos a funcionar.
Como puedes ver ya estoy disparando mi triple láser pero hay un problema con lo que acabo de hacer.
Fíjate lo que pasa cuando tengo el juego esa variable de nuevo no está asignada y la razón fue que la
guardé cuando el juego estaba corriendo.
No se guardan los cambios es importante recordar eso.
Entonces ahora que el juego está detenido asigna de nuevo la variable en el objeto triple A la variable
y corremos de nuevo y así debería funcionar todo bien.
Entonces aquí probamos nuestro disparo normal y si lo expliquen contribucion empieza a disparar triple.
Muy bien.
Espero que les haya ido muy bien con esto.
Espero que hayan aprendido bastante y los veo en el siguiente vídeo.