Run the Turtle WoW setup with RunNextFrame and hook the map once

The one-shot OnUpdate frame becomes RunNextFrame. Its call into the map loader ran with the delay frame as this, so the loader's hooked flag sat on a different frame than on PLAYER_ENTERING_WORLD and the map hooks went on twice: shift and ctrl mouse wheel changed alpha and scale by two steps. The flag is now a local of the module.
This commit is contained in:
Brues
2026-10-31 14:28:01 -05:00
parent caf7112651
commit 78d4e0a56e
2 changed files with 7 additions and 7 deletions
+6 -3
View File
@@ -33,6 +33,10 @@ pfUI:RegisterModule("map", function ()
local alpha = C.position["WorldMapFrame"].alpha
local scale = C.position["WorldMapFrame"].scale
-- the hooks go on once, however often the loader runs: turtle-wow.lua also
-- calls it, outside of an event
local hooked
local pfMapLoader = CreateFrame("Frame")
pfMapLoader:RegisterEvent("PLAYER_ENTERING_WORLD")
pfMapLoader:SetScript("OnEvent", function()
@@ -46,9 +50,8 @@ pfUI:RegisterModule("map", function ()
WorldMapFrame:EnableMouse(true)
WorldMapFrame:RegisterForDrag("LeftButton")
-- make sure the hooks get only applied once
if not this.hooked then
this.hooked = true
if not hooked then
hooked = true
WorldMapFrame:HookScript("OnShow", function()
-- customize