AlertFrame identified by numbers?
I want to set the UIFrame alpha to 0 but still see the alert frames (e.g. from achievements or world quests). So I guess what I have to do is run SetIgnoreParentAlpha(true) on the respective frames. But what frames are these? When I use /fstack I get some strange names consisting of numbers. How could I handle this?
|
Frames that don't have a name or weren't created with the ParentKey XML attribute will have a random number in /fstack. This is basically their internal memory pointer similar to if you tostring() a table or function. There isn't a practical way to reference a frame with this number. It's mainly to show something's there and differentiate it from any other unnamed frame.
These are very likely created using frame pools and you'll need to look at the source code to find a way to get to them. |
All right, thanks! I was afraid so... :-)
I already looked in the Blizzard code and found AlertFrameSystems.lua to be most promising. It includes this function: Code:
function WorldQuestCompleteAlertFrame_SetUp(frame, questData) So I tried to hook it: Code:
hooksecurefunc("WorldQuestCompleteAlertFrame_SetUp", function(...) But I never see the print of my hook... Am I missing something? |
Quote:
You need something like: Lua Code:
Code:
/run UIParent:SetAlpha(0.5); NewMountAlertSystem:ShowAlert("123") |
Wow, this is amazing!! How do you get to know stuff like this?? :-D
Could you also think of a way to SetIgnoreParentAlpha() of alert frames that are already shown; i.e. after the resetterFunc has already been fired? Anyway, thank you so much! UPDATE: I think I found a way. Lua Code:
|
Quote:
|
Yes, I don't want to interfere with other addons. So I only want the alerts to ignore parent UI when *my* addon fades out UIParent. But I got it to work. See my "UPDATE" in the previous post.
|
All times are GMT -6. The time now is 11:07 AM. |
vBulletin © 2024, Jelsoft Enterprises Ltd
© 2004 - 2022 MMOUI