AutoGossip - add ignore list
it needs to be populated with innkeepers IDs, to not automate gossip for them
This commit is contained in:
+62
-27
@@ -1,40 +1,75 @@
|
||||
|
||||
TODO List:
|
||||
|
||||
|
||||
Backport:
|
||||
--------------------------------------------------------------------------------
|
||||
-- Backport to-do:
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
Need to fix transparency of settings in Settings main window.
|
||||
May be backport retail quest accept.
|
||||
|
||||
Main Panel - Need to fix transparency of settings in Settings main window.
|
||||
|
||||
AutoQuest - May be backport retail quest accept.
|
||||
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
-- What needs to be tested:
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
|
||||
Functions:
|
||||
Auto-Ress in BG - With option "Exclude Alterac" will it not auto-res in Alterac BG?
|
||||
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
-- Functions to-do:
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
|
||||
AutoGossip - Add user defined NPCID to automate gossipX (any option)
|
||||
|
||||
AutoGossip - Add ability to automate gossip cycles. (if after first gossip need to select more gossips)
|
||||
|
||||
AutoGossip - Add
|
||||
|
||||
Minimap enhance - Add NPC specific tracking icons on minimap.
|
||||
|
||||
Ready Timer - for RDF/BG
|
||||
|
||||
Automation - Remove transforms ( Jack-o'-Lantern, Hallowed Wand, Witch, Turkey and Spraybot transformations? etc. )
|
||||
|
||||
Interraction bindings - Add Quest / Vendor Bindings ( e.g. keyboard keys for Inkeepeer: 1 - Set Home, 2 - Vendor; )
|
||||
|
||||
World Map - Reveal Map
|
||||
|
||||
Action Bar - Make buttons full red if out of range (instead of blizzard red text only)
|
||||
|
||||
Auto-Spirit Res. - Add function to auto ressurect once interracted with Spirit Healer
|
||||
|
||||
Error Frame - Allow some error texts like mining, herbing
|
||||
|
||||
Error Frame - Allow only one line of error text option
|
||||
|
||||
Tooltip - If player has tooltip hidden in combat, make an option to toggle tooltip if "Alt" key is hold.
|
||||
|
||||
Faster Loot - Make the config options (disable sound, change sound, error filter, smaller error frame, faster fading - make all this optional)
|
||||
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
-- Not sure if need to do yet:
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
|
||||
Add NPC specific tracking icons on minimap.
|
||||
Improve Quest Accept conditions (aka skip welcome window and block shared aka escort quests)
|
||||
Frame mover
|
||||
Square minimap
|
||||
Restore Chat Messages history after relog
|
||||
Hide keybind text
|
||||
Hide macro text
|
||||
Resize mail text
|
||||
Train All Button
|
||||
Ready Timer for RDF/BG
|
||||
Copy chat links
|
||||
Links to wowhead-wotlk in Quest Log for every quest.
|
||||
Remove transforms (Jack-o'-Lantern, Hallowed Wand, Witch, Turkey and Spraybot transformations? etc.)
|
||||
Flight Path timer
|
||||
Import Quest / Vendor Bindings
|
||||
Make Action Bar buttons full red if out of range (instead of blizzard text red only)
|
||||
Auto-Spirit Res.
|
||||
Allow some error texts like mining, herbing
|
||||
Allow only one line of error text option
|
||||
If player has tooltip hidden in combat, make an option to toggle tooltip if "Alt" key is hold.
|
||||
Improve Quest Accept conditions (aka skip welcome window and block shared aka escort quests)
|
||||
Add more tweaks to Auction House extras module.
|
||||
Need to add exceptions for automating the gossip. (But first need to find NPCs that need exceptions, or make user be able to add exceptions)
|
||||
Make the config options for Faster Loot module. (disable sound, change sound, error filter, smaller error frame, faster fading - make all this optional)
|
||||
Square minimap
|
||||
Restore Chat Messages history after relog
|
||||
Hide keybind text
|
||||
Hide macro text
|
||||
Resize mail text
|
||||
Train All Button
|
||||
Copy chat links
|
||||
|
||||
|
||||
|
||||
|
||||
+59
-52
@@ -1524,24 +1524,24 @@
|
||||
end
|
||||
end
|
||||
|
||||
-- Reset Message flag when gossip window is closed
|
||||
local function ResetMessageFlag()
|
||||
isMessagePrinted = false
|
||||
end
|
||||
|
||||
-- Create gossip event frame
|
||||
local gossipFrame = CreateFrame("FRAME")
|
||||
|
||||
-- Function to setup events
|
||||
local function SetupEvents()
|
||||
if LeaPlusLC["AutomateGossip"] == "On" then
|
||||
gossipFrame:RegisterEvent("GOSSIP_SHOW")
|
||||
gossipFrame:RegisterEvent("GOSSIP_CLOSED") -- Added line to register GOSSIP_CLOSED event
|
||||
else
|
||||
gossipFrame:UnregisterEvent("GOSSIP_SHOW")
|
||||
gossipFrame:UnregisterEvent("GOSSIP_CLOSED") -- Added line to unregister GOSSIP_CLOSED event
|
||||
-- Reset Message flag when gossip window is closed
|
||||
local function ResetMessageFlag()
|
||||
isMessagePrinted = false
|
||||
end
|
||||
|
||||
-- Create gossip event frame
|
||||
local gossipFrame = CreateFrame("FRAME")
|
||||
|
||||
-- Function to setup events
|
||||
local function SetupEvents()
|
||||
if LeaPlusLC["AutomateGossip"] == "On" then
|
||||
gossipFrame:RegisterEvent("GOSSIP_SHOW")
|
||||
gossipFrame:RegisterEvent("GOSSIP_CLOSED") -- Added line to register GOSSIP_CLOSED event
|
||||
else
|
||||
gossipFrame:UnregisterEvent("GOSSIP_SHOW")
|
||||
gossipFrame:UnregisterEvent("GOSSIP_CLOSED") -- Added line to unregister GOSSIP_CLOSED event
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- Setup events when option is clicked and on startup (if option is enabled)
|
||||
LeaPlusCB["AutomateGossip"]:HookScript("OnClick", SetupEvents)
|
||||
@@ -1577,44 +1577,51 @@
|
||||
|
||||
}
|
||||
|
||||
--===== create ignore NPC table to not mess with npcTable and for future user options =====--
|
||||
local npcIgnore = {
|
||||
|
||||
-- Innkeepers
|
||||
5111, 6740
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
-- Event handler
|
||||
gossipFrame:SetScript("OnEvent", function(self, event, ...)
|
||||
if event == "GOSSIP_SHOW" then
|
||||
-- Special treatment for specific NPCs
|
||||
local npcGuid = UnitGUID("target") or nil
|
||||
if npcGuid and not IsShiftKeyDown() then
|
||||
local npcID = LibCompat.GetUnitCreatureId("target")
|
||||
-- print(npcID)
|
||||
if npcID then
|
||||
-- Open rogue doors in Dalaran (Broken Isles) automatically
|
||||
if npcID == "96782" -- Lucian Trias
|
||||
or npcID == "93188" -- Mongar
|
||||
or npcID == "97004" -- "Red" Jack Findle
|
||||
then
|
||||
SkipGossip()
|
||||
return
|
||||
end
|
||||
-- Skip gossip with no alt key requirement
|
||||
if npcID == "132969" -- Katy Stampwhistle (toy)
|
||||
or npcID == "104201" -- Katy Stampwhistle (npc)
|
||||
or tContains(npcTable, tonumber(npcID))
|
||||
then
|
||||
SkipGossip(true) -- true means skip alt key requirement
|
||||
return
|
||||
-- Event handler
|
||||
gossipFrame:SetScript("OnEvent", function(self, event, ...)
|
||||
if event == "GOSSIP_SHOW" then
|
||||
-- Special treatment for specific NPCs
|
||||
local npcGuid = UnitGUID("target") or nil
|
||||
if npcGuid and not IsShiftKeyDown() then
|
||||
local npcID = LibCompat.GetUnitCreatureId("target")
|
||||
-- print(npcID)
|
||||
if npcID then
|
||||
-- Open rogue doors in Dalaran (Broken Isles) automatically
|
||||
if npcID == "96782" -- Lucian Trias
|
||||
or npcID == "93188" -- Mongar
|
||||
or npcID == "97004" -- "Red" Jack Findle
|
||||
then
|
||||
SkipGossip()
|
||||
return
|
||||
end
|
||||
-- Skip gossip with no alt key requirement
|
||||
if npcID == "132969" -- Katy Stampwhistle (toy)
|
||||
or npcID == "104201" -- Katy Stampwhistle (npc)
|
||||
or tContains(npcTable, tonumber(npcID))
|
||||
and not tContains(npcIgnore, tonumber(npcID))
|
||||
then
|
||||
SkipGossip(true) -- true means skip alt key requirement
|
||||
return
|
||||
end
|
||||
end
|
||||
end
|
||||
-- Process gossip
|
||||
SkipGossip()
|
||||
|
||||
elseif event == "GOSSIP_CLOSED" then
|
||||
-- Reset Message flag when gossip window is closed
|
||||
ResetMessageFlag()
|
||||
end
|
||||
-- Process gossip
|
||||
SkipGossip()
|
||||
|
||||
elseif event == "GOSSIP_CLOSED" then
|
||||
-- Reset Message flag when gossip window is closed
|
||||
ResetMessageFlag()
|
||||
end
|
||||
end)
|
||||
end)
|
||||
|
||||
end
|
||||
|
||||
@@ -7034,11 +7041,11 @@
|
||||
-- Release in battlegrounds
|
||||
hooksecurefunc("StaticPopup_Show", function(sType)
|
||||
if sType and sType == "DEATH" and LeaPlusLC["AutoReleasePvP"] == "On" then
|
||||
if C_DeathInfo.GetSelfResurrectOptions() and #C_DeathInfo.GetSelfResurrectOptions() > 0 then return end
|
||||
if HasSoulstone() then return end
|
||||
local InstStat, InstType = IsInInstance()
|
||||
if InstStat and InstType == "pvp" then
|
||||
-- Exclude specific maps
|
||||
local mapID = C_Map.GetBestMapForUnit("player") or nil
|
||||
local mapID = GetCurrentMapAreaID() or nil -- 2.4.3 need test
|
||||
if mapID then
|
||||
if mapID == 1459 and LeaPlusLC["AutoReleaseNoAlterac"] == "On" then return end -- Alterac Valley
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user