Предыдущие версии
Название | Размер | Обновлено | Версия игры | Загрузок | |
v3.0.2 release | 107.97 KB | Jan 29, 2023 | 10.0.5 +2 | 1,075 | Скачать |
v3.0.1 release | 107.03 KB | Dec 4, 2022 | 10.0.2 +2 | 1,816 | Скачать |
v3.0.0 release | 107.64 KB | Oct 30, 2022 | 10.0.0 +2 | 1,665 | Скачать |
v2.0.11 release | 90.56 KB | Sep 27, 2022 | 9.2.7 +2 | 1,396 | Скачать |
v2.0.10-BCC release | 89.84 KB | Sep 1, 2022 | 2.5.4 | 227 | Скачать |
v2.0.9-BCC release | 89.77 KB | Feb 26, 2022 | 2.5.3 | 1,069 | Скачать |
v2.0.9-Classic release | 89.77 KB | Feb 26, 2022 | 1.14.2 | 158 | Скачать |
v2.0.9 release | 89.77 KB | Feb 26, 2022 | 9.2.0 | 2,233 | Скачать |
v2.0.8 release | 89.77 KB | Jun 18, 2021 | 9.0.5 | 2,201 | Скачать |
v2.0.8-BCC release | 89.77 KB | Jun 18, 2021 | 2.5.1 | 1,301 | Скачать |
v2.0.8-Classic release | 89.77 KB | Jun 18, 2021 | 1.13.7 | 440 | Скачать |
v2.0.7-Classic release | 89.77 KB | Nov 1, 2020 | 1.13.5 | 1,077 | Скачать |
v2.0.7 release | 89.77 KB | Nov 1, 2020 | 9.0.1 | 3,994 | Скачать |
v2.0.6-Classic release | 88.57 KB | Apr 26, 2020 | 1.13.4 | 1,039 | Скачать |
v2.0.6 release | 88.57 KB | Apr 26, 2020 | 8.3.0 | 3,968 | Скачать |
v2.0.5-Classic release | 88.57 KB | Sep 11, 2019 | 1.13.2 | 1,948 | Скачать |
v2.0.5 release | 88.57 KB | Sep 11, 2019 | 8.2.0 | 3,200 | Скачать |
v2.0.4-Classic release | 89.30 KB | Sep 9, 2019 | 1.13.2 | 566 | Скачать |
v2.0.4 release | 89.30 KB | Sep 9, 2019 | 8.2.0 | 296 | Скачать |
v2.0.3-Classic release | 89.08 KB | Sep 7, 2019 | 1.13.2 | 608 | Скачать |
v2.0.3 release | 87.84 KB | Sep 7, 2019 | 8.2.0 | 441 | Скачать |
v2.0.2 release | 90.64 KB | Aug 8, 2018 | 8.0.1 | 4,633 | Скачать |
v2.0.1 release | 90.46 KB | Aug 6, 2018 | 8.0.1 | 417 | Скачать |
v2.0.0 release | 90.20 KB | Aug 5, 2018 | 8.0.1 | 324 | Скачать |
v1.6.0 release | 86.82 KB | Sep 25, 2017 | 7.3.0 | 3,880 | Скачать |
v1.5.10 release | 86.64 KB | Mar 31, 2017 | 7.2.0 | 2,011 | Скачать |
v1.5.9 release | 86.42 KB | Dec 31, 2016 | 7.1.0 | 1,144 | Скачать |
v1.5.8 release | 86.33 KB | Dec 19, 2016 | 7.1.0 | 481 | Скачать |
v1.5.7 release | 86.26 KB | Oct 28, 2016 | 7.1.0 | 713 | Скачать |
v1.5.6 release | 85.99 KB | Sep 26, 2016 | 7.0.3 | 726 | Скачать |
v1.5.5 release | 85.22 KB | Sep 20, 2016 | 7.0.3 | 395 | Скачать |
v1.5.4 release | 83.69 KB | Aug 31, 2016 | 7.0.3 | 776 | Скачать |
v1.5.3 release | 83.02 KB | Aug 10, 2016 | 7.0.3 | 548 | Скачать |
v1.5.2 release | 82.90 KB | Jul 30, 2016 | 7.0.3 | 461 | Скачать |
v1.5.1 release | 82.70 KB | Jul 24, 2016 | 7.0.3 | 430 | Скачать |
v1.5.0 release | 82.51 KB | Jul 24, 2016 | 7.0.3 | 323 | Скачать |
v1.4.4 release | 80.96 KB | Jul 20, 2016 | 7.0.3 | 563 | Скачать |
v1.4.3 release | 80.96 KB | Jul 20, 2016 | 7.0.3 | 276 | Скачать |
v1.4.2 release | 80.96 KB | Jul 9, 2016 | 6.2.4 | 501 | Скачать |
v1.4.1 release | 80.96 KB | Jun 16, 2016 | 6.2.4 | 516 | Скачать |
v1.4.0 release | 80.48 KB | Jun 9, 2016 | 6.2.4 | 442 | Скачать |
v1.3.1 release | 79.86 KB | Mar 31, 2016 | 6.2.4 | 676 | Скачать |
v1.3.0 release | 77.99 KB | Mar 7, 2016 | 6.2.3 | 427 | Скачать |
v1.2.1 release | 71.82 KB | Mar 2, 2016 | 6.2.3 | 327 | Скачать |
v1.2.0 release | 71.63 KB | Feb 27, 2016 | 6.2.3 | 459 | Скачать |
v1.1.0 release | 65.15 KB | Feb 23, 2016 | 6.2.3 | 378 | Скачать |
v1.0.0 release | 64.17 KB | Feb 19, 2016 | 6.2.3 | 371 | Скачать |
Скриншоты
Описание
Меньше HUD, больше игры!
Намерение Immersive состоит в том, чтобы автоматически скрыть HUD игрока и показывать элементы только тогда, когда они необходимы. Это позволяет вам лучше оценить красоту мира и знаний WoW без всякого беспорядка на экране.
Самый последний
Новинка в версии v2.0. 4!
- Исправлена ошибка, приводившая к многочисленным ошибкам при принятии траектории полета.
- Исправлена ошибка, из-за которой левая и правая мультибары не отображались корректно при наведении курсора мыши на точку доступа.
- Исправлена ошибка, из-за которой скрывался ряд микро-кнопок в строке главного меню.
Особенности
Immersive-это расширяемая структура, которая управляет видимостью элементов экрана на основе контекста. В настоящее время поддерживаются интерфейсы включают:
- Пользовательский интерфейс Blizzard по умолчанию
- ElvUI (необходимо вручную включить из параметров интерфейса)
Например, рамка игрока показывает здоровье игрока и его ресурс (например, Ману). При включенном иммерсивном режиме кадр игрока отображается только во время боя, когда у игрока нет максимального здоровья или он находится на Арене / поле битвы.
Immersive добавляет уникальную привязку ключа под названием «активировать режим паники», это позволяет установить привязку ключа, которая временно отключит Immersive и покажет все экранные элементы.
Некоторые фреймы имеют возможность включить уникальное поведение, например фрейм чата. Если фрейм чата находится в режиме «Chat Gems» и был скрыт Immersive, то каждый раз при получении нового сообщения он будет создавать / обновлять драгоценный камень чата, представляющий собой один канал чата. Каналы чата включают в себя Say, Yell, Party и т. д. При наведении курсора на драгоценный камень чата появится всплывающая подсказка с указанием названия канала и количества полученных сообщений.
Нажав на любой драгоценный камень чата, вы также откроете рамку чата. Если ни одно сообщение с какого-либо канала не было получено, то по умолчанию отображается желтый драгоценный камень чата, позволяющий игроку открыть фрейм чата.
Большинство кадров можно показать, наведя курсор мыши на область, которую обычно занимает кадр. Существуют некоторые исключения, такие как фрейм чата, работающий в режиме «Chat Gems».
Известные Проблемы
- Фоны Raid-фреймов иногда не исчезают правильно, когда новые члены присоединяются к группе.
- Горячие точки иногда не совпадают с расположением элементов при использовании ElvUI.
Предложения
- Сторонний графическийинтерфейс: добавьте поддержку LUI.
- Сторонний графическийинтерфейс: добавьте поддержку Tukui.
- Расширить драгоценные камни режиме: добавить драгоценные камни режиме поддержка других периодах, таких как Рейд, квест трекер, миникарта и т. д.
- Gem Click/Hover: добавьте опцию активации элемента из gem по щелчку мыши или с помощью мыши.
Для Разработчиков
Базовая Интеграция
Immersive предоставляет простую точку расширения, которая позволяет разработчикам модов включать свои элементы HUD в фреймворк. Во-первых, нам нужен доступ к сервису Immersive api. Это достигается с помощью следующего кода:
местный движок, API-интерфейс, язык, параметры = распаковать(погружения)
Служба Api предоставляет нам доступ к следующим функциям:
- Api: RegisterElement (name[, params]) инициализирует и регистрирует экземпляр элемента. Элемент Immersive — это набор кадров на экране, которые разделяют условия видимости, а также такие настройки, как длительность затухания. Параметр name является обязательным и должен быть глобально уникальным, подумайте о том, чтобы включить имя вашего аддона для уникальности. Параметр params является необязательным и предоставляет значения по умолчанию для элемента. Текущие поддерживаемые значения по умолчанию следующие:
- Включено: указывает, был ли элемент включен или отключен игроком в настройках интерфейса.
- DelayTime: задержка (в секундах) перед тем, как элемент начнет исчезать.
- FadeTime: количество времени (в секундах), которое требуется элементу, чтобы исчезнуть.
- IsHotspot: определяет, проверяются ли какие-либо зарегистрированные горячие точки во время проверки элементов, если элемент отключен, то он не может быть активирован наведением мыши.
- Режим: режим указывает, должны ли быть выполнены все условия для активации элемента или может быть выполнено любое условие для активации элемента. Это значение по умолчанию равно значению «ANY».
- Api: GetElement (name) получить существующий экземпляр элемента с указанным именем.
- Api: UnregisterElement (name) отменяет регистрацию экземпляра элемента с указанным именем.
- Api: UnregisterAllElements () отменяет регистрацию всех экземпляров элементов. Это влияет на все элементы глобально, и этого следует избегать!
- Api: RegisterCondition (name, func, title, tooltip) регистрирует условие для использования в нескольких модулях. Этот процесс регистрации используется функцией element: AddConditionRange для обеспечения возможности настройки плеера. Свойства заголовка и всплывающей подсказки предоставляются для целей локализации.
- Api: UnregisterCondition (name) отменяет регистрацию условия с указанным именем.
- Api: UnregisterAllConditions () отменяет регистрацию всех условий. Это влияет на все элементы глобально, и этого следует избегать!
- Api: RegisterMode (name, validate, title) регистрирует режим работы для использования в нескольких модулях. Это позволяет указать пользовательское поведение для элемента. По умолчанию предусмотрены следующие режимы:
- Любой: элемент активируется, если выполняется какое-либо условие.
- Все: элемент активируется только при соблюдении всех условий.
- Скрытый: элемент никогда не активируется никаким условием, элемент все еще может быть активирован, если включена точка доступа.
- Api: GetMode (name) получить существующий режим работы с указанным именем.
- Api: GetAvailableModes (element) получает все доступные режимы на основе указанного элемента. Некоторые режимы работы ограничены определенными элементами.
Примером регистрации элемента может быть:
local element = Api:RegisterElement("CoolAddonElement")
Как только элемент зарегистрирован в фреймворке, мы можем начать интеграцию. Следующие свойства доступны для изменения:
- элемент.Название Имя элемента. Это имя предоставляется Api: RegisterElement.
- элемент.Enabled указывает, был ли элемент включен или отключен игроком в настройках интерфейса.
- элемент.DelayTime Задержка (в секундах) перед тем, как элемент начнет исчезать. Смотрите элемента:применить() ниже.
- элемент.FadeTime Количество времени (в секундах), которое требуется элементу, чтобы исчезнуть. Смотрите элемента:применить() ниже.
- элемент.IsHotspot определяет, проверяются ли какие-либо зарегистрированные горячие точки во время проверки элементов, если элемент отключен, то он не может быть активирован наведением мыши.
- элемент.Режим Режим указывает, должны ли быть выполнены все условия для активации элемента или может быть выполнено любое условие для активации элемента. Это значение по умолчанию равно значению «Any».
- элемент.Анимация это базовый кадр, созданный для обработки исчезающей анимации. (см. WoW Api CreateFrame). Доступ к этому объекту может быть полезен при необходимости обработки событий. Прямое управление этим объектом требуется только в расширенных сценариях.
- элемент.Анимация.FadeIn это базовая анимационная группа, созданная для обработки затухания. Прямое управление этим объектом требуется только в расширенных сценариях.
- элемент.Анимация.FadeOut это базовая анимационная группа, созданная для обработки затухания. Прямое управление этим объектом требуется только в расширенных сценариях.
Для вызова доступны следующие функции:
- элемент: AddFrame (frame) добавляет кадр в коллекцию элементов для управления и анимации.
- элемент: RemoveFrame (frame) удаляет существующий кадр из коллекции элементов.
- элемент: AddCondition (func) добавляет условие, которое будет определять поведение всех присоединенных кадров. Указанная функция должна возвращать либо истинное, либо ложное значение, и в зависимости от режима элемента это будет определять, следует ли его активировать.
- элемент: AddConditionRange (range) добавляет диапазон предварительно зарегистрированных условий, условие добавляется только в том случае, если значение пары равно true. Эта функция обычно используется совместно с базой данных настроек. Пример объекта settings, который будет передан в функцию, может быть следующим: { IsInCombat = true }
- элемент: RemoveCondition (func) удаляет существующее условие.
- элемент: AddHotspot (left, bottom, width, height) добавляет горячую точку для элемента. Точка доступа указывает область экрана (в пикселях), на которую игрок может навести курсор мыши, чтобы заставить элемент активироваться.
- элемент: RemoveHotspot (left, bottom, width, height) удаляет существующую горячую точку из элемента.
- элемент: ClearHotspots() удаляет все существующие горячие точки из элемента.
- element: Apply() эта функция применяет любые изменения, внесенные в элемент.Задержка или элемент.Свойства FadeTime.
Также можно использовать следующие обратные вызовы:
- элемент.OnFadeIn = функция (кадр, Альфа)… end запускает каждое обновление игры для каждого кадра в элементе, у которого изменилась альфа-версия. И кадр, и Альфа, на которую он был изменен, доступны в обратном вызове.
- элемент.OnFadeOut = функция (кадр, Альфа)… end запускает каждое обновление игры для каждого кадра в элементе, у которого изменилась альфа-версия. И кадр, и Альфа, на которую он был изменен, доступны в обратном вызове.
- элемент.OnBeforeUpdate = функция (кадр)… end запускает каждое обновление игры для каждого кадра в элементе до того, как произойдут какие-либо Альфа-изменения.
- элемент.OnAfterUpdate = функция (кадр)… end запускает каждое обновление игры для каждого кадра в элементе после любых Альфа-изменений.
Расширенная Интеграция
В расширенных сценариях также можно создать отдельный модуль, который будет управляться Immersive. Пожалуйста, обратитесь к модулю «по умолчанию» в Immersive в качестве примера того, как вы можете создать и структурировать модуль. Ниже также приведен упрощенный пример объявления модуля:
местный движок, API-интерфейс, язык, параметры = распаковать(погружения) -- Регистрация local CoolAddon = Engine:RegisterModule("CoolAddonModule") -- Инициализируйте модуль. функция CoolAddon:OnInitialize() конец -- Вызывается, когда модуль включен. функция CoolAddon:OnEnable() конец -- Вызывается, когда модуль отключен. функция CoolAddon:OnDisable() конец -- Зарегистрируйте настройки по умолчанию для модуля. функция CoolAddon:OnRegisterDefaults() возвращение { Enabled = true, IsCool = true } конец -- Регистрирует элементы управления для панели параметров функция CoolAddon:OnRegisterOptions() локальные настройки = Настройки:Get(self.Name) локальная панель = CreateFrame("рамка") panel.name = "классный аддон" panel.parent = Locale.CONFIG_MODULE_IMMERSIVE_NAME panel.OK = функция() -- Применить параметры конец panel.cancel = функция() -- Параметры отмены конец panel.default = function() -- Установить параметры по умолчанию конец panel.refresh = функция() -- Обновить элементы управления опциями в соответствии с настройками конец конец
Добавить комментарий