Я хотел бы знать, почему в моем простом скрипте, который работает в Unity, пустая ссылка - PullRequest
0 голосов
/ 18 января 2020

Я создаю простой скрипт с общедоступным c целочисленным именем type и некоторыми коллизиями c. Затем я помещаю этот скрипт на каждый куб разных цветов. У каждого цветового куба есть собственное целое число (или тип), чтобы проверить, являются ли они одним цветом, а если нет, то я уничтожаю их обоих. Если они имеют одинаковый тип, то ничего не происходит. Сценарий работает, но выдает мне исключение NullReferenceException: Ссылка на объект не установлена ​​на экземпляр ошибки объекта. Я очень хотел бы знать, почему улучшить мое кодирование. Еще раз эта ошибка не останавливает игру и не ломает, она работает. Я бросил синий куб на красный, и они оба исчезли. Я бросил красный на красный, и они складываются. Это поведение, которое я желаю. Я просто хочу знать, что вызывает эту ошибку, чтобы улучшить мое кодирование. Заранее спасибо !!!

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ObjScript : MonoBehaviour
{
    public int type;

    private void OnCollisionEnter(Collision collision)
    {
        int xyz = collision.gameObject.GetComponent<ObjScript>().type; //line that throws error
        if (xyz != type) //comparing the two types
        {
            Destroy(collision.gameObject);
            Destroy(gameObject);
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...