public HeroeBase LoadHeroe(HeroeBase heroe)
    {
        EasyFileSave miarchivo = new EasyFileSave(heroe.nombre);

        if (miarchivo.Load())
        {
            heroe.vidaActual   = miarchivo.GetInt("HeroeVidaActual");
            heroe.vidaBase     = miarchivo.GetInt("HeroeVidaBase");
            heroe.manaActual   = miarchivo.GetInt("HeroeManaActual");
            heroe.manaBase     = miarchivo.GetInt("HeroeManaBase");
            heroe.fuerza       = miarchivo.GetInt("HeroeFuerza");
            heroe.inteligencia = miarchivo.GetInt("HeroeInteligencia");
            heroe.resistenciaF = miarchivo.GetInt("HeroeResistenciaF");
            heroe.resistenciaM = miarchivo.GetInt("HeroeResistenciaM");
            heroe.velocidad    = miarchivo.GetInt("HeroeVelocidad");

            heroe.cantidadXP = miarchivo.GetFloat("HeroeXP");
            heroe.nivel      = miarchivo.GetInt("HeroeNivel");

            Debug.Log(heroe.nombre + " Cargado");

            miarchivo.Dispose();
        }
        else
        {
            Debug.LogWarning("Fallo al cargar " + heroe.nombre);
        }

        return(heroe);
    }
Пример #2
0
    public void RestablecerMana(int cantidad, GameObject objetivo)
    {
        if (objetivo.CompareTag("Player"))
        {
            HeroeBase heroe = objetivo.GetComponent <HeroeStateMachine>().heroe;
            if ((heroe.manaActual + cantidad) >= heroe.manaBase)
            {
                heroe.manaActual = heroe.manaBase;
            }
            else
            {
                heroe.manaActual += cantidad;
            }

            statHandler.ActualizarInfo();
        }
        else if (objetivo.CompareTag("Enemigo"))
        {
            EnemigoBase enemigo = objetivo.GetComponent <EnemigoStateMachine>().enemigo;
            if ((enemigo.manaActual + cantidad) >= enemigo.manaBase)
            {
                enemigo.manaActual = enemigo.manaBase;
            }
            else
            {
                enemigo.manaActual += cantidad;
            }
        }

        if (!SceneManager.GetActiveScene().name.Equals("Hoguera"))
        {
            SpawnDMG(cantidad, objetivo, "mana");
        }
    }
Пример #3
0
    public void ActualizarEstadisticas()
    {
        //Actualizar vida y mana
        HeroeBase heroe;

        for (int i = 0; i < sistemaTurnos.heroesCombate.Count; i++)
        {
            switch (sistemaTurnos.heroesCombate[i].GetComponent <HeroeStateMachine>().heroe.nombre)
            {
            case "Caballero":
                heroe = sistemaTurnos.heroesCombate[i].GetComponent <HeroeStateMachine>().heroe;

                caballero = heroe;

                estado1.transform.Find("Estadisticas").Find("Vida").GetComponent <TextMeshProUGUI>().text     = "<color=#f43224><b>hp <color=white>" + heroe.vidaActual + "/" + heroe.vidaBase + "</b>";
                estado1.transform.Find("Estadisticas").Find("Mana").GetComponent <TextMeshProUGUI>().text     = "<color=#00bdff><b>mp <color=white>" + heroe.manaActual + "/" + heroe.manaBase + "</b>";
                estado1.transform.Find("Button").Find("Fondo").Find("Icono").GetComponent <SVGImage>().sprite = heroe.spriteCompleto;
                estado1.transform.Find("Nivel").GetComponent <TextMeshProUGUI>().text = "Nvl. " + sistemaTurnos.heroesCombate[i].GetComponent <HeroeStateMachine>().heroe.nivel;
                estado1.transform.Find("BarraExperiencia").Find("BarraExp").GetComponent <Image>().fillAmount = sistemaTurnos.heroesCombate[i].GetComponent <HeroeStateMachine>().heroe.cantidadXP;
                break;

            case "Arquera":
                heroe = sistemaTurnos.heroesCombate[i].GetComponent <HeroeStateMachine>().heroe;

                arquera = heroe;

                estado2.transform.Find("Estadisticas").Find("Vida").GetComponent <TextMeshProUGUI>().text     = "<color=#f43224><b>hp <color=white>" + heroe.vidaActual + "/" + heroe.vidaBase + "</b>";
                estado2.transform.Find("Estadisticas").Find("Mana").GetComponent <TextMeshProUGUI>().text     = "<color=#00bdff><b>mp <color=white>" + heroe.manaActual + "/" + heroe.manaBase + "</b>";
                estado2.transform.Find("Button").Find("Fondo").Find("Icono").GetComponent <SVGImage>().sprite = heroe.spriteCompleto;
                estado2.transform.Find("Nivel").GetComponent <TextMeshProUGUI>().text = "Nvl. " + sistemaTurnos.heroesCombate[i].GetComponent <HeroeStateMachine>().heroe.nivel;
                estado2.transform.Find("BarraExperiencia").Find("BarraExp").GetComponent <Image>().fillAmount = sistemaTurnos.heroesCombate[i].GetComponent <HeroeStateMachine>().heroe.cantidadXP;
                break;

            case "Hechicero":
                heroe = sistemaTurnos.heroesCombate[i].GetComponent <HeroeStateMachine>().heroe;

                hechicero = heroe;

                estado3.transform.Find("Estadisticas").Find("Vida").GetComponent <TextMeshProUGUI>().text     = "<color=#f43224><b>hp <color=white>" + heroe.vidaActual + "/" + heroe.vidaBase + "</b>";
                estado3.transform.Find("Estadisticas").Find("Mana").GetComponent <TextMeshProUGUI>().text     = "<color=#00bdff><b>mp <color=white>" + heroe.manaActual + "/" + heroe.manaBase + "</b>";
                estado3.transform.Find("Button").Find("Fondo").Find("Icono").GetComponent <SVGImage>().sprite = heroe.spriteCompleto;
                estado3.transform.Find("Nivel").GetComponent <TextMeshProUGUI>().text = "Nvl. " + sistemaTurnos.heroesCombate[i].GetComponent <HeroeStateMachine>().heroe.nivel;
                estado3.transform.Find("BarraExperiencia").Find("BarraExp").GetComponent <Image>().fillAmount = sistemaTurnos.heroesCombate[i].GetComponent <HeroeStateMachine>().heroe.cantidadXP;
                break;

            case "Ingeniero":
                heroe = sistemaTurnos.heroesCombate[i].GetComponent <HeroeStateMachine>().heroe;

                ingeniero = heroe;

                estado4.transform.Find("Estadisticas").Find("Vida").GetComponent <TextMeshProUGUI>().text     = "<color=#f43224><b>hp <color=white>" + heroe.vidaActual + "/" + heroe.vidaBase + "</b>";
                estado4.transform.Find("Estadisticas").Find("Mana").GetComponent <TextMeshProUGUI>().text     = "<color=#00bdff><b>mp <color=white>" + heroe.manaActual + "/" + heroe.manaBase + "</b>";
                estado4.transform.Find("Button").Find("Fondo").Find("Icono").GetComponent <SVGImage>().sprite = heroe.spriteCompleto;
                estado4.transform.Find("Nivel").GetComponent <TextMeshProUGUI>().text = "Nvl. " + sistemaTurnos.heroesCombate[i].GetComponent <HeroeStateMachine>().heroe.nivel;
                estado4.transform.Find("BarraExperiencia").Find("BarraExp").GetComponent <Image>().fillAmount = sistemaTurnos.heroesCombate[i].GetComponent <HeroeStateMachine>().heroe.cantidadXP;
                break;
            }
        }
    }
    public void Rellenar(HeroeBase heroe)
    {
        GameObject personaje    = transform.Find("Personaje").gameObject;
        GameObject estadisticas = transform.Find("Estadisticas").gameObject;

        personaje.transform.Find("Icon").GetComponent <SVGImage>().sprite              = heroe.icon;
        personaje.transform.Find("Nombre").GetComponent <TextMeshProUGUI>().text       = heroe.nombre;
        personaje.transform.Find("NombreAtaque").GetComponent <TextMeshProUGUI>().text = heroe.ataque.nombreAtaque;
        personaje.transform.Find("IconoAtaque").GetComponent <Image>().sprite          = heroe.ataque.icon;
        personaje.transform.Find("DMG").GetComponent <TextMeshProUGUI>().text          = "" + heroe.ataque.damage;
        personaje.transform.Find("Nivel").GetComponent <TextMeshProUGUI>().text        = "Nvl. " + heroe.nivel;

        estadisticas.transform.Find("Vida").GetComponent <TextMeshProUGUI>().text         = "<color=#f43224><b>hp<color=white>   " + heroe.vidaActual + "/" + heroe.vidaBase + "</b>";
        estadisticas.transform.Find("Mana").GetComponent <TextMeshProUGUI>().text         = "<color=#59b2d9><b>mp<color=white>   " + heroe.manaActual + "/" + heroe.manaBase + "</b>";
        estadisticas.transform.Find("Fuerza").GetComponent <TextMeshProUGUI>().text       = "<color=#f27424><b>Fue<color=white>   " + heroe.fuerza + "</b>";
        estadisticas.transform.Find("Inteligencia").GetComponent <TextMeshProUGUI>().text = "<color=#59b2d9><b>Int<color=white>   " + heroe.inteligencia + "</b>";
        estadisticas.transform.Find("Velocidad").GetComponent <TextMeshProUGUI>().text    = "<color=#24f27d><b>Vel<color=white>   " + heroe.velocidad + "</b>";
        estadisticas.transform.Find("ResistenciaF").GetComponent <TextMeshProUGUI>().text = "<color=#f0d030><b>ResF.<color=white>   " + heroe.resistenciaF + "</b>";
        estadisticas.transform.Find("ResistenciaM").GetComponent <TextMeshProUGUI>().text = "<color=#ca72fc><b>ResM.<color=white>   " + heroe.resistenciaM + "</b>";
    }
    public void SaveHeroe(HeroeBase heroe)
    {
        EasyFileSave miarchivo = new EasyFileSave(heroe.nombre);

        miarchivo.Add("nombre", heroe.nombre);
        miarchivo.Add("HeroeVidaActual", heroe.vidaActual);
        miarchivo.Add("HeroeVidaBase", heroe.vidaBase);
        miarchivo.Add("HeroeManaActual", heroe.manaActual);
        miarchivo.Add("HeroeManaBase", heroe.manaBase);
        miarchivo.Add("HeroeFuerza", heroe.fuerza);
        miarchivo.Add("HeroeInteligencia", heroe.inteligencia);
        miarchivo.Add("HeroeResistenciaF", heroe.resistenciaF);
        miarchivo.Add("HeroeResistenciaM", heroe.resistenciaM);
        miarchivo.Add("HeroeVelocidad", heroe.velocidad);

        miarchivo.Add("HeroeXP", heroe.cantidadXP);
        miarchivo.Add("HeroeNivel", heroe.nivel);

        miarchivo.Save();

        Debug.Log(heroe.nombre + " Guardado");
    }