31 lines
1.1 KiB
C#
31 lines
1.1 KiB
C#
using System.Collections.Generic;
|
|
using TMPro;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
public class AbilityUIObject : MonoBehaviour
|
|
{
|
|
[Header("Ability Identification")]
|
|
[SerializeField] private Image abilityIcon;
|
|
[SerializeField] private TextMeshProUGUI abilityName;
|
|
[Header("Ability Stats")]
|
|
[SerializeField] private TextMeshProUGUI damage;
|
|
[SerializeField] private TextMeshProUGUI fireRate;
|
|
[SerializeField] private TextMeshProUGUI piercing;
|
|
[SerializeField] private TextMeshProUGUI projectileCount;
|
|
[Header("Upgrades")]
|
|
[SerializeField] private List<Transform> upgradeBoxes = new();
|
|
|
|
public void UpdateUI(PlayerAbility ability)
|
|
{
|
|
abilityIcon.sprite = ability.abilityIcon;
|
|
abilityName.text = ability.abilityName;
|
|
damage.text = $"Damage: {ability.power}";
|
|
fireRate.text = $"Fire rate: {ability.cooldown}s";
|
|
if (ability.TryGetComponent(out FireBullet isBullet))
|
|
{
|
|
piercing.text = $"Piercing: {isBullet.pierceAmount}";
|
|
projectileCount.text = $"Projectiles: {isBullet.projectileCount}";
|
|
}
|
|
}
|
|
}
|