Как добавить на кнопку ведения огня в интерфейсе игры индикатор перезарядки с радиальным заполнением?

вот моя кнопка подстроенная под мобильные системы.Как на неё добавить индикатор?И раз вся логика в Player значит и строчки кода нужно добавлять сюда же. Кнопка стрельбы

Вот логика экранного контроллера и стрельбы:

public void InitUIController(UICharacterController uiController)
   {
    controller=uiController;
    controller.Fire.onClick.AddListener(CheckShoot);
   }

private void CheckShoot()
    {
        if (!canShoot)
        {
            animator.SetTrigger("StartShoot");
        }
    }

  public void InitArrow()
    {
        currentarrow = GetArrowFromPool();
        currentarrow.SetImpulse(Vector2.right, 0, 0, this);
    }
private void Shoot()
    {
        currentarrow.SetImpulse
                (Vector2.right, spriteRenderer.flipX ?
                -force * shootForce : force * shootForce, (int)extraDamage, this);

        StartCoroutine(Reload());
    }  

  private IEnumerator Reload()
{
  canShoot = true;
  yield return new WaitForSeconds(cooldown);
  canShoot = false;
}

Думаю логику стрельбы трогать не нужно,а нужно именно логику кнопки написать.Помогите пожалуйста.


Ответы (1 шт):

Автор решения: Арман

Ставьте на заднем плане картинку которая должна заполняться. В компоненте Image параметр Image Type поставьте на Filled. Теперь осталось менять процент заливки через скрипт таким образом:

[SerializedField] private Image _ReloadCoefficent;

private void Update()
{
    _ReloadCoefficent.fillAmount = //тут процент перезарядки
}
→ Ссылка