DHUD3 is the new version of DHUD2. It keeps the same feeling and functionality of DHUD2, but is has been redesigned into a new modular aproach, making it easier to mantain and to add new features. At the moment it is still in beta stage and only the core, player, abilities, auras and pet modules are complete. Many, if not all, of the features requested in DHUD2 are making it into DHUD3.
Wait, I was putting some code in the post and while doing it I realized that the module OnInitialize function was misspelled and hence never got called. Sorry for the troubles and thans for the help!
First of all thanks Xinhuan for pointing me towards Postal and Nevcairiel for Mapster, I think I have gotten the general idea. But now I have and loading order issue.
I started with my core/base and then developed my first module and all went smooth and as spected. But now I have my 2nd module almost ready and when I added it to my addon things didn't went so well. Basically it seems my 2nd module is loading before thye core one does, so it seems that I when I register the module with:
You can also look at Postal, which uses the Ace3 module system.
However, I would highly advise you not to make your modules interact with each other.
I hear ya, and that was what I was aiming for. A "star topology" and not a mesh. I wanto build a core module and let other modules increase the functionalilty with out depending in each other. Each one is independent from each other, but rest on top the core.
Thanks a lot for the answer. Can you point me out to any addon or guide I can use to learn how to use this feature and how to code my modules so they interact?
I think this must have been asked before but I couldn't find any post about it. In Ace2 we had AceModuleCore for managing modular addons, how do we do it in Ace3?
Is there any way I can get an event to fire after LibDogTag has changed the text on a Font String? I need to adjust the size of the frame so icons that have the text frame as a parent move to adjust to the actual size of the taged text.
Here is what I do. DHUD2 displays player buffs that are about to expire. In the PLAYER_AURA_CHANGED event I do a loop through the players buffs.
local name, _, texture, _, _, duration, expirationTime, isMine = UnitAura("player", i, "HELPFUL")
if name then
if (duration < 1800) or ( duration >= 1800 and p.pBuffsFilter) then
local currentTime = GetTime()
local timeLeft = expirationTime - currentTime
if timeLeft > 0 and timeLeft <= timeFilter then
....(show de buff icon)....
elseif timeLeft > 0 then
local newtimeToEvent = timeLeft - timeFilter
if newtimeToEvent < timeToEvent or timeToEvent == 0 then
timeToEvent = newtimeToEvent
DHUD2:CancelTimer(DHUD2.auraHandle, true)
DHUD2.auraHandle = self:ScheduleTimer(DHUD2.AuraTimer, timeToEvent-1)
end
end
This code gets called again from the timer handler function. If there is a new buff who's expiration is longer than the filter a new timer is created. I probably should do it out of the loop cause where it is at the moment I know various timers can be schedualed and canceled (I have tried it and gotten the same behaviour).
That is why I asked if you could just rescheduale a timer if you all ready had a handle, cause I only really need 1 timmer but be able to change its expiration time.
I have been getting a warning about AceTimer for my addon having a lot of live timers... I have revised the AceTImer code and it seems that when I cancel a timer the timre.delay gets to 0, but the handle in the table ramains... so when I schedule a new timer a new handle is created and so on. It seems the pice of code on the OnUpdate event that resets the handles is not doing it correctly.
This could be solved if you con create and then enable or disable the timmer using the handle.
I didn't made a new post cause I am having the same problem. Last night I commited some chanhes. My local copy is at revision 67 but the last package build is rev 65. My addon is DHUD2.
0
DHUD3 is the new version of DHUD2. It keeps the same feeling and functionality of DHUD2, but is has been redesigned into a new modular aproach, making it easier to mantain and to add new features. At the moment it is still in beta stage and only the core, player, abilities, auras and pet modules are complete. Many, if not all, of the features requested in DHUD2 are making it into DHUD3.
0
Wait, I was putting some code in the post and while doing it I realized that the module OnInitialize function was misspelled and hence never got called. Sorry for the troubles and thans for the help!
Arcanefoam
0
First of all thanks Xinhuan for pointing me towards Postal and Nevcairiel for Mapster, I think I have gotten the general idea. But now I have and loading order issue.
I started with my core/base and then developed my first module and all went smooth and as spected. But now I have my 2nd module almost ready and when I added it to my addon things didn't went so well. Basically it seems my 2nd module is loading before thye core one does, so it seems that I when I register the module with:
self.db = DHUD3.db:RegisterNamespace(MODNAME, defaults);
the code insde DHUD3.lua that initiates the db has not yet executed and thus sefl.db is null for my module.
Any idea on how to make things load orederly or a work arround for this issue?
0
I hear ya, and that was what I was aiming for. A "star topology" and not a mesh. I wanto build a core module and let other modules increase the functionalilty with out depending in each other. Each one is independent from each other, but rest on top the core.
Arcanefoam
0
Thanks a lot for the answer. Can you point me out to any addon or guide I can use to learn how to use this feature and how to code my modules so they interact?
0
Thanks for your reply, but I meant addons instead of libraries. I allready edited my post to fix this. :D
0
I think this must have been asked before but I couldn't find any post about it. In Ace2 we had AceModuleCore for managing modular addons, how do we do it in Ace3?
thanks
Arcanefoam
0
0
0
This code gets called again from the timer handler function. If there is a new buff who's expiration is longer than the filter a new timer is created. I probably should do it out of the loop cause where it is at the moment I know various timers can be schedualed and canceled (I have tried it and gotten the same behaviour).
That is why I asked if you could just rescheduale a timer if you all ready had a handle, cause I only really need 1 timmer but be able to change its expiration time.
0
I have been getting a warning about AceTimer for my addon having a lot of live timers... I have revised the AceTImer code and it seems that when I cancel a timer the timre.delay gets to 0, but the handle in the table ramains... so when I schedule a new timer a new handle is created and so on. It seems the pice of code on the OnUpdate event that resets the handles is not doing it correctly.
This could be solved if you con create and then enable or disable the timmer using the handle.
At the moment is there a work arround this issue?
0
I didn't made a new post cause I am having the same problem. Last night I commited some chanhes. My local copy is at revision 67 but the last package build is rev 65. My addon is DHUD2.
0
0
0