Хорошо, ребята и девочки. У меня опять проблема с кодом. В принципе, как только я начинаю и он пытается создать пакет здоровья он бросает ошибку, что:Почему я получаю исключение NullReferenceException при попытке создать HealthPack в Unity C#?
NullReferenceException: Ссылка на объект не указывает на экземпляр объекта HealthSpawnerScript.Update() (на активы/Scripts/HealthSpawnerScript.cs: 31)
Ниже приведен код, в котором я запущен. Игровой объект PlayerController содержит метод, используемый для возврата в состояние здоровья игрока с именем PlayerHealth(). В бодрствовании я установил playerController для поиска сценария и метода, которым я пользуюсь. Затем в обновлении я пытаюсь вызвать метод и назначить его переменной для использования в скрипте позже. Я знаю, что это должно быть просто, но у меня есть мозговые пердуны.
public PlayerController playerController;
private int healthHolder;
void OnAwake()
{
playerController = GameObject.Find ("PlayerHealth").GetComponent<PlayerController>();
}
// Use this for initialization
void Start()
{
//set healthExist to false to indicate no health packs exist on game start
healthExist = false;
//playerController = GameObject.Find ("PlayerHealth").GetComponent<PlayerController>();
}
// Update is called once per frame
void Update()
{
healthHolder = playerController.PlayerHealth();
Не совсем то, что мне было нужно, но я это понял, я вызывал метод PlayerHealth, прикрепленный к PlayerController, вместо того, чтобы определять фактический объект, который будет PlayerShip, на котором был скрипт PlayerController. – Phillipv20
Хорошо. Как насчет функции «OnAwake»? Это было правильно? – Programmer