Задать вопрос
@beerg_wtf

Присутствует детский косяк со скриптом, поможете?

Здравствуйте, присутствует косяк со скриптом, но не могу понять, в чём дело (Так как новичок в этом деле).
Прошу вашей помощи, желательно с объяснением ошибки.

Ошибка:
MissingReferenceException: The object of type 'Object' has been destroyed but you are still trying to access it.
Your script should either check if it is null or you should not destroy the object.
UnityEditor.Editor.IsEnabled () (at C:/buildslave/unity/build/Editor/Mono/Inspector/Editor.cs:589)
UnityEditor.InspectorWindow.DrawEditor (UnityEditor.Editor editor, Int32 editorIndex, Boolean rebuildOptimizedGUIBlock, System.Boolean& showImportedObjectBarNext, UnityEngine.Rect& importedObjectBarRect) (at C:/buildslave/unity/build/Editor/Mono/Inspector/InspectorWindow.cs:1151)
UnityEditor.InspectorWindow.DrawEditors (UnityEditor.Editor[] editors) (at C:/buildslave/unity/build/Editor/Mono/Inspector/InspectorWindow.cs:1028)
UnityEditor.InspectorWindow.OnGUI () (at C:/buildslave/unity/build/Editor/Mono/Inspector/InspectorWindow.cs:352)
System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/mono/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)

А вот сам скрипт:
using UnityEngine;
using System.Collections.Generic;

public class PlayerScript : MonoBehaviour {

	//Изменение скорости перемещения героя
	public float playerSpeed = 2.0f;

	//Текущая скорость перемещения
	private float currentSpeed = 0.0f;

	//Создание переменных для кнопок
	public List<KeyCode> upButton;
	public List<KeyCode> downButton;
	public List<KeyCode> leftButton;
	public List<KeyCode> rightButton;

	//Сохранение последнего перемещения
	private Vector3 lastMovement = Vector3();
	
	// Start/Update - Названия функций
	void Update () {

	}
}

P.S. ( За тоже самое скопированное, прошу прощения)
  • Вопрос задан
  • 166 просмотров
Подписаться 1 Оценить 2 комментария
Помогут разобраться в теме Все курсы
  • Skillbox
    Профессия Инженер
по тестированию
    10 месяцев
    Далее
  • Нетология
    Разработчик игр на Unity
    13 месяцев
    Далее
  • XYZ School
    Разработка игр на Unity
    5 месяцев
    Далее
Решения вопроса 1
BasmanovDaniil
@BasmanovDaniil
Геймдизайнер-телепат
Вместо
private Vector3 lastMovement = Vector3();
должно быть
private Vector3 lastMovement = new Vector3();
Использовать пустой конструктор для lastMovement не обязательно, Vector3 это структура и дефолтное значение при инициализации у неё будет тем же самым нулём.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы