Код выдает NullReferenceException
Код выдает NullReferenceException и я не могу понять почему, ругается на
HealthBarController.RefreshHealthBar(currentHealth, maxHealth);
PlayerController.cs
[Header ("Health")]
[SerializeField] public HealthBarController healthBarController;
[SerializeField] private float maxHealth;
[SerializeField] private float currentHealth;
public void HealingPotionUsing()
{
if (healingPotionAmount != 0)
{
if (currentHealth == maxHealth)
{
currentHealth += 0;
}
else
{
currentHealth += healingAmount;
HealthBarController.RefreshHealthBar(currentHealth, maxHealth); //налл референс эксепт???
healingPotionAmount -= 1;
PlayerUIController.RefreshHealingPotionText(healingPotionAmount);
}
}
}
HealthBarController.cs
using System.Collections;
using UnityEngine;
using UnityEngine.UI;
public class HealthBarController : MonoBehaviour
{
[SerializeField] private float animTime;
[SerializeField] private Image healthBar;
private float elapsedTime;
public void RefreshHealthBar(float currentHealth, float maxHealth)
{
healthBar.fillAmount = currentHealth / maxHealth;
StartCoroutine(HealthbarAnim(currentHealth, currentHealth / maxHealth));
}
private IEnumerator HealthbarAnim(float startPos, float endPos)
{
while(elapsedTime < animTime)
{
healthBar.fillAmount = Mathf.Lerp(startPos, endPos, (elapsedTime / animTime));
elapsedTime += Time.deltaTime;
yield return null;
}
}
}