Dynamic Group Custom Anchor doesn't refire on Spec change despite Aura trigger within group track spec specific spells
ljosberinn opened this issue ยท 6 comments
Description
First of all, thank you for this tool!
I'm playing Vengeance DH showing a progress bar for Soul Fragments (the 5 elements). Said progress bar is only loaded on Vengeance since Havoc doesn't use it.
A dynamic group ("CDs", just Fel Devastation/Eye Beam atm) is conditionally anchored to it, based on a custom anchor function which checks the spec id via WeakAuras.SpecRolePositionForUnit("player")
.
Swapping to Havoc now hides the Fragments bar, so I need to reanchor. Docs mention Dynamic Group custom anchor functions refire on trigger changes, but it doesn't. Since the Fragments aura unloaded, its anchoring to nothing and ends up invisible until I /reload
- simply opening /wa doesnt fix it, I'd have to go into the custom anchor fn and retrigger its execution:
Vice versa, after the reload, swapping from Havoc to Vengeance doesnt reanchor so CDs is still anchored to Bars:
WeakAuras Version
5.0.5
World of Warcraft Flavor
Retail (Default)
Tested with only WeakAuras
- Yes
- No
Lua Error
No response
Reproduction Steps
- switch specs and observe weirdness
Last Good Version
No response
Screenshots
No response
Export String
!WA:2!DR3E0XXD19RXBeHS2X1s2rXrXKSw2wr2Xw2sYpKDSXzxPvwBIE5zx5xXP7o7mF3DM4zNz8mZQhMMarjnisdVuPTbkqBfukqPf6wsOqleqfcqpTNERkhyp9Ck06d935xp8h0A(FsV3VFN9L0ANqk9C6PZXE1mFFp37N79(5(97iDU29KpsVhQ3J0EH21AxBXD70UQTLVRTPjtBiDdtnxM1JuACfdlFMLILklwmfxVLgXvjFbMLVx)dnS31ZA7QXCJPOEfnxBhNTeZ04AxtXvlskBBtFdNSZQK3oXWlDPIXNw1)SAdSQsrFDB3jD8nST8c7o)K5Y5X8FHnvcNcSIPSX5l7qXNivC5sIrFiBtB3hrssku)fDnD2HUVVJ3jo4bPHUxd7dwDSpyFd4QOYh4Jk75R46hoBodldp9WXW)4hEbFxJ85zUED2TBWTp3YASSfZLl18om3rJp2uJm9yX8XhKvk6Q0)cEomtZeAEHVUxXSSzWx8KyRnMRu6HIMmv6KPIkNQAvt5YWQKtov8XglwrCgZ6yQmpZvMxB2rzkM(6YwkfyEHxQOvWsi8nirSRLI55WLgU6NDjpMzoUKa2S7mIcV3LXzrMLNl2IzAROnsmpJRX6qUqrushogUsv7aoqyzvtfpp6US(kM48s3UA2avKqygkuOPcH6(SE2fDvzznk4y76l7PIDiuwHyxFzXFJRLN50wYRwuXLfzKIMMroVUHpBzx(AHKBY5DTl6e08K4AQ1ve3l0T3rwpwb8TiBFiCRV(x23wn4DA7sp3YDzOL9cmh9PtukNlkzs67Q4Re6gc4Wiur0CKn5qYXJpH7CIXuQ)IgALU0Sd0tIKPC6jHZs81qcecV9T(w3zaYjHf20qzXcZzKp8Y4F1me4Usgw5SDlOqp1rj8wvwCsh5Lzjfldr5hf26iRWu8OLeZkVV(TdDgZY2ITQgcnOwKMakUEmAG9wGAkTuHjIvaTAgbgh7ambmjmfCw8VBBTL0U6NDXtSKIR6y8H)z7a2W(C2AIcfSn5dFuCAKzkAZ7CVdZkyBL0X4kmpEjrT0syry9zyWTdVv4oGWzDqfeIyonSPDb35cPMCk5eNz0ulNdvzdz4QAYYi75OOYAf2c0g0o(6fg2wy4UcdD0z3WD)CW2H7bxE3lSJWWBdUp4(HiWoHUGDb7g2tyO7WLuTnlwaxg4GecEGzHFfUv5cf9yJzuWaH2kMg5TGnVqExdnsu0L8Wl4ApROh4D(83ljyV3lSVWWWLo7zzfV0uM2ND296kK7mD4bhb2pHzHE5)Eq(VhI)7OHH(QbEDv0mk69SBc6hgaokCm4WHwrTONVDHOCWtxHddhr3zl1bL4)C9ZZuUcjC9ob5sdgCfT5rJsdvogcorRX8qRbyILOxJZBO5RVrOhzU0egJqfRvZk)6RRDARUvXuCnvMRJ4g0nLL)iOM02nRC0HtmDsyij4HUd4KWPG3EGbces2KeWBeE4qq0sjJpw8HsnIC0XJhdxYZgBS4JKcotiyJHHr2(2E23ZnO1)OZNL0ckznzDdtRdP0HeHHhPd4rZ4IZk55rAX9TSbUisY9cSJwiyeCoieSjj4oHnVQk6exZEwRKZA4WYSsLhjpc6XOoMb6yZi0zXT6SneeKgv(2USKKlZh1cBOUtBuX5zwmxd1K62ZoPvMvB4XsE8)Wb1eA7guhqxaQxrvxXfNhcvwQUcAVpo4ebK7Y5Egkyffzkx78UmpVi9WN996SvACyZHc20Cx4tGI9mR6IEGtw5XTh6NPVk1SAnGG(iSxMpFXWqv2qNY8QxQ66kZsE1pcODbQB5wIPe(Zh3wJ95AbTpUXvymNOKFzFzc4NHJEoh0zwhCTY85ifeMqqKfJLtrJ1mKe2EyXgAk8EWGwEk(KxiCntgtOATZvXaeKBEcfBPT4oCA3Nnh(6RRGIOle4305E4fY)r4bmTxWniGVADDThmyEDDVwm4RlkTsaQyrNo1KoBLxijVixNQCBMyrXhVHyImMJjmKEANDVU53jTVrbwAtwEf15tNZ022vFfEdEc0y2i38WMxM76GLclm2etor8M8w4eCJmnyAo79MnnbM6P91rDGocFKC25nRTOAs1Gcufc60fLUutcKQcR5ks1L5LPwj2AOLcgmmO)KEZQyQ1qVUOOxx426R3(psdAPlwrlDF3SLK4jPv5vnlgL78UkolC(GBeITzW1mA1NjqdwhXk0MU6kJZ4zYPtnwcuEg5MnFfS1sZHz16ifHFNR2Oay1gEZKYTQiaCABXZqNlrGtEzbCdcKwCivqjvw3brVtZq)mU9fzke9ywPmIYtOf3b8csW7fnjEFDThp49Zhf4daFqyj43e(qpn8BPd)2WMHFh4fHpm8rGF35HpkQcHpg8XVD43JRHGFF4paw(KTaFcj4tkb)HWNc(JYaFAN2smXeXLthBYuPMCCHl)pd8zH)4mWNBNWFIe8NkLvNzKx3)4Wd(YCNcwi5ox9GauhS7SEgw5nzLgo(4toXOtt8yXk4TKtmlZ1R6Y5kKpYmIWCoTxTfOctJAGQ(1B85UHVCQDdhO7TT7mP2DgHl36CXjgULRDp39KiukfHCqygkY)cvCJNHIhmKuSRzBxyQB7q9E4JGXxXq4o6kyugiMZ2Q0sYUBydpkuIwMgJmLcdjXx7vCfJE)Kj8I8SK9Eu5Agfy8(4J9O5p(u5IEC2qUgwelq0)v9mr6b2CjndpI2mXLBdI4vyGTf3h4TUauGFgOOomdgg6(OWqDapnSqjUGKhRWthMFzkatuZzvM3JZM5DWJO4SLGwK2gTcuWOVT)2raYZWj9eeF5xdd1Sl4jHNkd8o3EO797aVlE8Hz1Dd6B7hcMld8SzGFDE1Dhgxd5iguRq5oW1dgAEDMT)dnWG9DCA2xfTSu1zEIyFRkI9nUHhHzOiFXjTzsrkhz48X6om8C8GjW7UA4J1fo4nAyd45RfTa(nAWkY5nGvKuvRiPgSIeoYwJLe2X1y4Kd(8OJa4la)zIzQug4ph(IWl9)GMZWlV2fb8Lqd3xf(lQzWcFz4RahOd4RKb(QzG)YmWFLo81cm16aTZwiWEvfTuXIBL61ROdF9T36dTZ1BDbFJaZkyLQ2uWFn3Ec(MRX2zAIo33kd8QrHVDflKjNp1Ep6rpE0bJog8DxNTb83uNfXXGKukdDgBKIUZd3ESjWut4gi4KpY23qRTaxTJsIuRoa1eD4czGl(MM9pCPqqwKSDp9JPwaxgxmP5e5rsNpWSoBbLscw3tXCNgt99wYJ)X0RJhp3swrNshy4(91Dou)tYMg5Ytg5hrhj2)frHBo4eHGcBeECmLc4HVJ308WH84)VcyY1zpuOgvi3gPSqY(KYYo2WtE(jiw1NdtP6xnuqYov5qdi75hcD2Q4EfoZM7Af(9bH2L4kIngUKIgrIHPnUHvxhApWMcXFB9ADvERLRKrKtBn8mrHeH)KMAg9ao2Bte4G8MHPT7MveirHFp1(mRuP(HS9815WwApiqmT(so2ZYCPSv3Liqd1mA7icgkon4QTjtawyNI2kMcQ18PHqhlxBAD2YKNlU8yrVy6rKNC80XNyyrGjAgsyPAxaDTr9L77KdOKNIMicGD9ghA4NeG0qpE88sQJrf5benaUrncUckPJE6V9DtxFNrpDP2PR9p6P)oViD9Ji7VJDKAAaL5I13Ho0EwiRIBL((VFC6k1ONg(a01jh90)0xHU(hcrUkhsQoVLbeSr2rmX8pd6oRcnhb7NUYMV5(3gSjum9xlfZMWm2VjmJDEW11S(6vNVZsPZAKpTvXczXvKOkN2IMnRlBgdmI8e8kQ4E9wnmA4sQGIzT1MKZ9UUwtqlH(jttyJRwnNcYRTZd0KjdJ7QIzbhmNIIZkwKOV7MWiLpJugCfstBHMmN4vG)FNEU5VokvfbPlOmxB3SrUwZ0HpXoAXzhnVzI7JrU44Hz(mWpOjAUQtohQW3NizU(dJc50)RR0yDAGqWNBpnjNg)BsonZJHmBIwXQQwXzxnBnq2L1TIll9wG33c7jOcN9Dt7Y6bmy07ntHD)Kso3)nTBblMFofMVP5fUE8Ch1WZJrCWca1njFj)gYxII8JuiULAQQiRYsT0eHxLBqciFONUjGO(6v4nRgYpGQ0hEPyg5da2enLxiKGY0XoIGjttgl)1K8f8PxrKxIyJXBQmn41iWK8wyXnA9wCiuiYnFWQOHUvYT6SBAsZwJPf3ce(s7KtaPJL0Stl2WoDoxKoklTdK3WZrSWqgAFnKRq3idmmFNaEd92aNTWWxni)MRZJEgZKzPrbs6p6WdlyKe47N79xxeTEOAXuioadxYk(GJoM6fMp3eJxLH9enYC2gKxFP4KA4QyIzN5u00J1eUgipIR7vW22xVY(tLzTlldlDyqxkFbmSerumG24s84FEgyurJs819OgAAml5jIJHBjAlbLYtg9uUKmVOlBLHz(kgMErgXuX)g2OdsmtkVuIkprzPhu8pbxLGID6jbD(d5uuzxEifpFmGDmf3lJSgR90bsYPNW7MEnctF)sbtHQPHJoXl7v3DBiHjorQVR(cvwaNGlVXaU)BVeD9Lh90)W7JUsGfkn6P)(NJUwC0t)39XORFsOs2UgisLZfA5rNuoXLMCIuiJ4kKVQNR1fLw8WOcYazc70ws7IMvoHQHmjcX0UJZ3x0nST2rcXLLqkLbu5qsDcEW3fNkCZ5btuwiUWnWdgjJ8yzQWbEFHjI1dxQFTloXXtwq(cfo7TI77DMvS5c1Za2vIiatWrK2ls5Kt79ycAVTs0Eh6cT23ahfBjrFfzOkO)2zn0ya931uY2wxje13EahAhM5uPRQkBLtUN2FzWINybQb1agN97M(OTWf9HX0hw0klIGDtpVuj09eZmHNGTpMDE)kog6KW()eZCEts3OgxPk8T(X((VRwAPfKI223(dZVbzGLbVHOxxrAuYJoZhb2md8FiO4fPLwK4u8Ii6)l(IFDSebfpzp0ie9X)tfw1VBDEQs)SB98986OUlgTFwoBzexJRf5Sfv0OJEksQuLLoSe8GZqoGO0aRMSOqzIzjk0NCn8ncS8OTFJ89ip0yrhFQf8yxTiZsLfYPTAIHkgChTMbxunTjT8UC1tK4YJZ0muUCql9US4C3sZpYneCuwAxzklH(dh8gobUucM)LYwX7NCSXqw4lZfkJy4I5cuwAFOrVlxFL(AbkU0EiBQ5LklDWadA00Ab6WqZpMDEDirNDlRQZuVYiWDVJwwygfxdA)Fkj8xZRPlBNnipJIzr2CsF9CfT4h9ApE0o16T3WrWRdCGi2wMZhH38ig5IKeDzA4hjMDHSrm8IW3MkElX6SS9Ji68JnWJhX2T2d9sjte5uNkILHjvrdTuujYCYksWv4k34YqjJvKCkO7zEHOekC1wGloXbwqJL6v8IKLzIJ0avwpKt50mRz61eDdMu0Ktgza(u9lWuyfPa6tUYGgSS7)XJGXnQ9K4L4PeVHnPMMnNnB992pfUax)64w3JdhgBmTPww5zED2DzPjrtN))Clm0I5vU)7)0V2R9Z5oNFLx71ETqlGiphktXYspegXAjoqJaEztmrYedhFbmPp6ao8qCxeHj53uVgMRO3zxMF48rP9jvIcswRs)Rj5SLA54fSDYKBPap14QBhzYkaHoVq1xO8SkVpNksvK4ER)D3JzYu97zG9h58rtFgMp51kwXC56PlXz031(J0)Hg44d23E3lbXoejtchoCZezNkY6N3E2lfcbd2G(sXymOBZw5z6)JA)qzvr5v65jFv9FyNTv7OBIv99upW2CojaDLI5D(VIz)xuV(gpsvVi6qhwyKQ)FqNLLUepgffYINA9kdPR4hzCu2RKNXZWwiPgo4aRPtefdITJWbMXCA(L4yTIoA4VLLgd2foSZTHAIrftZaB6Q4jtBvfZkMnnxCux70v8gsaUW2g0PN6unfnkS65J6PqDq1je9HgXa7DF7pYr2FK(IOzx1AqmhC3qrQ0Ng8ciS6cW6gnAkrxv6AFvlTITtddtvXWJz84yRFhnmgchur8DlY2FdvyyPXMdRXOXIR48MoegS2UOr2qTR930fg)VnwLVTp(sFkuy0qXcBynSIAY8Qn4jBIJHMdVfIR15(OUXeheXN8INZwMEIePshDA5ONqyjvbBPtKx)iITf)CCkv)JIDw6VVZS9n4XgS)JXbT86Fz(MVpxgy(Rl2u8khNaVjVtjAV3PUURs8Dhpc)4LPDMxS77V6hN(8e0m8EcoODgw)kwZtBJ0c4cL7Nbj08aZUIWklNHjlHMBFdC4b6)4d(MMlvDETMxc5)zFSjvCuoU5zo(S0U29dLCAdxrQOWJLU2N(W3(1NptDdm6qyF7JV)t5Gxkut2DPpVeMnvwXXJMboZDxw6Tvw6(QJB5cvoYU7HZVC0WoTvZ)AZjKy3aHe(U1XVvqnruk97aip1SfmCDTDj(Q)GYs3Fg4e7SS0bkl1BzPUXmxQX04AsUkAZqFhzyyH9Ek4H2i8pFxcQK4l5)cYd5bkl1tGFquE(T0Hx9kllE0rH2wy(bQ4Dq1CZLwJ(Cy0lslA6Kt9X)Y08qU)EPlqNMIjR3c9dRiH5Gu3syUF8wkl1FzPbeEKNJK2dCu4BO7YdHX00x8eGnwpSH9D9ryMdZMrXtO3CJpplgtPa6H)heCiuNgZPyRV17hUkgsAb8D6z47VoMtX)n3FDK()JPZZT4ITYjY6w57L5FsNs84n6NhdSPnjXv5yMfywfQoFH1eymWjUdtnXWOrFvnEVOjMQSTjBkBp(Nlfg6HIwwnsz9DxH(y4ixgbdd6sAW(4my6Q6xkyxKB9UOp1MUQ3DsTjedhl(Y26HpCuCgYdZA29)GuFOCtWmIEIm8CzW8Vw7U4)wOuqE4BhIMDOPtsjAnezDEMEE0RESCJyD189d3zzPJjs)zTBQ)B2JvyX9w94jdokN1DcL8nXVnywDUBo4VL06cmXZWbe1oQXt6hCuJe(4PHf4yfHJoSQ1DIGVPogem9hcuDI)31jbgC6Cb5DfK0vLdDR62(GemNH(Ku9dtNvhMD23JFUDVIoLAwJNix92Hcn85q8bzvrwPIJMBnhlhAntNi33kd)yGEy6q5uupZvNzaJ5oAX40HYv3H7LyFO1pQeU793szPX7As5S8uD82hweMS24lBxnsgsRouqPo3LHLh9zKQs7YHmt8vy6rTOS0z5mWXS8KHNpyWP(uw65XILQu)rx2R6(0gBk0UuM)SZj)fWtEsQhEx2ZIXUgRx785xvmMelclMz2XrVFmxCHuw69rNR5gd)lvyERpzamNG3emNG7cyow1)NhM)Pw)HqhUS07MV)cFpXznhIQer2K9W229VmG2pZAH2Sblw4rU2zNmAS5Vzq7AOV34OZYsVqzP3lIBkl9(ll9bkl9bRhg1(m32t(Fb
That's supposed to work like it does work, your custom anchor function is not rechecked on spec changes nor any other occasion. The custom anchor functions for groups only run once.
Is there a way to force retrigger it procedurally? Having users to /reload is a bit scuffed. edit: rubber ducked myself
You can workaround this just by having a duplicate of the group or aura you want it anchored to that loads only in same spec and remove the custom anchoring
As you can see mixing auras in same dynamic group not meant for same spec and wanting them to have a different layout based on spec is overly complicated (for not saying impossible)
While having 1 group per spec, with some duplicate, doesn't require any code
well I can tell you you wont like it but I got it working:
function(event)
if event ~= "PLAYER_SPECIALIZATION_CHANGED" then
return false
end
local region = WeakAuras.GetRegion("XephUI-CDsAndDefensives")
region.SetAnchor(region, "CENTER", region.customAnchorFunc(), "BOTTOM")
return false
end
as a trigger for a standalone aura that listens to PLAYER_SPECIALIZATION_CHANGED:player