Esempio n. 1
0
    // сначала урон убирает броню, потом жизни
    public void TakeDamage(int _damage)
    {
        if (armor > 0)
        {
            if (_damage > armor)
            {
                armor -= _damage;
                hp    -= (_damage - armor);
            }
            else
            {
                armor -= _damage;
            }
        }
        else
        {
            armor = 0;
            hp   -= _damage;
        }

        // шкалы брони и жизни
        armorBar.fillAmount = (float)armor / (float)armorStart;
        hpBar.fillAmount    = (float)hp / (float)hpStart;


        if (hp <= 0)
        {
            // доход с убийства
            playSessionManager.ChangeMoney(+moneyForKill);
            // статистика
            playSessionManager.statKills++;
            Destroy(gameObject);
        }
    }
Esempio n. 2
0
    public void DragFinish()
    {
        if (isDraging)
        {
            isDraging = false;
            dragableImage.transform.position = transform.position;
            Vector3 cursorePlace = Camera.main.ScreenToWorldPoint(Input.mousePosition);
            cursorePlace.z = -2f;
            Tower newUnit = Instantiate(tower, cursorePlace, Quaternion.identity);

            // вычесть деньги
            playSessionManager.ChangeMoney(-tower.priceBuy);
            // статистика
            playSessionManager.statBuild++;
        }
    }
Esempio n. 3
0
 public void Sell()
 {
     playSessionManager.ChangeMoney(+priceSell);
     Destroy(gameObject);
 }