Exemplo n.º 1
0
    private void SetBuffNet(string playerName, int amount, float duracio)
    {
        Unidad jugador = GameObject.Find(playerName).GetComponent <Unidad>();

        if (jugador != null)
        {
            int statAnterior1 = jugador.GetArmour();
            int statAnterior2 = jugador.GetMagicArmour();
            jugador.SetArmour(jugador.GetArmour() + amount);
            jugador.SetMagicArmour(jugador.GetMagicArmour() + amount);
            StartCoroutine(EliminarBuff(duracio, playerName, statAnterior1, statAnterior2));
        }
    }
Exemplo n.º 2
0
    // Els buffs dels monstres duraran 60 segons
    private IEnumerator EliminarBuff(float time, string monstre, string playerName)
    {
        Unidad jugadorUnidad = GameObject.Find(playerName).GetComponent <Unidad>();

        if (jugadorUnidad != null)
        {
            yield return(new WaitForSeconds(60));

            switch (monstre)
            {
            case "Blue1":
                jugadorUnidad.SetManaRegen(jugadorUnidad.GetManaRegen() - 10);
                jugadorUnidad.SetMaxMana(jugadorUnidad.GetMaxMana() - 100);
                //netManager.b_Blue.gameObject.SetActive(false);
                break;

            case "Blue2":
                jugadorUnidad.SetManaRegen(jugadorUnidad.GetManaRegen() - 10);
                jugadorUnidad.SetMaxMana(jugadorUnidad.GetMaxMana() - 100);
                //netManager.b_Blue.gameObject.SetActive(false);
                break;

            case "Red1":
                jugadorUnidad.SetAtackDamage(jugadorUnidad.GetAtackDamage() - 70);
                jugadorUnidad.SetHealthRegen(jugadorUnidad.GetHealthRegen() - 10);
                //netManager.b_Red.gameObject.SetActive(false);
                break;

            case "Red2":
                jugadorUnidad.SetAtackDamage(jugadorUnidad.GetAtackDamage() - 70);
                jugadorUnidad.SetHealthRegen(jugadorUnidad.GetHealthRegen() - 10);
                //netManager.b_Red.gameObject.SetActive(false);
                break;

            case "Dragon":
                jugadorUnidad.SetAtackDamage(jugadorUnidad.GetAtackDamage() - 100);
                jugadorUnidad.SetAbilityPower(jugadorUnidad.GetAbilityPower() - 100);
                jugadorUnidad.SetAtackSpeed(jugadorUnidad.GetAtackSpeed() - 10);
                jugadorUnidad.SetMovementSpeed(jugadorUnidad.GetMovementSpeed() - 5);
                //netManager.b_Dragon.gameObject.SetActive(false);
                break;

            case "Baron":
                jugadorUnidad.SetArmour(jugadorUnidad.GetArmour() - 100);
                jugadorUnidad.SetMagicArmour(jugadorUnidad.GetMagicArmour() - 100);
                jugadorUnidad.SetManaRegen(jugadorUnidad.GetManaRegen() - 5);
                jugadorUnidad.SetHealthRegen(jugadorUnidad.GetHealthRegen() - 5);
                //netManager.b_Baron.gameObject.SetActive(true);
                //netManager.b_Baron.gameObject.SetActive(false);
                break;
            }
        }
    }
Exemplo n.º 3
0
 public override void Comprar(Unidad champion)
 {
     champion.SetArmour(champion.GetArmour() + this.armour);
     champion.SetGold(champion.GetGold() - this.price);
 }
Exemplo n.º 4
0
    public void SetBuffNet(string monstre, string nomJugador)
    {
        GameObject gameObj       = GameObject.Find(nomJugador);
        Unidad     jugadorUnidad = gameObj.GetComponent <Unidad>();

        if (jugadorUnidad != null)
        {
            switch (monstre)
            {
            /*Si un campió mata a aquesta unitat guanyarà un buff que
             * aportarà una bonificació a la regeneració del manà i la reducció
             * de refredament. Es troba en el camp 1. Dóna 150 d’or i 150
             * d’experiència.*/
            case "Blue1":
                jugadorUnidad.SetManaRegen(jugadorUnidad.GetManaRegen() + 10);
                jugadorUnidad.SetMaxMana(jugadorUnidad.GetMaxMana() + 100);
                //netManager.b_Blue.gameObject.SetActive(true);
                StartCoroutine(EliminarBuff(2f, monstre, nomJugador));
                break;

            case "Blue2":
                jugadorUnidad.SetManaRegen(jugadorUnidad.GetManaRegen() + 10);
                jugadorUnidad.SetMaxMana(jugadorUnidad.GetMaxMana() + 100);
                //netManager.b_Blue.gameObject.SetActive(true);
                StartCoroutine(EliminarBuff(2f, monstre, nomJugador));
                break;

            /*Si un campió mata a aquesta unitat guanyarà un buff que
             * aportarà una bonificació d’atac i regeneració de la vida. Es troba
             * en el camp 2. Dóna 150 d’or i 150 d’experiència.*/
            case "Red1":
                jugadorUnidad.SetAtackDamage(jugadorUnidad.GetAtackDamage() + 70);
                jugadorUnidad.SetHealthRegen(jugadorUnidad.GetHealthRegen() + 10);
                //netManager.b_Red.gameObject.SetActive(true);
                StartCoroutine(EliminarBuff(2f, monstre, nomJugador));
                break;

            case "Red2":
                jugadorUnidad.SetAtackDamage(jugadorUnidad.GetAtackDamage() + 70);
                jugadorUnidad.SetHealthRegen(jugadorUnidad.GetHealthRegen() + 10);
                //netManager.b_Red.gameObject.SetActive(true);
                StartCoroutine(EliminarBuff(2f, monstre, nomJugador));
                break;

            /*Quan un campió acabi amb aquesta unitat tot el seu equip rebrà
             * una millora de totes les seves estadístiques. Es troba en el camp
             * gran 2. Dóna 400 d’or a tot l’equip i 500 d’experiència.*/
            case "Dragon":
                jugadorUnidad.SetAtackDamage(jugadorUnidad.GetAtackDamage() + 100);
                jugadorUnidad.SetAbilityPower(jugadorUnidad.GetAbilityPower() + 100);
                jugadorUnidad.SetAtackSpeed(jugadorUnidad.GetAtackSpeed() + 10);
                jugadorUnidad.SetMovementSpeed(jugadorUnidad.GetMovementSpeed() + 5);
                //netManager.b_Dragon.gameObject.SetActive(true);
                StartCoroutine(EliminarBuff(2f, monstre, nomJugador));
                break;

            /*Quan un campió acabi amb aquesta unitat tots els súbdits del
             * seu equip rebran millores de totes les seves estadístiques. Es
             * troba en el camp gran 1.Dóna 600 d’or a tot l’equip i 500
             * d’experiència.*/

            case "Baron":
                jugadorUnidad.SetArmour(jugadorUnidad.GetArmour() + 100);
                jugadorUnidad.SetMagicArmour(jugadorUnidad.GetMagicArmour() + 100);
                jugadorUnidad.SetManaRegen(jugadorUnidad.GetManaRegen() + 5);
                jugadorUnidad.SetHealthRegen(jugadorUnidad.GetHealthRegen() + 5);
                //netManager.b_Baron.gameObject.SetActive(true);
                StartCoroutine(EliminarBuff(2f, monstre, nomJugador));
                break;
            }
        }
    }
Exemplo n.º 5
0
    // Use this for initialization
    void Start()
    {
        this.pv         = GetComponent <PhotonView>();
        this.netManager = GameObject.FindGameObjectWithTag("NetManager").GetComponent <NetManager>();

        torresTagBlau    = GameObject.FindGameObjectsWithTag("StructureBlau");
        torresTagVermell = GameObject.FindGameObjectsWithTag("StructureVermell");
        pdcTorresBlau    = GameObject.FindGameObjectsWithTag("PDCTorreBlau");
        pdcTorresVermell = GameObject.FindGameObjectsWithTag("PDCTorreVermell");

        torresBlau = new bool[6] {
            true, true, true, true, true, true
        };
        torresVermell = new bool[6] {
            true, true, true, true, true, true
        };

        dragon = GameObject.FindGameObjectWithTag("Dragon");
        baron  = GameObject.FindGameObjectWithTag("Baron");
        blue1  = GameObject.FindGameObjectWithTag("Blue1");
        blue2  = GameObject.FindGameObjectWithTag("Blue2");
        red1   = GameObject.FindGameObjectWithTag("Red1");
        red2   = GameObject.FindGameObjectWithTag("Red2");

        if (pv.isMine && unidad != null)
        {
            this.initialPos      = this.gameObject.transform.position;
            this.initialRotation = this.gameObject.transform.rotation;

            // Si és campió llavors guardem l'element de text on es mostra l'or
            if (this.isChampion)
            {
                this.netManager.playerHUD.imgChamp.sprite = unidad.GetImage();
                this.goldText = GameObject.FindGameObjectWithTag("Gold").GetComponent <Text>();
            }

            // Estadístiques unitat
            this.unidad.Initialize();
            this.abilityPower      = unidad.GetAbilityPower();
            this.armour            = unidad.GetArmour();
            this.magicArmour       = unidad.GetMagicArmour();
            this.atackDamage       = unidad.GetAtackDamage();
            this.atackSpeed        = unidad.GetAtackSpeed();
            this.experience        = unidad.GetExperience();
            this.health            = unidad.GetHealth();
            this.healthRegen       = unidad.GetHealthRegen();
            this.mana              = unidad.GetMana();
            this.manaRegen         = unidad.GetManaRegen();
            this.maxExperience     = unidad.GetMaxExperience();
            this.maxHealth         = unidad.GetMaxHealth();
            this.maxMana           = unidad.GetMaxMana();
            this.movementSpeed     = unidad.GetMovementSpeed();
            this.time              = 0;
            this.playerInTerritory = false;

            // Barres de vida i manà
            if (this.playerHealthBar != null)
            {
                this.playerHealthBar.maxValue = this.maxHealth; // Vida
                this.playerHealthBar.value    = this.health;    // Vida
            }

            if (this.isChampion)
            {
                this.playerManaBar.value    = this.maxMana; // Manà
                this.playerManaBar.maxValue = this.maxMana; // Manà
            }
        }
    }
Exemplo n.º 6
0
    public void LevelGold(string mort, string jugador)
    {
        GameObject goJugador = GameObject.Find(jugador);
        Unidad     unJugador = goJugador.GetComponent <Unidad>();

        GameObject[] playersList = GameObject.FindGameObjectsWithTag("Player");

        switch (mort)
        {
        case "Champion":
            unJugador.SetGold(unJugador.GetGold() + 200);
            unJugador.SetExperience(unJugador.GetExperience() + 300);
            break;

        case "Torre":
            foreach (GameObject player in playersList)
            {
                CombatSystem cmbtPlayer = player.GetComponent <CombatSystem>();
                Unidad       uPlayer    = player.GetComponent <Unidad>();

                if (cmbtPlayer.GetTeam() == unJugador.GetCombatSystem().GetTeam())
                {
                    uPlayer.SetGold(unJugador.GetGold() + 300);
                    uPlayer.SetExperience(unJugador.GetExperience() + 500);
                }
            }
            break;

        case "Blue":
            unJugador.SetGold(unJugador.GetGold() + 150);
            unJugador.SetExperience(unJugador.GetExperience() + 150);
            break;

        case "Red":
            unJugador.SetGold(unJugador.GetGold() + 150);
            unJugador.SetExperience(unJugador.GetExperience() + 150);
            break;

        case "Dragon":
            foreach (GameObject player in playersList)
            {
                CombatSystem cmbtPlayer = player.GetComponent <CombatSystem>();
                Unidad       uPlayer    = player.GetComponent <Unidad>();

                if (cmbtPlayer.GetTeam() == unJugador.GetCombatSystem().GetTeam())
                {
                    unJugador.SetGold(unJugador.GetGold() + 400);
                    unJugador.SetExperience(unJugador.GetExperience() + 500);
                }
            }
            break;

        case "Baron":
            foreach (GameObject player in playersList)
            {
                CombatSystem cmbtPlayer = player.GetComponent <CombatSystem>();
                Unidad       uPlayer    = player.GetComponent <Unidad>();

                if (cmbtPlayer.GetTeam() == unJugador.GetCombatSystem().GetTeam())
                {
                    unJugador.SetGold(unJugador.GetGold() + 600);
                    unJugador.SetExperience(unJugador.GetExperience() + 500);
                }
            }
            break;
        }
        if (unJugador.GetExperience() >= 500)
        {
            unJugador.SetLevel(unJugador.GetLevel() + 1);
            unJugador.SetExperience(unJugador.GetExperience() - 500);

            unJugador.SetMaxHealth(unJugador.GetMaxHealth() + 50);
            unJugador.SetMaxMana(unJugador.GetMaxMana() + 50);
            unJugador.SetHealthRegen(unJugador.GetHealthRegen() + 2);
            unJugador.SetManaRegen(unJugador.GetManaRegen() + 2);
            unJugador.SetAtackDamage(unJugador.GetAtackDamage() + 7);
            unJugador.SetAtackSpeed(unJugador.GetAtackSpeed() + 7);
            unJugador.SetAbilityPower(unJugador.GetAbilityPower() + 7);
            unJugador.SetArmour(unJugador.GetArmour() + 1);
            unJugador.SetMagicArmour(unJugador.GetMagicArmour() + 1);

            //this.netManager.experiencia.value = unJugador.GetExperience();
            //this.netManager.nivell.text = unJugador.GetLevel().ToString();
        }
    }