feat: Questie-X v1.1.4 - plugin architecture, monorepo, rebranding

- Repoint remote to Xurkon/Questie-X
- Add QuestiePluginAPI, QuestieServer, QuestieLearnerComms modules
- Add Questie-X.toc, Questie-X-Classic.toc, Questie-X-TBC.toc, Questie-X-Turtle.toc
- Remove embedded Database/Ascension and Database/Ebonhold (migrated to plugins)
- Add Plugins/ directory with NTFS junctions for Questie-X-AscensionDB and Questie-X-EbonholdDB
- Add LibDeflate, XXH_Lua_Lib, LibDBIcon-1.0, LibDataBroker-1.1
- Update README: Questie-X branding, logo, plugin install guide, plugin API docs
- Update CHANGELOG: v1.1.4 entry documenting all architectural changes
- Update .gitignore: exclude plugin junctions, __pycache__, .agents, debug files
- Various module updates: corrections, map, tracker, tooltips, quest, options
This commit is contained in:
Xurkon
2026-03-14 06:10:17 -05:00
parent 89c3b3173d
commit c4d003e58f
77 changed files with 10883 additions and 8264 deletions
+13 -6
View File
@@ -5,7 +5,7 @@ local _HBDHooks = {}
---@type QuestieMap
local QuestieMap = QuestieLoader:ImportModule("QuestieMap");
local HBDPins = LibStub("HereBeDragonsQuestie-Pins-2.0")
local HBDPins = QuestieCompat.HBDPins or LibStub("HereBeDragonsQuestie-Pins-2.0")
function HBDHooks:Init()
@@ -13,16 +13,23 @@ function HBDHooks:Init()
-- (https://www.townlong-yak.com/framexml/27101/Blizzard_MapCanvas/MapCanvas_DataProviderBase.lua#74)
--This could in theory be skipped by instead using our own MapCanvasDataProviderMixin
--The reason i don't is because i want the scaling to happen AFTER HBD has processed all the icons.
_HBDHooks.ORG_OnMapChanged = HBDPins.worldmapProvider.OnMapChanged;
HBDPins.worldmapProvider.OnMapChanged = _HBDHooks.OnMapChanged
if HBDPins.worldmapProvider and HBDPins.worldmapProvider.OnMapChanged then
_HBDHooks.ORG_OnMapChanged = HBDPins.worldmapProvider.OnMapChanged;
HBDPins.worldmapProvider.OnMapChanged = _HBDHooks.OnMapChanged
end
end
function _HBDHooks:OnMapChanged()
--Call original one : https://www.townlong-yak.com/framexml/27101/Blizzard_MapCanvas/MapCanvas_DataProviderBase.lua#74
_HBDHooks.ORG_OnMapChanged(HBDPins.worldmapProvider)
if _HBDHooks.ORG_OnMapChanged then
_HBDHooks.ORG_OnMapChanged(HBDPins.worldmapProvider)
end
local mapScale = QuestieMap.GetScaleValue()
for pin in HBDPins.worldmapProvider:GetMap():EnumeratePinsByTemplate("HereBeDragonsPinsTemplateQuestie") do
QuestieMap.utils:RescaleIcon(pin.icon, mapScale)
local map = HBDPins.worldmapProvider:GetMap()
if map and map.EnumeratePinsByTemplate then
for pin in map:EnumeratePinsByTemplate("HereBeDragonsPinsTemplateQuestie") do
QuestieMap.utils:RescaleIcon(pin.icon, mapScale)
end
end
end
+3 -1
View File
@@ -698,7 +698,9 @@ function QuestieMap:DrawWorldIcon(data, areaID, x, y, showFlag)
QuestieMap:QueueDraw(QuestieMap.ICON_MINIMAP_TYPE, Questie, iconMinimap, uiMapId, x / 100, y / 100, true, floatOnEdge)
QuestieMap:QueueDraw(QuestieMap.ICON_MAP_TYPE, Questie, iconMap, uiMapId, x / 100, y / 100, showFlag)
local r, g, b = iconMinimap.texture:GetVertexColor()
QuestieDBMIntegration:RegisterHudQuestIcon(tostring(iconMap), data.Icon, uiMapId, x, y, r, g, b)
if QuestieDBMIntegration.RegisterHudQuestIcon then
QuestieDBMIntegration:RegisterHudQuestIcon(tostring(iconMap), data.Icon, uiMapId, x, y, r, g, b)
end
if not QuestieMap.questIdFrames[data.Id] then
QuestieMap.questIdFrames[data.Id] = {}