我已将变量设置为 SerializeField 以从检查器中选择值。然而,这个值并没有改变,它始终是一个“真”值。
我试过将其公开、更改名称、重新导入组件、重置组件……似乎没有任何效果,唯一起作用的是更改 Awake 方法中的值。
public class AudioController : MonoBehaviour
{
[SerializeField] private bool playSoundsAtColision; //WHY IS TRUE??? Is false in the inspector...
private void OnCollisionEnter2D(Collision2D collision)
{
if (this.playSoundsAtColision)
Debug.Log("playSoundsAtColision = " + this.playSoundsAtColision + " by: " + gameObject.name, gameObject);
}
}
在这里你有整个代码的图像:https ://i.imgur.com/rT5BdhT.png (你可以看到变量只被声明,然后检查和打印并且没有其他任何地方可以访问它)
尽管我在检查器上设置了什么,但这里会发生什么:https ://i.imgur.com/FLFugq8.png
提前谢谢你的帮助!
郎朗坤
慕沐林林
相关分类