Download
(40Kb)
Download
Updated: 06-29-10 10:30 AM
Pictures
File Info
Updated:06-29-10 10:30 AM
Created:09-28-09 12:33 PM
Downloads:13,593
Favorites:52
MD5:

oUF HealComm4  Popular! (More than 5000 hits)

Version: v2.2.2
by: yj589794 [More]

This is an update of oUF_HealComm to use the new LibHealComm-4.0 library and includes LibWrapperHealComm-1.0 for backwards compatability with LibHealComm-3.0 used by lots of healing and unit frame addons.

The main advantages of the new library is support for Heals over Time and Channelled Heals, and for using the unique GUID for identifying the healing targets.

Horizontal and Vertical oUF layouts are also supported.

-----------

To display a bar for incoming heals your oUF layout needs to define a statusbar self.HealCommBar

Code:
	self.HealCommBar = CreateFrame('StatusBar', nil, self.Health)
	self.HealCommBar:SetHeight(0)
	self.HealCommBar:SetWidth(0)
	self.HealCommBar:SetStatusBarTexture(self.Health:GetStatusBarTexture():GetTexture())
	self.HealCommBar:SetStatusBarColor(0, 1, 0, 0.25)
	self.HealCommBar:SetPoint('LEFT', self.Health, 'LEFT')

	-- optional flag to show overhealing
	self.allowHealCommOverflow = true

To display text for incoming heals your oUF layout needs to define a fontstring self.HealCommText
Code:
	self.HealCommText = self.Health:CreateFontString(nil, 'OVERLAY', 'GameFontHighlightSmallRight')
	self.HealCommText:SetTextColor(0, 1, 0)
	self.HealCommText:SetPoint('RIGHT', health, 'LEFT', -5, 0)

	-- optional routine override to format the text display
	self.HealCommTextFormat = shortVal

If you do not want to see the heals you cast, then you can define the flag self.HealCommOthersOnly
Code:
	self.HealCommOthersOnly = true
If you want to limit the incoming heals to those that land x seconds from now you can define the option self.HealCommTimeframe
Code:
	-- limit to the next 3 seconds incoming heals
	self.HealCommTimeframe = 3

v2.2.2
- update to v1.6.6 of LibHealComm-4.0

v2.2.1
- update to v1.6.5 of LibHealComm-4.0
- minor code style changes that have no effect on functionality

v2.2.0
- update to v1.6.4 of LibHealComm-4.0
- ensure we make a local copy of string.format (unnoticeable speed boost)
- remove LibWrapperHealComm-1.0 library as I see next to no traffic on it now

v2.1.0
- update to v1.6.3 of LibHealComm-4.0
- fix minor bug with some incoming heal bars showing on units with full health and overflow disabled

v2.0.6
- update to v1.6.2 of LibHealComm-4.0
- addition of self.HealCommTimeframe option

v2.0.5
- update to v1.6.1 of LibHealComm-4.0

v2.0.4
- update to v1.6 of LibHealComm-4.0

v2.0.3
- update to v1.5.7 of LibHealComm-4.0

v2.0.2
- tidy namespace code
- update to v1.5.6 of LibHealComm-4.0
- update to v5.2 of LibWrapperHealComm-1.0

v2.0.1
- fix namespace issue

v2.0.0
- update to v1.5.5-release of LibHealComm-4.0
- major rewrite of code to be not hooky
Post A Reply Comment Options
Unread 09-24-10, 07:15 AM  
neverg
A Frostmaul Preserver
 
neverg's Avatar
AddOn Author - Click to view AddOns

Forum posts: 268
File comments: 498
Uploads: 2
Originally posted by yj589794
Hi,

when Cataclysm comes out this addon will become obsolete, so I am not keen to add extra features (such as PreUpdate and PostUpdate functions).

As such, I would suggest that you embed oUF_HealComm4 within your oUF layout structure and then edit the element code to perform the functionality you require.
Yes I thought so. If there was a way like a post update, if not, don't really bother. I will add support for Cataclysm then, since it's being integrated into oUF as I saw in your addon. Thanks mate.
__________________
My oUF Layout: oUF Lumen
Report comment to moderator  
Reply With Quote
Unread 09-24-10, 06:54 AM  
yj589794
A Rage Talon Dragon Guard
AddOn Author - Click to view AddOns

Forum posts: 314
File comments: 43
Uploads: 1
Hi,

when Cataclysm comes out this addon will become obsolete, so I am not keen to add extra features (such as PreUpdate and PostUpdate functions).

As such, I would suggest that you embed oUF_HealComm4 within your oUF layout structure and then edit the element code to perform the functionality you require.
Report comment to moderator  
Reply With Quote
Unread 09-24-10, 06:38 AM  
neverg
A Frostmaul Preserver
 
neverg's Avatar
AddOn Author - Click to view AddOns

Forum posts: 268
File comments: 498
Uploads: 2
Hi vj! Great addition to oUF.

I was thinking adding support to my layou (oUF_lumen) but I was trying to display only a small square when an incoming heal. That is, I don't want text or the amount of the heal, just a little icon to warn if an heal is comming.

I wrote it like this:

Code:
	-- oUF_HealComm4
	local HealCom = function(self)
		if IsAddOnLoaded("oUF_HealComm4") then
			self.HealCommBar = CreateFrame('StatusBar', nil, self.Health)
			self.HealCommBar:SetStatusBarTexture(white_square)
			self.HealCommBar:SetStatusBarColor(.66,.82,.19,.5)
			self.HealCommBar:SetWidth(3)
			self.HealCommBar:SetHeight(3)
			self.HealCommBar:SetPoint("CENTER", self.Health, "TOPRIGHT", -4, -4)
			SetBackdrop(self.HealCommBar, 1, 1, 1, 1)
			self.HealCommBar:SetFrameLevel(3)
			self.allowHealCommOverflow = false
			self.HealCommOthersOnly = false
		end
	end
It would work ok, but I guess you are getting the parent frame attributes (height, width, SetPoint) so it overwrites my calls.

Is there anyway around this?

Thanks.
__________________
My oUF Layout: oUF Lumen
Report comment to moderator  
Reply With Quote
Unread 09-02-10, 04:46 AM  
yj589794
A Rage Talon Dragon Guard
AddOn Author - Click to view AddOns

Forum posts: 314
File comments: 43
Uploads: 1
For anyone in the cataclysm beta, I have uploaded a beta version of the new element that will be replacing this one.

You can check it out here: http://wowinterface.com/downloads/in...rediction.html
Report comment to moderator  
Reply With Quote
Unread 08-02-10, 07:33 AM  
yj589794
A Rage Talon Dragon Guard
AddOn Author - Click to view AddOns

Forum posts: 314
File comments: 43
Uploads: 1
In Cataclysm, Blizzard are implementing some standard functions and events to indicate incoming heal amounts.

As such the authors of LiBHealComm-4.0 have stated that they will no longer update their library when Cataclysm is released.

Do not worry! I have already knocked out an oUF module to use these new functions and events to provide similar functionality to oUF_HealComm4.

I'll provide more details once addons are enabled on the beta and I have been able to test my new module.
Report comment to moderator  
Reply With Quote
Unread 07-19-10, 08:50 AM  
yj589794
A Rage Talon Dragon Guard
AddOn Author - Click to view AddOns

Forum posts: 314
File comments: 43
Uploads: 1
To do that you would need to add your own text formatting routine.

Somelike:
Code:
local function mytextformat(value)
	return string.format("+%d", value)
end
and in your layout assign it with:
Code:
self.HealCommTextFormat = mytextformat
Last edited by yj589794 : 07-19-10 at 08:51 AM.
Report comment to moderator  
Reply With Quote
Unread 07-18-10, 02:08 PM  
Toran
A Nerdscale Dorkin
 
Toran's Avatar
Premium Member

Forum posts: 143
File comments: 433
Uploads: 0
What would I adjust if I wanted to add a "+" in front of all the incoming heal amounts?
Report comment to moderator  
Reply With Quote
Unread 07-13-10, 05:04 PM  
DeathKoil
A Kobold Labourer

Forum posts: 0
File comments: 2
Uploads: 0
Re: Re: shortVal

Originally posted by yj589794
The bit that is missing is shortVal itself. This should be your own routine for taking the incoming heal value and formatting it into a value you want to display.
That's ironic since I decided instead of searching I'd just write my own and call it ShorValue()

Thanks for the response!


DK
Report comment to moderator  
Reply With Quote
Unread 07-13-10, 04:04 PM  
yj589794
A Rage Talon Dragon Guard
AddOn Author - Click to view AddOns

Forum posts: 314
File comments: 43
Uploads: 1
Re: shortVal

Originally posted by DeathKoil
Hello there. I'm trying to get this setup on my unit frames and raid frames... but I'm having some trouble. I just got the newest version (v2.2.2), and I have the code to make HealComm4 work with my unitframes up and running, with the exception of the line:
self.HealCommTextFormat = shortVal

This seems to do nothing as all heals are displayed as their "full" value (example: 10778) instead of their "short" value (same example: 10.8K)

Other than this one problem, everything else is fine. Can someone point me in the right direction?


DK
The bit that is missing is shortVal itself. This should be your own routine for taking the incoming heal value and formatting it into a value you want to display.
something like:
Code:
local function shortVal(value)
	local returnValue = ''

	if value > 1e6 then
		returnValue = format('%dm', value / 1e6)
	elseif value > 1e3 then
		returnValue = format('%dk', value / 1e3)
	else
		returnValue = format('%d', value)
	end

	return returnValue
end
Report comment to moderator  
Reply With Quote
Unread 07-13-10, 04:00 PM  
DeathKoil
A Kobold Labourer

Forum posts: 0
File comments: 2
Uploads: 0
shortVal

Hello there. I'm trying to get this setup on my unit frames and raid frames... but I'm having some trouble. I just got the newest version (v2.2.2), and I have the code to make HealComm4 work with my unitframes up and running, with the exception of the line:
self.HealCommTextFormat = shortVal

This seems to do nothing as all heals are displayed as their "full" value (example: 10778) instead of their "short" value (same example: 10.8K)

Other than this one problem, everything else is fine. Can someone point me in the right direction?


DK
Report comment to moderator  
Reply With Quote
Unread 04-23-10, 10:52 PM  
Destrominos
A Wyrmkin Dreamwalker
AddOn Author - Click to view AddOns

Forum posts: 56
File comments: 62
Uploads: 1
Originally posted by yj589794
OK, you can ignore what I wrote for oUF_ALZA as it includes the original oUF_HealComm by default.

What you would need to do is remove the exisiting oUF_HealComm and replace it with oUF_HealComm4, including all the extra config options that have been added.

It's not going to be the easiest of jobs, so try contacting ALZA and see if he would consider updating the healcomm support included in oUF_ALZA.
Thank you very much, I went in and redid all of the old HealComm stuff to HealComm4 and got everything working perfectly.
Report comment to moderator  
Reply With Quote
Unread 04-23-10, 10:26 PM  
Destrominos
A Wyrmkin Dreamwalker
AddOn Author - Click to view AddOns

Forum posts: 56
File comments: 62
Uploads: 1
Okay, thank you very much.
Report comment to moderator  
Reply With Quote
Unread 04-23-10, 07:21 PM  
yj589794
A Rage Talon Dragon Guard
AddOn Author - Click to view AddOns

Forum posts: 314
File comments: 43
Uploads: 1
OK, you can ignore what I wrote for oUF_ALZA as it includes the original oUF_HealComm by default.

What you would need to do is remove the exisiting oUF_HealComm and replace it with oUF_HealComm4, including all the extra config options that have been added.

It's not going to be the easiest of jobs, so try contacting ALZA and see if he would consider updating the healcomm support included in oUF_ALZA.
Report comment to moderator  
Reply With Quote
Unread 04-23-10, 05:46 PM  
yj589794
A Rage Talon Dragon Guard
AddOn Author - Click to view AddOns

Forum posts: 314
File comments: 43
Uploads: 1
It's more than likely due to oUF_ALZA loading before oUF_HealComm4, as by default addons are loaded in alphabetical order.

To fix it you have 2 options:

A) Add oUF_HealComm4 as an optional dependency in the .toc for oUF_ALZA
B) Embed oUF_HealComm4 within the oUF_ALZA layout


I'd recommend trying option A) first, but I have seem some situations where WoW still fails to load optional dependencies first.
For option B) try looking at layouts that already embed oUF_HealComm4.
Report comment to moderator  
Reply With Quote
Unread 04-23-10, 10:35 AM  
Destrominos
A Wyrmkin Dreamwalker
AddOn Author - Click to view AddOns

Forum posts: 56
File comments: 62
Uploads: 1
For some reason I can't get this to work with oUF_ALZA..

--[[ oUF_HealComm4 support ]]
if(IsAddOnLoaded("oUF_HealComm4")) then
self.HealCommBar = CreateFrame('StatusBar', nil, self.Health)
self.HealCommBar:SetHeight(0)
self.HealCommBar:SetWidth(0)
self.HealCommBar:SetStatusBarTexture(self.Health:GetStatusBarTexture():GetTexture())
self.HealCommBar:SetStatusBarColor(0, 1, 0, 0.25)
self.HealCommBar:SetPoint('LEFT', self.Health, 'LEFT')

-- optional flag to show overhealing
self.allowHealCommOverflow = true
end
is what I have entered..

Anyone know how to get this working for it?
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: