// сначала урон убирает броню, потом жизни 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); } }
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++; } }
public void Sell() { playSessionManager.ChangeMoney(+priceSell); Destroy(gameObject); }