Предыдущие версии
Название | Размер | Обновлено | Версия игры | Загрузок | |
LibHijackMinimap-1.0 v1.0 r001 release | 13.01 KB | Jun 24, 2015 | 6.2.0 | 838 | Скачать |
Описание
LibHijackMinimap-это библиотека, которая обеспечивает централизованную обработку для повторного создания миникарты.
LHM предоставляет функциональность для обработки нескольких запросов угонщиков и брокеров между угонщиками и клиентскими аддонами.
Аддоны, которые обращаются к миникарте (клиентам) и хотят поддерживать замену/перепрошивку миникарты, могут зарегистрироваться в этой библиотеке с обратным вызовом, который выполняется при замене миникарты. В процедуре обратного вызова клиент должен обрабатывать повторное создание своих элементов миникарты.
Аддоны, которые заменяют миникарту (угонщики) и хотят уведомить клиентов, могут зарегистрироваться в этой библиотеке и использовать библиотечные вызовы для уведомления об угоне и выпуске миникарты.
Одним из основных преимуществ использования LHM является то, что новые клиентские аддоны не должны связываться с каждым отдельным аддоном угонщика для поддержки, существующие аддоны угонщика не должны обновляться для каждого нового клиентского аддона, а новые аддоны угонщика не должны находить всех существующих клиентов там.
Клиенты могут быть занесены в черный список за угон конкретными угонщиками. Если более одного угонщика аддона заменили миникарту для клиента, то выигрывает первый угонщик. Если угонщик восстановит миникарту, клиент вернется к следующему действительному угонщику или будет восстановлен к миникарте, если ее нет.
Черный список можно настроить с помощью внешнего аддона. Для настройки можно использовать только один аддон. По умолчанию LibHijackMinimap-1.0-Options был разработан для выполнения этой работы.
С libhijackminimap Hijacker аддоны не имеют прямого контроля над тем, какие клиентские аддоны они захватывают, и поэтому им не нужно предоставлять настройку для этого.
С одним аддоном угонщика и предполагая, что пользователь захочет увидеть все клиентские аддоны на миникарте, это поведение является стандартным без необходимости в аддоне опций.
Ссылка на API
Пример
Угонщик
local AddonName = "угонщик" локальный аддон = LibStub:GetLibrary("AceAddon-3.0"):NewAddon(AddonName) local LHM = LibStub:GetLibrary("LibHijackMinimap-1.0") - используется как отдельный уникальный ID для проверки подлинности запросов захватить с модели LHM локальный lhmToken = {} LHM:RegisterHijacker(AddonName, lhmToken) функциональный аддон:HijackMinimap(frame) если не кадр то возвращение конец LHM:HijackMinimap(lhmToken, frame) конец функциональный аддон:ReleaseMinimap() LHM:ReleaseMinimap(lhmToken) конец
Клиент
local AddonName = "клиент" локальный аддон = LibStub:GetLibrary("AceAddon-3.0"):NewAddon(AddonName) local LHM = LibStub:GetLibrary("LibHijackMinimap-1.0") функциональный аддон:ReparentMinimap(frame) если не кадр то возвращение конец ... в случае если угонщик не предоставлять дополнительный аргумент "ROTATE_MINIMAP" в SetCVar("rotateMinimap", "значение", "ROTATE_MINIMAP") так CVAR_UPDATE не стреляли local rotateMinimap = GetCVar("rotateMinimap") = = "1" - перекрасьте ваши элементы миникарты конец LHM:RegisterClient(AddonName, Addon, "ReparentMinimap")
Добавить комментарий