Lo que vamos a hacer ahora es añadir el contenedor de balas al player. Vamos a añadir el contenedor de balas, está diciendo que hay errores, vamos a solucionarlos. [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] Tenemos que decir que la batería de transformación de nuestro padre es la batería de transformación de nuestro object. Vale, entonces voy a crear un objeto vacío, la posición 0, 0. Lo voy a llamar destroy objects. Entonces al player, al controlador de jugador player le voy a decir destroy objects 0, 0. Entonces el player cuando dispare va a añadir la nueva bala. Entonces el player controler voy a crear, voy a pasarme el ammo prefab. Y voy a controlar el tema del disparo, que no dispare constantemente, entonces para eso voy a poner un rate de disparo. [AUDIO_EN_BLANCO] Por ejemplo voy a hacer una bala cada segundo. Y la última variable va a ser current shoot time que va a ser en 0. Entonces vamos a crear un método booleano. [AUDIO_EN_BALNCO] Que me va a devolver si puede disparar el player, ¿cuándo puede dispar el player? Cuando el current shoot time sea menor o igual que 0. Entonces si el fire press está pulsado y de disparar el player, lo que voy a hacer es shoot. [AUDIO_EN_BLANCO] En una dirección determinada en la dirección forward del player. Entonces. [AUDIO_EN_BLANCO] Voy a crear el ammo container que voy a tener. [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] Al ammo container le voy a decir que añada una bala, enviando un prefab en la posición output ammo, y en la dirección que le pasamos en parámetro. El output ammo va a ser un objeto que lo voy a meter dentro de un hueso. [AUDIO_EN_BLANCO] Entonces para ello me voy a Unity otra vez, y al player, dentro del player dentro del right thigh, perdón dentro del right clavicle, right forearm, ese es el brazo derecho. Voy a meter un game object, que va a ser el ammo output. Entonces le voy a poner aquí al final de la mano, y desde ahí va a disparar. Lo que tenemos que hacer aquí ahora es ponerle un arma, que luego introduciremos. Entonces para ello a mi player le doy a errores, ya había creado el output, pero hay que añadirlo. [AUDIO_EN_BLANCO] Dice que aquí tengo que decirle la posición, según los parámetros son vector 3 de posición. Vale, entonces ahora shoot rate hemos dicho que es 1, current shoot time no tiene [INADUIBLE] El ammo container soy yo mismo, por tanto lo tengo yo, y el output ammo pues este de aquí. Vale, entonces la variable a la final la podemos eliminar porque ya no la utilizamos, porque ahora el personaje se mueve según el animador, por lo tanto lo podemos eliminar. El current shoot time lo vamos a quitar público, el shoot time lo vamos a quitar de público. Entonces si puede disparar, dispara y para ver luego dispara. Current shoot time vuelve a pasar a ser el valor del shoot rate, para que no pueda disparar en menos de un segundo. Entonces vamos a ver si funciona. [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] Ahí dice que la variable de mi ammo player, ammo prefab no está metida, por tanto no hay distancia. Entonces vamos a meter el ammo player que hemos creado previamente, lo metemos dentro de prefabs. Entonces lo vamos a meter por aquí, y al player le decimos que el ammo player, que el ammo prefab es el ammo player, acá damos z y lo ejecutamos. [AUDIO_EN_BLANCO] Ya vemos cómo dispara. Le dejamos que haya disparado una vez, tanto como nosotros lo hemos hecho bien. [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] Prueba está, eso es dispara una vez porque luego decrementamos la variable current shoot time. Entonces tenemos que decrementar la time frame por el delta time. Después de esto lo seguiremos. [AUDIO_EN_BLANCO] Que vaya decrementando para que el shoot nos permita volver a disparar. Entonces si volvemos al juego, ejecutamos. [AUDIO_EN_BLANCO] Nos permite disparar cada segundo, podemos modificar el shoot rate y entonces disparamos a mayor. Vale, bien vamos a agregar un arma a nuestro personaje. Para ello vamos a utilizar nuevamente el vt asset store, Para el arma vamos a utilizar este objeto que tenemos en el vt asset store, vamos a hacer como siempre, descargamos. [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] Una vez descargada, la importamos. [ÄUDIO_EN_BLANCO] Y ahora que la tenemos importada la vamos a meter al player. Entonces para ello cogemos el objeto y se lo vamos a meter a la cuenta del player. Igual como hecho antes con el ammo output se lo metemos a la mano. Pongo la posición 0, 0. [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] Aquí tenemos el arma, vamos a anime. El personaje va con el arma cogida, entonces lo que voy a hacer ahora, en caliente. [AUDIO_EN_BLANCO] Voy a disparar. [AUDIO_EN_BLANCO] Y acabar de rotar el arma para que quede bien colocada, como me interesa que quede. Entonces. [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] La voy a poner de esta manera y voy a guardar su matriz transformación, con el botón derecho copy component. Copy transform, copy component y entonces cuando quito el play se volverá a la posición original que estaba. Pero puedo hacer un paste component values, y ya tengo la matriz delobjeto donde quería. Entonces ahora lo que voy a hacer es en Ammo output lo voy a meter dentro del arma, y la voy a poner al final el arma. [AUDIO_EN_BLANCO] Para que la bala salga de. [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] Ahora sí. Pues la bala saldrá del final del arma. Entonces ahora ejecutamos. [AUDIO_EN_BLANCO] Y disparamos, dispara desde el final del arma. Como vemos el arma la tiene encogida, pero donde dirige el arma y él dispara no cuadra, entonces lo que vamos a hacer es falsearlo de manera que quede en algo mejor. Pues para ello vamos a poner una base arriba. [AUDIO_EN_BLANCO] Vamos a posarlo y lo que vamos a hacer es recolocar nuevamente el arma del player. [AUDIO_EN_BLANCO] Entonces como queremos que dispare en esa dirección, lo que voy a hacer es. [AUDIO_EN_BLANCO] Rotarla así. Todavía no queda perfecta, no va a hacer el efecto. Entonces copiamos otra vez la matriz de transformación, damos en play, pasteamos y ejecutamos. [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] [AUDIO_EN_BLANCO] Entonces ahora que tenemos las balas, podemos intentar meter la granada.