Varwin SDK использует.admdef-файлы при создании и сборке объектов. Поэтому, любые дополнительные скрипты на объекте (помимо добавленных автоматически) при билде объекта будут проигнорированы
Данная особенность инструмента вызывает известные проблемы, связанные с переиспользованием кода. Для того чтобы использовать одни и те же классы в разных объектах, необходимо создать библиотеку, содержащую эти классы
После изменения библиотеки необходимо перебилдить все объекты, использующие данную библиотеку
Данный урок пошагово рассказывает о процессе создания переиспользуемых компонентов
Создать директорию, в которой будут находиться классы библиотеки
Внутри директории создать .asmdef-файл. Его имя должно совпадать с именем namespace, в котором находятся необходимые классы
В разделе Assembly Definition References добавить ссылку на библиотеку ядра - VarwinCore
Добавить в директорию необходимые классы. Они все должны находиться в одном namespace с уникальным именем, обозначающим библиотеку
using Varwin;
using UnityEngine;
using Varwin.Public;
namespace Switch.v1;
{
[RequireComponent(typeof(Rigidbody))]
[RequireComponent(typeof(BoxCollider))]
[RequireComponent(typeof(Animator))]
public class SwitchBehaviour : MonoBehaviour, IUseStartAware
{
public bool ChangeStateOnAnimation = false;
private Animator _animator;
private bool _state = false;
}
}
C#
В .asmdef-файле объекта, который должен ссылаться на созданную библиотеку, в разделе Assembly Definition References необходимо добавить ссылку на эту библиотеку
Теперь все классы из библиотеки можно использовать в объекте, который ссылается на нее. Таких объектов может быть сколько угодно, и во всех можно будет использовать общий код библиотеки