[System.Serializable]
при генерации c# из proto.Invoke
, InvokeRepeating
, IsInvoking
, CancelInvoke
DelayFrames
new()
Улучшение производительности режима разработки
Вы можете включить это в свои сценарии горячего обновления или основной проект Unity.
Вы можете импортировать их в Unity.
public enum MatchMode
{
AutoMatch = 1,
Animation = 2,
Material = 3,
Prefab = 4,
Scene = 5,
ScriptableObject = 6,
TextAsset = 7,
UI = 8,
Other = 9
}
var txt = JResource.LoadRes<TextAsset>("Text.txt");
Log.Print("Get Resource with Sync method: " + txt.text);
//Отменить JAction
JAction j8 = new JAction();
j8.RepeatWhen(() => Log.Print("[j8] I am repeating!!!"), () => true, 1, timeout)
.ExecuteAsyncParallel();
//Можно добавить обратный вызов отмены
j8.OnCancel(() => Log.Print("[j8] has been cancelled!"));
//Сбросить JAction
j8.Reset();
Исправлена ошибка в JAction.ExecuteAsyncParallel.
//Выполнить асинхронно
JAction j6 = new JAction();
_ = j6.Do(() => Log.Print("[j6] This is an async JAction"))
.ExecuteAsync();
//Выполнить параллельно
JAction j7 = new JAction();
j7.Do(()=>Log.Print("[j7] This is an async JAction but runs parallel, callback will be called after it has done"))
.ExecuteAsyncParallel(()=>Log.Print("[j7] Done"));
//Отменить JAction
JAction j8 = new JAction();
_ = j8.RepeatWhen(() => Log.Print("[j8] I am repeating!!!"), () => true, repeatDuration, timeout)
.ExecuteAsync();
JAction j9 = new JAction();
j9.Delay(5)
.Do(() =>
{
j8.Cancel();
Log.Print("[j9] cancelled j8");
})
.Execute();
int repeatCounts = 3;
float repeatDuration = 0.5f;
JAction j = new JAction();
j.Repeat(() =>
{
Log.Print("I have repeated");
}, repeatCounts, repeatDuration)
.Excute();
* повторение при условии;
int num = 10;
float repeatDuration = 0.5f;
float timeout = 10f;
JAction j = new JAction();
j.RepeatWhen(() =>
{
Log.Print($"num is more than 0, num--");
num--;
},
() => num > 0, repeatDuration, timeout)
.Excute();
* повторение до тех пор, пока;
int num = 10;
float repeatDuration = 0.5f;
float timeout = 10f;
JAction j = new JAction();
j.RepeatUntil(() =>
{
Log.Print($"num is more than 0, num--");
num--;
},
() => num <= 0, repeatDuration, timeout)
.Excute();
* ожидание до;
JAction j = new JAction();
j.Until(()=> something is done)
.Do(something)
.Excute();
``` **v0.1 (14 июля 2020)**
Автоматическое создание **обновлений ресурсов**.
Автоматическая обработка **DLL с горячими обновлениями**.
Обновление кодов и ресурсов **горячих обновлений** с сервера (на основе XAsset и ILRuntime).
Поддержка разработки локальных кодов горячих обновлений в редакторе Unity через DLL в папке Assets/HotUpdateResources/Dll/HotUpdateScripts.dll.
**v0.2 (16 июля 2020)**
Поддержка режима разработки, который загружает DLL и ресурсы из локальной папки.
Автоматическое удаление ненужных DLL, PDB и т. д. в каталоге ресурсов DLL.
Автоматический перевод DLL в байты в редакторе.
**v0.3 (17 июля 2020)**
Обновление ILRuntime до версии 1.6.3, которая исправляет множество ошибок в зависимостях.
Включение жизненного цикла JEngine, который является только прототипом и будет расширен в будущем с добавлением базовых кодов.
Появление JUIBehaviour — поведения, основанного на MonoBehaviour, но более удобного для управления жизненными циклами компонентов пользовательского интерфейса, которые не нужно часто менять, и которое работает лучше. Можно использовать меньше кода для реализации большего функционала.
**v0.3.1 (18 июля 2020)**
Объединение Unity-GUI-Redis, который также является частью JEngine, теперь принадлежит пространству имён JEngine.Redis.
Обновление зависимости XAsset до последней версии:
* поддержка сетевого монитора;
* создание пакетов с именем по хешу;
* небольшое улучшение фреймворка.
Переписывание ILRuntime:
* поддержка метода OnDestroy, вызываемого MonoBehaviour;
* небольшое улучшение фреймворка.
Начало работы над JUI:
* пока поддерживается только текст;
* основан на JUIBehaviour;
* метод-цепочка делает код более упорядоченным и красивым;
* уникальный и управляемый жизненный цикл;
* улучшение JUIBehaviour.
**v0.3.2 (19 июля 2020)**
JUIText становится JUI. Поддерживает использование любого класса, основанного на UIBehaviour, включая все компоненты UGUI в Unity.
JUI поддерживает привязку данных и режим сообщений, который вызывается при изменении связанных данных.
Добавление BindableProperty для использования в классах или структурах данных.
Улучшение производительности циклов в JUIBehaviour и производительности получения общих компонентов в JUI.
Обновление демонстраций до обратного отсчёта и демонстрации обновления данных и привязки.
**v0.3.3 (24 июля 2020)**
Шифрование Hot Update DLL на основе AES с 16-битным ключом, что усложняет взлом вашей DLL другими пользователями.
Дополнительная поддержка регистраций ILRuntime, уменьшающая требования к регистрации при использовании ILRuntime.
Обновление XAsset и ILRuntime до последних версий.
**v0.3.4 (25 июля 2020)**
Пример JBehaviour.
Изменение структуры JBehaviour.
Улучшение JUI.
Исправление проблемы, когда JBehaviour нельзя было вызвать.
**v0.3.5 (29 июля 2020)**
Переписывание исходного кода JBehaviour для улучшения производительности.
Решение JObjectPool для пула объектов.
Улучшение JBehaviour с поддержкой изменения методов в некоторых частях.
Улучшение JUI.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )