Ошибка при попытке билда 2D проекта в Unity
Создал небольшой проект, однако при попытке билда выдаётся куча ошибок, связанных с пространствами имён в C# скриптах.

Нашёл совет - в начале и в конце скрипта написать #if UNITY_EDITOR и #endif соответственно.
Пример скрипта:
#if UNITY_EDITOR
using UnityEngine;
[CreateAssetMenu(fileName = "New Weapon", menuName = "Weapon")]
public class CreateWeaponData : ScriptableObject
{
public float Damage;
public float AttackDelay;
public int ComboCount;
public float ResetComboTime;
public float StaminaCost;
}
#endif
Совсем не разбираюсь в этой теме, однако, мне всё равно кажется, что это не решение проблемы.
После того, как я это сделал со всеми скриптами, билд прошёл успешно, но появилась другая проблема - в запущенном название_игры.exe файле ни один скрипт не работал, тоесть, ни передвижение, ни какие либо другие скрипты.
Я новичок в Unity, да и в геймдеве в целом, пожалуйста, помогите с решением этой проблемы.
Ответы (1 шт):
Проблема в том, что ты определяешь MonoBehaviour, который используется только в редакторе. Это означает, что компонент сериализуется в GameObject, но скрипт не существует в сборке (поскольку ты полностью вложил его в UNITY_EDITOR). Таким образом, сборка проигрывателя сталкивается с несуществующим компонентом, который он пытается загрузить. Вот почему ты получаешь ошибку.
Попробуй билдить с установленной галочкой Development Build, она находится в File -> Build Settings, а также проверь находятся ли твои скрипты в директории с проектом.