Unity3d 在unity C中从不同脚本访问函数#

Unity3d 在unity C中从不同脚本访问函数#,unity3d,Unity3d,我对unity还比较陌生,我正在尝试在游戏中制作收藏品,但我需要记录收集了多少物品,但仍然让收集的物品消失。到目前为止,我有这个。是的,收藏品是发胶:p Collection.cs using UnityEngine; using System.Collections; public class Collection : MonoBehaviour { public control controlSrc; void OnTriggerEnter () { controlSrc.A

我对unity还比较陌生,我正在尝试在游戏中制作收藏品,但我需要记录收集了多少物品,但仍然让收集的物品消失。到目前为止,我有这个。是的,收藏品是发胶:p

Collection.cs

using UnityEngine;
using System.Collections;

public class Collection : MonoBehaviour {

public control controlSrc;


void OnTriggerEnter () {
    controlSrc.AddScore();
    killHairSpray();
}


void killHairSpray () {
    Destroy(gameObject);
}

}
using UnityEngine;
using System.Collections;

public class control : MonoBehaviour {

public int hcTot = 0;

public void AddScore () {
hcTot = hcTot + 1;
Debug.Log("Working");
}
}
control.cs

using UnityEngine;
using System.Collections;

public class Collection : MonoBehaviour {

public control controlSrc;


void OnTriggerEnter () {
    controlSrc.AddScore();
    killHairSpray();
}


void killHairSpray () {
    Destroy(gameObject);
}

}
using UnityEngine;
using System.Collections;

public class control : MonoBehaviour {

public int hcTot = 0;

public void AddScore () {
hcTot = hcTot + 1;
Debug.Log("Working");
}
}
我不知道为什么它不工作,但控制台说

NullReferenceException:对象引用未设置为对象的实例 Collection.ontriggenter()(位于Assets/Collection.cs:10)


谢谢:)这让我快发疯了

您很可能没有将任何内容连接到controlSrc变量,因此它是空的。因此出现了空引用异常

在Unity编辑器中选择带有Collection.cs脚本的游戏对象,然后在Inspector中通过指定包含Control.cs脚本的游戏对象来设置controlSrc(很可能被列为“Control Src”)