Пример #1
0
    private bool performAttack(GameObject gameObject)
    {
        Stats enemyStats = gameObject.GetComponent <Stats>();

        animator.Play(attackAnimation);
        int damage = Utils.calculateDamageDealt(enemyStats, heroStats.getAttack(), heroStats.getMagic());

        return(gameObject.GetComponent <HealthBar>().dealDamage(damage));
    }
Пример #2
0
 private void healOrDamage()
 {
     if (currentTarget.tag == "Hero")
     {
         animator.Play(healAnimationName);
         currentTarget.GetComponent <HealthBar>().heal(heroStats.getMagic(), overheal);
         heroStats.addExperience(1);
     }
     else
     {
         fireMissile();
     }
 }
Пример #3
0
 public void updateUI()
 {
     currentHp.text          = "" + selectedHeroHealthBar.getCurrentHealth() + " / " + selectedHeroHealthBar.getMaxHealth();
     currentAttackSpeed.text = "" + Utils.calculateAttackRate(selectedHeroStats.getUnitType(), selectedHeroStats.getAgility());
     unitType.text           = "" + Enum.GetName(typeof(Utils.UnitType), selectedHeroStats.getUnitType());
     currentExperience.text  = "" + selectedHeroStats.getExperience();
     Level.text            = "" + selectedHeroStats.getLevel();
     nextLevelXP.text      = "" + selectedHeroStats.getNextLevelExperience();
     Health.text           = "" + selectedHeroStats.getHealth();
     Attack.text           = "" + selectedHeroStats.getAttack();
     Magic.text            = "" + selectedHeroStats.getMagic();
     Defense.text          = "" + selectedHeroStats.getDefense();
     Resistance.text       = "" + selectedHeroStats.getResistance();
     Agility.text          = "" + selectedHeroStats.getAgility();
     Block.text            = "" + selectedHeroStats.getBlock();
     refundButtonText.text = "REFUND\n +" + (int)(selectedHeroStats.getCost() * .66f) + " REQ";
     updateAbilityButtonValidity();
 }
Пример #4
0
 private void attackTarget()
 {
     if (currentTarget != null)
     {
         playAnimation();
         int damage = Utils.calculateDamageDealt(heroStats, heroStats.getAttack(), heroStats.getMagic());
         if (currentTarget.GetComponent <HealthBar>().dealDamage(damage))
         {
             heroStats.addExperience(currentTarget.GetComponent <Stats>().getExperience());
         }
     }
 }
Пример #5
0
    private void fireMissile()
    {
        if (currentTarget != null)
        {
            animator.Play(attackAnimationName);
            Stats enemyStats = currentTarget.transform.GetComponent <Stats>();
            int   damage     = Utils.calculateDamageDealt(enemyStats, heroStats.getAttack(), heroStats.getMagic());

            Transform missile = Instantiate(missilePrefab, transform.position, transform.rotation);
            missile.GetComponent <Missile>().setTarget(currentTarget.transform);
            missile.GetComponent <Missile>().setDamage(damage);
            missile.GetComponent <Missile>().setSourceStats(heroStats);
        }
    }