[CF 1373] can i force a spell cooldown icon to be visible even when a spell is not learned?
tmw-issue-import opened this issue ยท 2 comments
i have the following group set for my moonkin druid:
(screenshot made in configuration mode) |
(and a screenshot made in regular use mode) |
Can you please add a second checkbox to the icon configuration screen?
next to the checkbox for "Always Hide" please add another one, for "Always Show" to stop hiding icons even when the spell they track is not learned/available. Keep it at the opacity level set by the "Not ready" slider but do not disable the icon.
My problem is that pretty much the first time after that i'm getting in combat in an instance (not much in open world though) i'm getting XML errors that blame TMW and i suspect it might be because of the fact that moonkin spell rotation involves learning and forgetting spells all the time during combat, which in turn cause the spell cooldown icons for those spells to be disabled and enabled.
Spells learned and removed during combat:
Scythe of Elune artifact spell New Moon ( http://www.wowhead.com/spell=202767/new-moon ) is removed during combat and replaced after casting by Half Moon, ( http://www.wowhead.com/spell=202768/half-moon ), which in turn is removed and replaced after casting by Full Moon, ( http://www.wowhead.com/spell=202771/full-moon ), which is again removed and replaced after casting by New Moon.. and the rotation starts again.
I think this causes TMW to go nuts with disabling and enabling the icons for those spells and since i set up separate icons to track each moon state this will cause the XML errors in combat.
^1^T^SGUID^STMW:group:1OSyPC3xdLuE ^SScale^F6880505395937282 ^f-52^SRows ^N3^SPoint ^T^Sy^F-6440665586797800 ^f-46^Sx ^F-5745926195048276^f-45 ^t^SColumns^N6 ^SIcons^T ^N1^T ^SStates^T ^N1^T ^t^N3^T ^t^N4^T ^t^t^t^N2^T ^SType^Sbuff ^SName^SMoonkin~`Form ^SEnabled^B ^SEvents^T ^N1^T ^SAnimColor^Sbfff0000 ^SFade^b ^SType^SAnimations ^SOnlyShown^B ^SAnimation^SICONFLASH ^SEvent^SWCSP ^SOnConditionConditions^T ^N1^T ^SType^SCOMBAT ^t^N2^T ^SType^SBUFFSTACKS ^SName^SMoonkin~`Form ^t^Sn^N2 ^t^t^Sn^N1 ^t^SSettingsPerView^T ^Sicon^T ^STexts^T ^N1^S ^N2^SMoonkin? ^t^t^t^SStates^T ^N1^T ^SAlpha^N0.2 ^t^N2^T ^SAlpha^N0.8 ^t^N3^T ^t^N4^T ^t^t^t^N3^T ^SType^Sbuff ^SName^SBlessing~`of~`Elune ^SEnabled^B ^SEvents^T ^N1^T ^SAnimColor^Sbfff0000 ^SFade^b ^SType^SAnimations ^SOnlyShown^B ^SAnimation^SICONFLASH ^SEvent^SWCSP ^SOnConditionConditions^T ^N1^T ^SType^SBUFFSTACKS ^SName^SBlessing~`of~`Elune ^t^Sn^N1 ^t^t^Sn^N1 ^t^SSettingsPerView^T ^Sicon^T ^STexts^T ^N1^S ^N2^Sbless ^t^t^t^SStates^T ^N1^T ^SAlpha^N0.2 ^t^N2^T ^SAlpha^N0.8 ^t^N3^T ^t^N4^T ^t^t^t^N4^T ^SStates^T ^N1^T ^t^N3^T ^t^N4^T ^t^t^t^N5^T ^SType^Sconditionicon ^SName^SStarsurge ^SConditions^T ^N1^T ^SType^SLUNAR_POWER ^SOperator^S>= ^SLevel^N40 ^t^Sn^N1 ^t^SEvents^T ^N1^T ^SType^SAnimations ^SOnlyShown^B ^SAnimation^SACTVTNGLOW ^SEvent^SWCSP ^SOnConditionConditions^T ^N1^T ^SType^SLUNAR_POWER ^SOperator^S>= ^SLevel^N55 ^t^Sn^N1 ^t^t^Sn^N1 ^t^SManaCheck^B ^SSettingsPerView^T ^Sicon^T ^STextLayout^Sicon1 ^STexts^T ^N1^S ^N2^SsuRge ^t^t^t^SCustomTex^SStarsurge ^SStates^T ^N1^T ^SAlpha^N0.8 ^t^N2^T ^SAlpha^N0.2 ^t^N3^T ^t^N4^T ^SAlpha^N0.2 ^t^t^SEnabled^B ^t^N6^T ^SType^Sconditionicon ^SEnabled^B ^SConditions^T ^N1^T ^SType^SLIBRANGECHECK ^SUnit^Starget ^SOperator^S<= ^SLevel^N45 ^t^Sn^N1 ^t^SSettingsPerView^T ^Sicon^T ^STexts^T ^N2^S[Range("target")] ^t^t^t^SCustomTex^S56911 ^SStates^T ^N1^T ^SAlpha^N0.8 ^t^N2^T ^SAlpha^N0.4 ^t^N3^T ^t^N4^T ^t^t^t^N7^T ^SShowTimer^B ^SType^Scooldown ^SShowTimerText^B ^SName^STyphoon ^SEnabled^B ^SSettingsPerView^T ^Sicon^T ^STexts^T ^N1^SY ^t^t^t^SStates^T ^N1^T ^SAlpha^N0.8 ^t^N2^T ^SAlpha^N0.3 ^t^N3^T ^t^N4^T ^t^t^t^N8^T ^SShowTimer^B ^SType^Scooldown ^SName^SBarkskin ^SShowTimerText^B ^SEnabled^B ^SSettingsPerView^T ^Sicon^T ^STexts^T ^N2^SG ^t^t^t^SStates^T ^N1^T ^SAlpha^N0.8 ^t^N2^T ^SAlpha^N0.3 ^t^N3^T ^t^N4^T ^t^t^t^N9^T ^SShowTimer^B ^SType^Scooldown ^SName^SRenewal ^SShowTimerText^B ^SEnabled^B ^SSettingsPerView^T ^Sicon^T ^STexts^T ^N2^SJ ^t^t^t^SStates^T ^N1^T ^SAlpha^N0.8 ^t^N2^T ^SAlpha^N0.3 ^t^N3^T ^t^N4^T ^t^t^t^N10^T ^SShowTimer^B ^SType^Sbuff ^SName^SSolar~`Empowerment ^SShowTimerText^B ^SEnabled^B ^SEvents^T ^N1^T ^SType^SAnimations ^SOnlyShown^B ^SAnimation^SACTVTNGLOW ^SEvent^SWCSP ^SOnConditionConditions^T ^N1^T ^SType^SBUFFSTACKS ^SOperator^S>= ^SLevel^N1 ^SName^SSolar~`Empowerment ^t^Sn^N1 ^t^t^Sn^N1 ^t^SSettingsPerView^T ^Sicon^T ^STextLayout^Sicon1 ^STexts^T ^N1^SQ3 ^N2^S[Stacks:Hide(0)] ^t^t^t^SCustomTex^S211089 ^SStates^T ^N1^T ^SAlpha^N0.8 ^t^N2^T ^SAlpha^N0.2 ^t^N3^T ^t^N4^T ^t^t^t^N11^T ^SStates^T ^N1^T ^t^N3^T ^t^N4^T ^t^t^t^N12^T ^SShowTimer^B ^SType^Sbuff ^SName^SLunar~`Empowerment ^SShowTimerText^B ^SEnabled^B ^SEvents^T ^N1^T ^SType^SAnimations ^SOnlyShown^B ^SAnimation^SACTVTNGLOW ^SEvent^SWCSP ^SOnConditionConditions^T ^N1^T ^SType^SBUFFSTACKS ^SOperator^S>= ^SLevel^N1 ^SName^SLunar~`Empowerment ^t^Sn^N1 ^t^t^Sn^N1 ^t^SSettingsPerView^T ^Sicon^T ^STextLayout^Sicon1 ^STexts^T ^N1^SE ^t^t^t^SCustomTex^S164547 ^SStates^T ^N1^T ^SAlpha^N0.8 ^t^N2^T ^SAlpha^N0.2 ^t^N3^T ^t^N4^T ^t^t^t^N13^T ^SStates^T ^N1^T ^t^N3^T ^t^N4^T ^t^t^t^N14^T ^SStates^T ^N1^T ^t^N3^T ^t^N4^T ^t^t^t^N15^T ^SShowTimer^B ^SType^Scooldown ^SName^SNew~`Moon ^SShowTimerText^B ^SEnabled^B ^SSettingsPerView^T ^Sicon^T ^STexts^T ^N1^S ^N2^S[Stacks:Hide(0)] ^t^t^t^SCustomTex^S202767 ^SStates^T ^N1^T ^SAlpha^N0.8 ^t^N2^T ^SAlpha^N0.3 ^t^N3^T ^t^N4^T ^t^t^t^N16^T ^SShowTimer^B ^SType^Scooldown ^SShowTimerText^B ^SName^SHalf~`Moon ^SEnabled^B ^SSettingsPerView^T ^Sicon^T ^STexts^T ^N1^S ^N2^S[Stacks:Hide(0)] ^t^t^t^SCustomTex^S202768 ^SStates^T ^N1^T ^SAlpha^N0.8 ^t^N2^T ^SAlpha^N0.3 ^t^N3^T ^t^N4^T ^t^t^t^N17^T ^SShowTimer^B ^SType^Scooldown ^SName^SFull~`Moon ^SShowTimerText^B ^SEnabled^B ^SSettingsPerView^T ^Sicon^T ^STexts^T ^N1^S ^N2^S[Stacks:Hide(0)] ^t^t^t^SCustomTex^S202771 ^SStates^T ^N1^T ^SAlpha^N0.8 ^t^N2^T ^SAlpha^N0.3 ^t^N3^T ^t^N4^T ^t^t^t^N18^T ^SShowTimer^B ^SType^Sbuff ^SName^SOwlkin~`Frenzy ^SShowTimerText^B ^SEnabled^B ^SEvents^T ^N1^T ^SType^SAnimations ^SOnlyShown^B ^SAnimation^SACTVTNGLOW ^SEvent^SWCSP ^SOnConditionConditions^T ^N1^T ^SType^SBUFFSTACKS ^SOperator^S>= ^SLevel^N1 ^SName^SOwlkin~`Frenzy ^t^Sn^N1 ^t^t^Sn^N1 ^t^SSettingsPerView^T ^Sicon^T ^STexts^T ^N1^SOWL ^N2^S ^t^t^t^SCustomTex^S157228 ^SStates^T ^N1^T ^SAlpha^N0.8 ^t^N2^T ^SAlpha^N0.2 ^t^N3^T ^t^N4^T ^t^t^t^t^t^N82501^S~`~| ^Sgroup^N1 ^^
(also on http://pastebin.com/D79UWQfi )
and the error message is pretty vague...
Message: Note: AddOn TellMeWhen attempted to call a protected function (ActionButton2:Show()) during combat lockdown.
Debug:
[C]: Show()
..\FrameXML\ActionButton.lua:330: ActionButton_Update()
..\FrameXML\ActionButton.lua:300: ActionButton_UpdateAction()
..\FrameXML\ActionBarController.lua:135: ActionBarController_UpdateAll()
..\FrameXML\ActionBarController.lua:64:
..\FrameXML\ActionBarController.lua:53
Locals:
None
Posted by CurseForge user Adrian_G2 | Imported from CurseForge issue #1373 | Raw
P.S. also, as another use for this:
as a BM hunter i can sometimes cast Battle Res if i have the correct pet summoned
http://www.wowhead.com/spell=126393/eternal-guardian
http://www.wowhead.com/spell=159956/dust-of-life
http://www.wowhead.com/spell=159931/gift-of-chi-ji
but the spell icon will get disabled if i don't have the correct pet active and i cannot then see the raid-wide BR cooldown and BR stacks.
However, if i summon that pet before the start of the combat i can then switch mid-combat to another pet and the BR cooldown/stacks icon remains visible and it's working to track the raid-wide things, even if the spell is not usable by me at the moment.
We could really use an option to force a spell cooldown+stacks icon to always be visible even if the spell is not learned at the moment.
Edited Feb 12, 2017
Posted by CurseForge user Adrian_G2
Track the spell by ID if you want to be able to always see the icon.
Regarding the error you posted: This has nothing to do with what you described as the suspected cause. In fact, it has nothing to do with TellMeWhen at all. Here's my canned response for this error that I wrote many years ago:
This is the result of Blizzard's bugged taint catcher. TellMeWhen is most certainly not trying to show or hide your action bars.
Unfortunately, there is nothing that I can do to help fix this until Blizzard updates their tant catcher to provide more useful information about why the taint is getting blamed on TellMeWhen. Is it a global variable that I'm tainting? Is it a library that TMW embeds that is causing the taint? Is a local variable getting tainted somewhere by TMW, or one of TMW's libs, calling a function that is modifying a local variable that is scoped outside a function? Is it a member variable of a frame widget somewhere that is getting tainted? The list goes on and on and on. Currently, there is no way to tell. Since these errors aren't actually causing adverse behavior (they're just annoying), I won't be trying to investigate why they are happening. Its like trying to find a needle in a haystack.
Edited Feb 11, 2017
Posted by CurseForge user Cybeloras