Advanced Status

Скидка Advanced Status 0.1.24

Добавлены проверки готовности плагина в методах API CreateBar и UpdateContent, поскольку в некоторых случаях они вызывались до полной инициализации плагина;
Исправлена ошибка с неправильным смещением при получении новых фрагментов чертежей.
Исправлена проблема в хуке OnPluginUnloaded для Carbon. По каким-то причинам этот хук срабатывал при выгрузке самого AdvancedStatus.
Исправлена проблема с перекрытием полос в инструменте «Обои»;
Различные незначительные изменения и улучшения в коде.
Исправлено перекрытие полос на лошади;
Исправлено перекрытие полос при наличии активного щита;
Исправлено перекрытие полос при установке баллисты или тарана;
Временное исправление для вытягивания новых осадных орудий. Проблема в том, что при вытягивании применяется дебафф, но по какой-то причине он не отображается в панели на стороне клиента, если нет других баффов, хотя он отображается в инвентаре (скорость -80%) ;
Отключено отображение строки состояния, когда активен телефонный пользовательский интерфейс игрока. Это вступит в силу после одобрения PR ( https://github.com/OxideMod/Oxide.Rust/pull/550 ) для добавления соответствующего крюка;
Другие незначительные улучшения кода.
Добавлена проверка правильности параметров конфигурации во время инициализации;
Добавлено принудительное ограничение на размер шрифта по умолчанию до 1-25 (так как большие размеры не помещаются в высоту панели по умолчанию);
Решена проблема, при которой некоторые плагины имели проблемы с отображением при подключении игрока;
Исправлены проблемы с перекрытием при наличии питомца;
Исправлено перекрытие панелей, когда игрок сидит в грузовике с магнитом (свалка);
Исправлена ошибка в отображении панелей состояния, когда игрок спит.
Для разработчиков:

Текущая версия плагина была добавлена в параметры хука OnAdvancedStatusLoaded, void OnAdvancedStatusLoaded(VersionNumber version = default);
Добавлена возможность передавать словари с ключами int вместо строк, что позволит избежать создания ненужных строк и упростить поиск ключей, хотя это может негативно повлиять на читаемость кода. Выбор между читаемостью и производительностью остается за вами. Список закрепленных значений можно найти на странице плагина в разделе разработчика;
Теперь можно указывать цвета в форматах Hex и RGBA;
Добавлена возможность указывать прозрачность для текстов;
Добавлена возможность обводить тексты и изображения;
Добавлена возможность указывать список клиентских и консольных команд, которые запускаются при удалении строки состояния;
Добавлен хук OnAdvancedBarDeleted, который вызывается при удалении строки состояния.
Из-за проблем с перегрузками методов при вызове через Plugin.Call() были изменены имена следующих перегруженных методов API (не все методы были изменены, обратите внимание на параметры):

DeleteBar(string barId, string pluginName) => DeleteBarForAll(string barId, string pluginName)
DeleteCategory(string category, string pluginName) => DeleteCategoryForAll(string category, string pluginName)
DeleteAllBars(string pluginName) => DeleteAllPluginBars(string pluginName)
  • Добавлен API GetTotalClientBars для получения количества клиентских баров игрока
  • Добавлен API GetTotalPlayerBars для получения количества активных пользовательских статусных баров игрока
  • Добавлена возможность устанавливать отдельную ставку для количества баров Building Privilege, так как это довольно ресурсоемко
  • Добавлен обратный прогресс-бар для TimeProgress и TimeProgressCounter
  • Другие мелкие изменения