Quick Talents is a miniaturized talent ui that lets you quickly switch talents or glyphs, It can also move the spell onto your action bar when you switch talents.
I created it mainly for use in challenge modes, but it's great for a lot of things.
Thank you for updating this addon! I came to report the following error popping up when I change talents with Quick Talents 0.9.1:
7x FrameXML\TalentFrameBase.lua:55: Invalid specGroupIndex parameter! Usage: GetTalentInfo(tier, column, specGroupIndex [, isInspect, inspectUnit]) [string "=[C]"]: in function `GetTalentTierInfo' [string "@FrameXML\TalentFrameBase.lua"]:55: in function `TalentFrame_Update' [string "@Blizzard_TalentUI\Blizzard_TalentUI.lua"]:408: in function <...rfaceBlizzard_TalentUI\Blizzard_TalentUI.lua:398> [string "=[C]"]: in function `PlayerTalentFrame_Refresh' [string "@Blizzard_TalentUI\Blizzard_TalentUI.lua"]:1018: in function `PlayerSpecTab_OnClick' [string "*:OnClick"]:2: in function <[string "*:OnClick"]:1> [string "=[C]"]: in function `Click' [string "@FrameXML\ChatFrame.lua"]:1629: in function `?' [string "@FrameXML\ChatFrame.lua"]:5073: in function `ChatEdit_ParseText' [string "@FrameXML\ChatFrame.lua"]:4757: in function `ChatEdit_SendText' [string "@FrameXML\ChatFrame.lua"]:3049: in function <FrameXML\ChatFrame.lua:3042> [string "=[C]"]: in function `RunMacroText' [string "@FrameXML\SecureTemplates.lua"]:441: in function `handler' [string "@FrameXML\SecureTemplates.lua"]:654: in function <FrameXML\SecureTemplates.lua:602> [string "=[C]"]: in function `Click' [string "@FrameXML\ChatFrame.lua"]:1629: in function `?' [string "@FrameXML\ChatFrame.lua"]:5073: in function `ChatEdit_ParseText' [string "@FrameXML\ChatFrame.lua"]:4757: in function `ChatEdit_SendText' [string "@FrameXML\ChatFrame.lua"]:3049: in function <FrameXML\ChatFrame.lua:3042> [string "=[C]"]: in function `RunMacroText' [string "@FrameXML\SecureTemplates.lua"]:441: in function `handler' [string "@FrameXML\SecureTemplates.lua"]:654: in function <FrameXML\SecureTemplates.lua:602>
Any idea how to fix the error in regards to the toggle options? It also throws a ton of errors when clicking on the top bar to "hide" it
11x QuickTalents\QuickTalents-0.8.3.lua:373: attempt to call method 'SetFrameRef' (a nil value) [string "@QuickTalents\QuickTalents-0.8.3.lua"]:373: in function <QuickTalents\QuickTalents.lua:5>
To fix this in SL prepatch line 4 in QuickTalents.lua change "SecureHandlerClickTemplate,SecureHandlerStateTemplate" to "SecureHandlerClickTemplate,SecureHandlerStateTemplate,BackdropTemplate" and in line 180 'SecureFrameTemplate' to 'SecureFrameTemplate,BackdropTemplate'.
You know what would be a cool addition to this addon? Essences and pvp talents in the same window. There are no addons that would merge talents and essences in the same window, even though they are mechanically similar - they can be changed only when rested (or with a tome), and generally if you're changing talents, you often want to check your essences too.
As for implementation, one idea would be to just copy the way FlashTalent does PvP talents. The same would mechanically work perfectly for Essences too (I have no idea about API limitations though).
Following error encountered when attempting to use my order hall perk to complete a world quest.
1x [ADDON_ACTION_FORBIDDEN] AddOn 'QuickTalents' tried to call the protected function 'UseWorldMapActionButtonSpellOnQuest()'. !BugGrabber\BugGrabber.lua:573: in function <!BugGrabber\BugGrabber.lua:573> [C]: in function `UseWorldMapActionButtonSpellOnQuest' FrameXML\WorldMapFrame.lua:2023: in function <FrameXML\WorldMapFrame.lua:2019> [C]: ?
I get the following error from time to time if I rename my equipment sets:
Usage: local name, iconFileID, setID, isEquipped, numItems, numEquipped, numInInventory, numLost, numIgnored = C_EquipmentSet.GetEquipmentSetInfo(equipmentSetID) [C]: in function `GetEquipmentSetInfo' ...faceBlizzard_Deprecated\Deprecated_7_2_0.lua:116: in function `GetEquipmentSetInfoByName' QuickTalents\QuickTalents.lua:225: in function `Equip' QuickTalents\QuickTalents.lua:312: in function `Update' QuickTalents\QuickTalents.lua:331: in function <QuickTalents\QuickTalents.lua:325>
The addon displays as a small blank rectangle when this bug happens. Relog/reload doesn't fix it, but changing specs does. I loved the auto equip feature but it now seems to be redundant with the default blizz UI. Hope to see a 7.2 update soon :)
Wanted to change my Talents during the prep phase in a battleground and got (beside similiar one for other talents) this error:
6x FrameXML\TalentFrameBase.lua:58: Invalid specGroupIndex parameter! Usage: GetTalentInfo(tier, column, specGroupIndex [, isInspect, inspectUnit]) [C]: in function `GetTalentTierInfo' FrameXML\TalentFrameBase.lua:58: in function <FrameXML\TalentFrameBase.lua:38> [C]: in function `TalentFrame_Update' ...rfaceBlizzard_TalentUI\Blizzard_TalentUI.lua:500: in function `PlayerTalentFrame_Refresh' ...rfaceBlizzard_TalentUI\Blizzard_TalentUI.lua:1165: in function `PlayerSpecTab_OnClick' [string "*:OnClick"]:2: in function <[string "*:OnClick"]:1> [C]: in function `Click' FrameXML\ChatFrame.lua:1510: in function `?' FrameXML\ChatFrame.lua:4365: in function `ChatEdit_ParseText' FrameXML\ChatFrame.lua:4053: in function `ChatEdit_SendText' FrameXML\ChatFrame.lua:2660: in function <FrameXML\ChatFrame.lua:2653> [C]: in function `RunMacroText' FrameXML\SecureTemplates.lua:433: in function `handler' FrameXML\SecureTemplates.lua:619: in function <FrameXML\SecureTemplates.lua:567> [C]: in function `Click' FrameXML\ChatFrame.lua:1510: in function `?' FrameXML\ChatFrame.lua:4365: in function `ChatEdit_ParseText' FrameXML\ChatFrame.lua:4053: in function `ChatEdit_SendText' FrameXML\ChatFrame.lua:2660: in function <FrameXML\ChatFrame.lua:2653> [C]: in function `RunMacroText' FrameXML\SecureTemplates.lua:433: in function `handler' FrameXML\SecureTemplates.lua:619: in function <FrameXML\SecureTemplates.lua:567>
Nice addon. Could you possibly add PvP talents as well?
Just noticed that the addon does not seem to work with Tome of the Still Mind.
I tried to use it in a raid and it didn't work, in or out of a raid group. Could change
talents manually but no thru the addon. I verified this by trying to change talents
in an open world setting, and the addon didn't work. Any ideas?
Thxs (Love the addon by the way)
Pls disreguard. Had this confused with another addon.
Hello!
Thank you for updating this addon! I came to report the following error popping up when I change talents with Quick Talents 0.9.1:
7x FrameXML\TalentFrameBase.lua:55: Invalid specGroupIndex parameter! Usage: GetTalentInfo(tier, column, specGroupIndex [, isInspect, inspectUnit])
[string "=[C]"]: in function `GetTalentTierInfo'
[string "@FrameXML\TalentFrameBase.lua"]:55: in function `TalentFrame_Update'
[string "@Blizzard_TalentUI\Blizzard_TalentUI.lua"]:408: in function <...rfaceBlizzard_TalentUI\Blizzard_TalentUI.lua:398>
[string "=[C]"]: in function `PlayerTalentFrame_Refresh'
[string "@Blizzard_TalentUI\Blizzard_TalentUI.lua"]:1018: in function `PlayerSpecTab_OnClick'
[string "*:OnClick"]:2: in function <[string "*:OnClick"]:1>
[string "=[C]"]: in function `Click'
[string "@FrameXML\ChatFrame.lua"]:1629: in function `?'
[string "@FrameXML\ChatFrame.lua"]:5073: in function `ChatEdit_ParseText'
[string "@FrameXML\ChatFrame.lua"]:4757: in function `ChatEdit_SendText'
[string "@FrameXML\ChatFrame.lua"]:3049: in function <FrameXML\ChatFrame.lua:3042>
[string "=[C]"]: in function `RunMacroText'
[string "@FrameXML\SecureTemplates.lua"]:441: in function `handler'
[string "@FrameXML\SecureTemplates.lua"]:654: in function <FrameXML\SecureTemplates.lua:602>
[string "=[C]"]: in function `Click'
[string "@FrameXML\ChatFrame.lua"]:1629: in function `?'
[string "@FrameXML\ChatFrame.lua"]:5073: in function `ChatEdit_ParseText'
[string "@FrameXML\ChatFrame.lua"]:4757: in function `ChatEdit_SendText'
[string "@FrameXML\ChatFrame.lua"]:3049: in function <FrameXML\ChatFrame.lua:3042>
[string "=[C]"]: in function `RunMacroText'
[string "@FrameXML\SecureTemplates.lua"]:441: in function `handler'
[string "@FrameXML\SecureTemplates.lua"]:654: in function <FrameXML\SecureTemplates.lua:602>
Locals:
(*temporary) = 1
(*temporary) = 2
(*temporary) = nil
(*temporary) = "player"
(*temporary) = true
Thanks that does fix the visibility.
Any idea how to fix the error in regards to the toggle options? It also throws a ton of errors when clicking on the top bar to "hide" it
11x QuickTalents\QuickTalents-0.8.3.lua:373: attempt to call method 'SetFrameRef' (a nil value)
[string "@QuickTalents\QuickTalents-0.8.3.lua"]:373: in function <QuickTalents\QuickTalents.lua:5>
Locals:
self = QuickTalents {
BottomLeftCorner = <unnamed> {
}
OnBackdropLoaded = <function> defined @SharedXML\Backdrop.lua:205
GetBackdropColor = <function> defined @SharedXML\Backdrop.lua:443
menuTable = <table> {
}
Equip = <function> defined @QuickTalents\QuickTalents.lua:235
TopLeftCorner = <unnamed> {
}
RightEdge = <unnamed> {
}
UpdateLock = <function> defined @QuickTalents\QuickTalents.lua:243
Learn = <function> defined @QuickTalents\QuickTalents.lua:257
Buttons = <table> {
}
ApplyBackdrop = <function> defined @SharedXML\Backdrop.lua:347
ShowMenu = <function> defined @QuickTalents\QuickTalents.lua:121
ClearBackdrop = <function> defined @SharedXML\Backdrop.lua:335
GetBackdropBorderColor = <function> defined @SharedXML\Backdrop.lua:462
GetBackdrop = <function> defined @SharedXML\Backdrop.lua:400
SetBorderBlendMode = <function> defined @SharedXML\Backdrop.lua:319
PixelSnapDisabled = true
Update = <function> defined @QuickTalents\QuickTalents.lua:292
menuEquipment = <table> {
}
SetupTextureCoordinates = <function> defined @SharedXML\Backdrop.lua:267
OnBackdropSizeChanged = <function> defined @SharedXML\Backdrop.lua:235
TopRightCorner = <unnamed> {
}
Center = <unnamed> {
}
GetEdgeSize = <function> defined @SharedXML\Backdrop.lua:241
0 = <userdata>
menuFrame = QuickTalentsPopupMenu {
}
TopEdge = <unnamed> {
}
Layout = <function> defined @QuickTalents\QuickTalents.lua:267
BottomRightCorner = <unnamed> {
}
menuTalents = <table> {
}
BottomEdge = <unnamed> {
}
backdropInfo = <table> {
}
HasBackdropInfo = <function> defined @SharedXML\Backdrop.lua:331
SetBackdropBorderColor = <function> defined @SharedXML\Backdrop.lua:475
SetupPieceVisuals = <function> defined @SharedXML\Backdrop.lua:299
SetBackdropColor = <function> defined @SharedXML\Backdrop.lua:452
LeftEdge = <unnamed> {
}
SetBackdrop = <function> defined @SharedXML\Backdrop.lua:382
}
settings = <table> {
CollapseInCombat = <table> {
}
BackgroundAlpha = <table> {
}
Columns = <table> {
}
ButtonSize = <table> {
}
Scale = <table> {
}
ButtonSpacing = <table> {
}
ShowTooltips = <table> {
}
BarVisible = <table> {
}
BarBottom = <table> {
}
Lock = <table> {
}
Display = <table> {
}
Filter = <table> {
}
Collapsed = <table> {
}
Equipment = <table> {
}
}
cfg = <table> {
CollapseInCombat = false
BackgroundAlpha = 0.750000
Columns = 3
ButtonSize = 26
Scale = 1
ButtonSpacing = 2
ShowTooltips = true
BarVisible = true
BarBottom = false
Lock = true
Display = true
Filter = <table> {
}
Collapsed = false
Equipment = <table> {
}
}
SpecText = <unnamed> {
0 = <userdata>
}
ButtonContainer = QuickTalentsButtonContainer {
0 = <userdata>
PixelSnapDisabled = true
OnBackdropLoaded = <function> defined @SharedXML\Backdrop.lua:205
Center = <unnamed> {
}
GetBackdropColor = <function> defined @SharedXML\Backdrop.lua:443
SetupTextureCoordinates = <function> defined @SharedXML\Backdrop.lua:267
OnBackdropSizeChanged = <function> defined @SharedXML\Backdrop.lua:235
HasBackdropInfo = <function> defined @SharedXML\Backdrop.lua:331
SetBackdropBorderColor = <function> defined @SharedXML\Backdrop.lua:475
RightEdge = <unnamed> {
}
backdropInfo = <table> {
}
BottomEdge = <unnamed> {
}
GetEdgeSize = <function> defined @SharedXML\Backdrop.lua:241
BottomLeftCorner = <unnamed> {
}
BottomRightCorner = <unnamed> {
}
TopEdge = <unnamed> {
}
ApplyBackdrop = <function> defined @SharedXML\Backdrop.lua:347
SetBackdrop = <function> defined @SharedXML\Backdrop.lua:382
ClearBackdrop = <function> defined @SharedXML\Backdrop.lua:335
TopRightCorner = <unnamed> {
}
GetBackdropBorderColor = <function> defined @SharedXML\Backdrop.lua:462
GetBackdrop = <function
In reply to Forge_User_10621636:
On line 374 change self:SetFrameRef("ButtonContainer", ButtonContainer); to SecureHandlerSetFrameRef(self, "ButtonContainer", ButtonContainer)
To fix this in SL prepatch line 4 in QuickTalents.lua change "SecureHandlerClickTemplate,SecureHandlerStateTemplate" to "SecureHandlerClickTemplate,SecureHandlerStateTemplate,BackdropTemplate" and in line 180 'SecureFrameTemplate' to 'SecureFrameTemplate,BackdropTemplate'.
In reply to Turtvaiz:
Any info on how to fix "Collapse in combat"?
On line 374 change self:SetFrameRef("ButtonContainer", ButtonContainer); to SecureHandlerSetFrameRef(self, "ButtonContainer", ButtonContainer)
Honestly no idea why it fixes that. Those both should be functionally equivalent, but the first way just doesn't work anymore?
In reply to Turtvaiz:
The savior !!! thanks so much
In reply to Turtvaiz:
I realize you are not the author of the add-on however I'm still getting an error with this logic and unable to see window
You know what would be a cool addition to this addon? Essences and pvp talents in the same window. There are no addons that would merge talents and essences in the same window, even though they are mechanically similar - they can be changed only when rested (or with a tome), and generally if you're changing talents, you often want to check your essences too.
As for implementation, one idea would be to just copy the way FlashTalent does PvP talents. The same would mechanically work perfectly for Essences too (I have no idea about API limitations though).
Is it a possibility to add a way to automatically use a Tome when clicking on a talent outside of rested area?
I guess this addon is now abandoned or any chance anyone is going to fix it for BfA?
I would like to apply the legend ring characteristics.
Hi,
This is a really useful add-on and I appreciate you taking the time to create it!
One question; can you give this the ability to change honor talents as well? That would be super useful to me.
Thanks.
Tom
Following error encountered when attempting to use my order hall perk to complete a world quest.
1x [ADDON_ACTION_FORBIDDEN] AddOn 'QuickTalents' tried to call the protected function 'UseWorldMapActionButtonSpellOnQuest()'.
!BugGrabber\BugGrabber.lua:573: in function <!BugGrabber\BugGrabber.lua:573>
[C]: in function `UseWorldMapActionButtonSpellOnQuest'
FrameXML\WorldMapFrame.lua:2023: in function <FrameXML\WorldMapFrame.lua:2019>
[C]: ?
Locals:
nil
I get the following error from time to time if I rename my equipment sets:
Usage: local name, iconFileID, setID, isEquipped, numItems, numEquipped, numInInventory, numLost, numIgnored = C_EquipmentSet.GetEquipmentSetInfo(equipmentSetID)
[C]: in function `GetEquipmentSetInfo'
...faceBlizzard_Deprecated\Deprecated_7_2_0.lua:116: in function `GetEquipmentSetInfoByName'
QuickTalents\QuickTalents.lua:225: in function `Equip'
QuickTalents\QuickTalents.lua:312: in function `Update'
QuickTalents\QuickTalents.lua:331: in function <QuickTalents\QuickTalents.lua:325>
Locals:
(*temporary) = "Usage: local name, iconFileID, setID, isEquipped, numItems, numEquipped, numInInventory, numLost, numIgnored = C_EquipmentSet.GetEquipmentSetInfo(equipmentSetID)"
The addon displays as a small blank rectangle when this bug happens. Relog/reload doesn't fix it, but changing specs does. I loved the auto equip feature but it now seems to be redundant with the default blizz UI. Hope to see a 7.2 update soon :)
Would really wish the addon could save its location or have a profile to do so dragging the addon in the right spot countless times is annoying.
Great addon. but it needs update for 7.1.5 + it need a profile button. also as other said it might need PVP options as well.
Hey there,
sweet QoL-addon. Many thanks for it.
Hope you will keep it updated :)
Got some issues though:
Wanted to change my Talents during the prep phase in a battleground and got (beside similiar one for other talents) this error:
6x FrameXML\TalentFrameBase.lua:58: Invalid specGroupIndex parameter! Usage: GetTalentInfo(tier, column, specGroupIndex [, isInspect, inspectUnit])
[C]: in function `GetTalentTierInfo'
FrameXML\TalentFrameBase.lua:58: in function <FrameXML\TalentFrameBase.lua:38>
[C]: in function `TalentFrame_Update'
...rfaceBlizzard_TalentUI\Blizzard_TalentUI.lua:500: in function `PlayerTalentFrame_Refresh'
...rfaceBlizzard_TalentUI\Blizzard_TalentUI.lua:1165: in function `PlayerSpecTab_OnClick'
[string "*:OnClick"]:2: in function <[string "*:OnClick"]:1>
[C]: in function `Click'
FrameXML\ChatFrame.lua:1510: in function `?'
FrameXML\ChatFrame.lua:4365: in function `ChatEdit_ParseText'
FrameXML\ChatFrame.lua:4053: in function `ChatEdit_SendText'
FrameXML\ChatFrame.lua:2660: in function <FrameXML\ChatFrame.lua:2653>
[C]: in function `RunMacroText'
FrameXML\SecureTemplates.lua:433: in function `handler'
FrameXML\SecureTemplates.lua:619: in function <FrameXML\SecureTemplates.lua:567>
[C]: in function `Click'
FrameXML\ChatFrame.lua:1510: in function `?'
FrameXML\ChatFrame.lua:4365: in function `ChatEdit_ParseText'
FrameXML\ChatFrame.lua:4053: in function `ChatEdit_SendText'
FrameXML\ChatFrame.lua:2660: in function <FrameXML\ChatFrame.lua:2653>
[C]: in function `RunMacroText'
FrameXML\SecureTemplates.lua:433: in function `handler'
FrameXML\SecureTemplates.lua:619: in function <FrameXML\SecureTemplates.lua:567>
Locals:
(*temporary) = 1
(*temporary) = 2
(*temporary) = nil
(*temporary) = "player"
(*temporary) = true
Hope you can help.
Best regards.