lunes, 4 de abril de 2022

SCRIPTS EN C# PARA HACER UNAS BARRAS DE VIDA EN UNITY 2 PARTE;

 


Bueno e resuelto finalmente el tema de que un Player al ser abatido por un enemigo, poco a poco perdiendo vida mediante un slider, al final aga un cambio de escena, y que al contrario si el Player abate al enemigo y este poco a poco va perdiendo vida su slider al llegar al final aga otro cambio de escena diferente,


Me a costado mirar muchos tutoriales en video de YouTube y copiando el script en C# que los videos mostraban, pero la mayoría de ellos no me funcionaban, imagino que por pequeños detalles que se me escapaban a mi y otros detalles que se le escapaban a los youtubers que colgaban sus explicaciones…… en fin yo muestro el resultado de mi esfuerzo y publico los scripts por si alguien quiere aprovecharlos y también esta el enlace del video que me a dado pie a lo conseguido y que en el blog muestro.

De una docena de tutoriales solo uno me fue útil haciendo yo unos pequeños cambios en el script, ya que en el original solo menguaba el slider al apretar la tecla “e” del teclado, y yo e conseguido que mengue al haber colisiones mediante tag personal de los gameobjects y que consiga el cambio de escena...para enemigo muerto o para el player si muere…….

 

  using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class ARRASA : MonoBehaviour {

    public int damage;
    public int vidaEnemigo;
    public Slider BarraVidaEnemigo;


    void Update () {

        BarraVidaEnemigo.value = vidaEnemigo;

    }


    void OnTriggerEnter(Collider other) {
    //    if (other.gameObject.CompareTag ("Player")){
            if (other.gameObject.CompareTag ("caca")){

            vidaEnemigo-=damage;

            if (vidaEnemigo <= 0) {

            //    Destroy (this.gameObject);/////destruye funciona

            //    Application.LoadLevel (0);

                Application.LoadLevel (1);///cambia la escena donde quiero funciona


            }


        }}

}


 ----------------------------------------------------------------------------------------------------------------------

-------------------------------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------------------------------

  using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class OTAMAS : MonoBehaviour {

    public int damage;
    public int vidaEnemigo;
    public Slider BarraVidaEnemigo;


        void Update () {

        BarraVidaEnemigo.value = vidaEnemigo;

        }


        void OnTriggerEnter(Collider other) {
            //if (other.gameObject.CompareTag ("MATA")){
            if (other.gameObject.CompareTag ("pipi")){

            vidaEnemigo-=damage;



            if (vidaEnemigo <= 0) {

            //    Destroy (this.gameObject);////destruye funciona

            //    Application.LoadLevel (1);

                Application.LoadLevel (2);////cambia la escena donde quiero funciona





            }


            }}

    }


---------------------------------------------------------------------

---------------------------------------------------------------------

En este video muestro el script y como paso el slider ,y como nombro por tag propio los proyectiles que disparan, cada personaje, el player su proyectil y su tag ,y el enemigo su proyectil y su tag, el player su script para su barra de vida o slider, y el enemigo su propio script para su barra de vida o slider.

Ojala le sea útil a alguien yo e tardado casi un mes en aprender hacer esto, partiendo de aquí a elaborar los personajes y a lucirse trabajándolos modelándolos y texturizan dolos, a mas de inventarse una argumento para un videojuego, eso si muy corto alargarse ya se alarga solo al desarrollarlo…..


 


No hay comentarios:

Publicar un comentario