У меня есть игра, подобная игре с мячом, и в моей игре у меня есть игровой объект, который является игровым менеджером, в том, что gameManager я создаю экземпляр мяча, что я хочу сделать , когда мой мяч остывает с силой, добавьте материал в математический массив, который находится в другом скрипте, когда я пытаюсь получить доступ к этому сценарию, он говорит , что объект не является экземпляром, я не знаю, как работать над этим: /.Не могу получить скрипт prefab: NullReference Exception
Вот что я сделал
public class PowerHit : MonoBehaviour {
MoveBall moveBall;
Renderer rend;
private Material yourMaterial;
// Use this for initialization
void Start() {
moveBall = GameObject.FindWithTag ("Player").GetComponent<MoveBall>();
rend = moveBall.GetComponent<Renderer>();
yourMaterial = (Material)Resources.Load("Tennis",typeof(Material));
}
void OnCollisionEnter(Collision other)
{
Debug.Log (moveBall);
if (other.gameObject.tag == "Player") {
moveBall.mats [1] = yourMaterial;
}
}
}
сценарий, который я хочу, чтобы Acces является MoveBall скрипт, который atteched на мой мяч сборного, мой мяч PREFA имеет тег игрока.
Так что ... в какой строке ошибка? 'moveBall.mats [1] = yourMaterial;'? – Serlite
Вы уверены, что 'moveBall' не является нулевым? Что такое ** точное сообщение об ошибке? – Hellium
NullReferenceException: ссылка на объект не установлена в экземпляр объекта PowerHit.Start() (at Assets/PowerHit.cs: 12) –