script 1
[SerializeField] public int staminaLeft;
[SerializeField] public int maxStamina;
void Start()
{
maxStamina = 100;
staminaLeft = maxStamina;
}
第二个脚本
public PlayerStamina playerStamina;
private void Update()
{
if (playerStamina.staminaLeft <= 0)
{
}
else if (playerStamina.maxStamina > 0 && !fillImage.enabled)
{
}
}
它说对象引用没有设置为该对象的实例,但我很确定playerStamina。staminalleft的值不为空
表示您的对象变量playerStamina
是null
。
我没有在你的代码中看到你检查了这个对象不为空,所以它可能是这个对象为空。
你可以用new
关键字初始化它,你也可以在你的方法中验证playerStamina
不是空的,以避免未处理的异常。