+ Reply to Thread
Page 1 of 2 1 2 LastLast
Results 1 to 15 of 19
Like Tree4Likes

Thread: [Gadget] Gadget HealFrame modification

  1. #1
    Rift Chaser Lifeismystery's Avatar
    Join Date
    Dec 2010
    Posts
    341

    Default [Gadget] Gadget HealFrame modification

    Hi guys.
    As a healer I need to see the timer and stacks of my HoTs on the raid frames, and also stacks and timer on the debuff.

    From all add-ons which change default raid frames I like Gadget-> HealFrame addon.
    But in the standard version of this addon timer and stacks are not displayed, so I began to study lua and added stacks and timer.
    How it looks -> [Gadget] Gadget HealFrame modification-0_d6c25_b52047a8_orig.jpg

    How to do it:

    1. Gadget/wtLibUnitFrame/templates/HealFrame.lua debuff

    Code:
    id="buffPanelDebuffs", type="BuffPanel", parent="frameBackdrop", layer=30,
    attach = {{ point="BOTTOMRIGHT", element="frameBackdrop", targetPoint="BOTTOMRIGHT", offsetX=-1, offsetY=-1 }},
    --visibilityBinding="id",
    -- Type Specific Element Configuration
    rows=1, cols=6, iconSize=16, iconSpacing=1, borderThickness=1,
    auraType="debuff", 
    growthDirection = "left_up",
    timer = true, timerSize = 14, outline=true, color={r=1,g=1,b=0,a=1},
    stack = true, stackSize = 15, outline=true,
    You can comment out "timer = true" if you don't want to display debuff timer
    You can comment out "stack = true" if you don't want to display debuff stacks.

    2. Gadget/wtLibUnitFrame/templates/HealFrame.lua HoTs
    Code:
    id="buffPanelHoTs", type="BuffPanel", semantic="HoTPanel", parent="frameBackdrop", layer=30,
    attach = {{ point="TOPRIGHT", element="frameBackdrop", targetPoint="TOPRIGHT", offsetX=-1, offsetY=1 }},
    rows=1, cols=6, iconSize=20, iconSpacing=0, borderThickness=1,
    auraType="hot",selfCast=true, 
    growthDirection = "left_up",
    timer = true, timerSize = 14, outline=true, color={r=1,g=1,b=0,a=1},
    stack = true, stackSize = 15, outline=true,
    You can comment out "timer = true" if you don't want to display HoTs timer
    You can comment out "stack = true" if you don't want to display HoTs stacks.

    3. Gadget/wtLibUnitFrame/elements/wtLabel.lua To make outline font -> line 59

    Code:
    if config.outline then
    		self:SetEffectGlow({ strength = 3 })
    	end
    4. Gadget/wtLibUnitFrame/elements/wtBuffPanel.lua
    To change location of the timer and stacks in tray icon's HoT - go to->

    Code:
    self.config.timerSize = config.timerSize or 0
    	self.config.timerOffsetX = config.timerOffsetX or 0
    	self.config.timerOffsetY = config.timerOffsetY or 7
    	
    	self.config.stackSize = config.stackSize or 0
    	self.config.stackOffsetX = config.stackOffsetX or 0
    	self.config.stackOffsetY = config.stackOffsetY or -5
    5. Gadget/wtLibUnitFrame/elements/wtBuffPanel.lua
    Set font timer and stacks outline - go to->
    add code
    Code:
    if config.outline then
    		      icon.txtTimer:SetEffectGlow({ strength = 3 })
    	          end
    like here
    Code:
    		-- Are timers required?
    		if self.config.timerSize > 0 then
    			icon.txtTimer = UI.CreateFrame("Text", WT.UnitFrame.UniqueName(), border)
    			icon.txtTimer:SetLayer(25)
    			icon.txtTimer:SetFontSize(self.config.timerSize)
    			 if config.outline then
    		      icon.txtTimer:SetEffectGlow({ strength = 3 })
    	          end
    			-- Always place the timer text over the center of the icon, and use offsets to move it to where it needs to be in the template
    			icon.txtTimer:SetPoint("CENTER", icon, "CENTER", self.config.timerOffsetX, self.config.timerOffsetY)
    			
    			if not WT.BuffTimers then WT.BuffTimers = {} end
    			table.insert(WT.BuffTimers, icon)
    		end
    
    		-- Are stack counters required?
    		if self.config.stackSize > 0 then			
    			icon.txtStack = UI.CreateFrame("Text", WT.UnitFrame.UniqueName(), border)
    			icon.txtStack:SetLayer(25)
    			icon.txtStack:SetFontSize(self.config.stackSize)
    			icon.txtStack:SetFontColor(1,1,0,1)
    			 if config.outline then
    		      icon.txtStack:SetEffectGlow({ strength = 3 })
    	          end
    			local bgColor = self.config.stackBackgroundColor
    			if bgColor then			
    				icon.txtStack:SetBackgroundColor(bgColor.r, bgColor.g, bgColor.b, bgColor.a or 1.0)
    			end
    Last edited by Lifeismystery; 08-29-2013 at 10:48 PM.

  2. #2
    Rift Chaser Lifeismystery's Avatar
    Join Date
    Dec 2010
    Posts
    341

    Default timer

    5. Gadget/wtLibUnitFrame/elements/wtBuffPanel.lua
    How to delete symbol "s" from timer in tray icon's HoT - go to->
    Code:
    elseif remaining < 60 then
    		--txt = remaining .. "s"
    		txt = remaining .. ""
    6. How to change raid frame colors
    Gadget/wtLibUnitFrame/templates/HealFrame.lua
    Code:
    -- Generic Element Configuration
    				id="barHealth", type="Bar", parent="frameBackdrop", layer=10,
    				attach = {
    		{ point="TOPLEFT", element="frameBackdrop", targetPoint="TOPLEFT", offsetX=2, offsetY=2 },
    		{ point="BOTTOMRIGHT", element="barResource", targetPoint="TOPRIGHT", offsetX=0, offsetY=0 },
    				},
    				growthDirection="right",
    				binding="healthPercent",
    				backgroundColor={r=0, g=0, b=0, a=1},				
    				raidHealthColor2={r=205,g=204,b=153,a=1},
    				colorBinding="raidHealthColor2",
    +
    Code:
    WT.Unit.CreateVirtualProperty("raidHealthColor2", { "id", "cleansable", "offline" },
    	function(unit)
    		if unit.cleansable then
    			return { r=0.5, g=0, b=0.5, a=1 }
    		elseif unit.offline then
    			return { r=0, g=0, b=0, a=0.7}
    		else
    			return { r=205,g=204,b=153,a=1 }
    		end
    	end)
    How its look http://img-fotki.yandex.ru/get/6708/..._7a778958_orig
    Last edited by Lifeismystery; 08-31-2013 at 10:37 PM.

  3. #3
    Rift Chaser Lifeismystery's Avatar
    Join Date
    Dec 2010
    Posts
    341

    Default [Gadget] Gadget CastBar Border

    How to add border on cast bar ->
    Gadget/wtCastbarGadget.lua
    after line 23
    Code:
    		Library.LibSimpleWidgets.SetBorder("plain", unitFrame, 2, 0, 0, 0, 1)
    then, after line 50
    Code:
    	  else 	
    	    Library.LibSimpleWidgets.SetBorder("plain", unitFrame, 2, 0, 0, 0, 0)
    You can change with and color border SetBorder(width, r, g, b, a)

    To make outline font and change font size ->
    Code:
    	castBar.labelCast = castBar:CreateElement(
    	{
    		id="labelCast", type="Label", parent="frame", layer=26,
    		attach = {{ point="CENTERLEFT", element="barCast", targetPoint="CENTERLEFT", offsetX=6, offsetY=0 }},
    		visibilityBinding="castName",
    		text="{castName}", default="", fontSize=20, outline = true,
    	})
    
    	if configuration.showCastTime then
    		castBar.labelTime = castBar:CreateElement(
    		{
    			id="labelTime", type="Label", parent="frame", layer=26,
    			attach = {{ point="BOTTOMRIGHT", element="barCast", targetPoint="BOTTOMRIGHT", offsetX=-4, offsetY=-4 }},
    			visibilityBinding="castName",
    			text="{castTime}", default="", fontSize=10, outline = true,
    		})
    [Gadget] Gadget HealFrame modification-2013-08-28_185447.jpg
    Last edited by Lifeismystery; 08-28-2013 at 07:00 AM.

  4. #4
    Rift Chaser
    Join Date
    Jan 2012
    Posts
    355

    Default

    how come i can't set the font to outline? The config line is already there, but i'm not seeing the font as outline. Is there any additional option that i need to make?

  5. #5
    Rift Chaser Lifeismystery's Avatar
    Join Date
    Dec 2010
    Posts
    341

    Default

    Quote Originally Posted by polarshift View Post
    how come i can't set the font to outline? The config line is already there, but i'm not seeing the font as outline. Is there any additional option that i need to make?
    it was in first post
    3. Gadget/wtLibUnitFrame/elements/wtLabel.lua To make outline font -> line 59

    Code:
    if config.outline then
    		self:SetEffectGlow({ strength = 3 })
    	end
    Last edited by Lifeismystery; 08-29-2013 at 09:48 AM.

  6. #6
    Rift Chaser
    Join Date
    Jan 2012
    Posts
    355

    Default

    yes, there line was already there but i still can't make it to outline.

  7. #7
    Rift Chaser Lifeismystery's Avatar
    Join Date
    Dec 2010
    Posts
    341

    Default

    Quote Originally Posted by polarshift View Post
    yes, there line was already there but i still can't make it to outline.
    Sorry, i fogot about it

    5. Gadget/wtLibUnitFrame/elements/wtBuffPanel.lua
    Set font timer and stacks outline - go to->
    add code
    Code:
    if config.outline then
    		      icon.txtTimer:SetEffectGlow({ strength = 3 })
    	          end
    like here
    Code:
    		-- Are timers required?
    		if self.config.timerSize > 0 then
    			icon.txtTimer = UI.CreateFrame("Text", WT.UnitFrame.UniqueName(), border)
    			icon.txtTimer:SetLayer(25)
    			icon.txtTimer:SetFontSize(self.config.timerSize)
    			 if config.outline then
    		      icon.txtTimer:SetEffectGlow({ strength = 3 })
    	          end
    			-- Always place the timer text over the center of the icon, and use offsets to move it to where it needs to be in the template
    			icon.txtTimer:SetPoint("CENTER", icon, "CENTER", self.config.timerOffsetX, self.config.timerOffsetY)
    			
    			if not WT.BuffTimers then WT.BuffTimers = {} end
    			table.insert(WT.BuffTimers, icon)
    		end
    
    		-- Are stack counters required?
    		if self.config.stackSize > 0 then			
    			icon.txtStack = UI.CreateFrame("Text", WT.UnitFrame.UniqueName(), border)
    			icon.txtStack:SetLayer(25)
    			icon.txtStack:SetFontSize(self.config.stackSize)
    			icon.txtStack:SetFontColor(1,1,0,1)
    			 if config.outline then
    		      icon.txtStack:SetEffectGlow({ strength = 3 })
    	          end
    			local bgColor = self.config.stackBackgroundColor
    			if bgColor then			
    				icon.txtStack:SetBackgroundColor(bgColor.r, bgColor.g, bgColor.b, bgColor.a or 1.0)
    			end

  8. #8
    General of Telara Hawkmoon0028's Avatar
    Join Date
    Jan 2011
    Posts
    926

    Default

    I have what might initially appear to be a dumb question, but....


    Why not just package your own version of the HealFrames instead of posting the code to be modified? Just curious, really.

    Hawkemoon- Cleric- Greybriar
    Waiting for: Star Citizen

  9. #9
    Rift Chaser Lifeismystery's Avatar
    Join Date
    Dec 2010
    Posts
    341

    Default

    Quote Originally Posted by Hawkmoon0028 View Post
    I have what might initially appear to be a dumb question, but....


    Why not just package your own version of the HealFrames instead of posting the code to be modified? Just curious, really.
    I dont know how

    I work every day to make the raid frames look like EvlUI(WoW interface addon). I'm trying to add frame border and make them transparent. But i dont have progress in this case yet.

  10. #10
    Telaran
    Join Date
    Oct 2012
    Posts
    69

    Default

    Why if I added this:

    WT.Unit.CreateVirtualProperty("raidHealthColor2", { "id", "offline" },
    function(unit)
    if unit.offline then
    return { r=0, g=0, b=0, a=0.5}
    else
    return { r=205,g=204,b=153,a=1 }
    end
    end)

    There is a warning pop up said "Wrn: duplicate CreateVirtualProperty" in the General Chat?

  11. #11
    Rift Chaser Lifeismystery's Avatar
    Join Date
    Dec 2010
    Posts
    341

    Default

    Quote Originally Posted by Castan View Post
    Why if I added this:

    WT.Unit.CreateVirtualProperty("raidHealthColor2", { "id", "offline" },
    function(unit)
    if unit.offline then
    return { r=0, g=0, b=0, a=0.5}
    else
    return { r=205,g=204,b=153,a=1 }
    end
    end)

    There is a warning pop up said "Wrn: duplicate CreateVirtualProperty" in the General Chat?
    Because you have 2 VirtualProperty with name "raidHealthColor2"
    WT.Unit.CreateVirtualProperty("raidHealthColor2", { "id", "cleansable" },
    WT.Unit.CreateVirtualProperty("raidHealthColor2", { "id", "offline" },


    Delete them and add

    Code:
    WT.Unit.CreateVirtualProperty("raidHealthColor2", { "id", "cleansable", "offline" },
    	function(unit)
    		if unit.cleansable then
    			return { r=0.5, g=0, b=0.5, a=1 }
    		elseif unit.offline then
    			return { r=0, g=0, b=0, a=0.7}
    		else
    			return { r=205,g=204,b=153,a=1 }
    		end
    	end)
    Last edited by Lifeismystery; 08-31-2013 at 10:36 PM.

  12. #12
    Rift Chaser Lifeismystery's Avatar
    Join Date
    Dec 2010
    Posts
    341

    Default

    Im done with modification, and posted on ruftui http://www.riftui.com/downloads/info...UnitFrame.html

  13. #13
    Soulwalker
    Join Date
    Oct 2013
    Posts
    1

    Default

    Does that addon allow me to bind mouse buttom to click on frame to use it or I have to use keyboard? If yes, how?
    Last edited by Dadits; 10-25-2013 at 08:06 AM.

  14. #14
    Rift Chaser Lifeismystery's Avatar
    Join Date
    Dec 2010
    Posts
    341

    Default

    Quote Originally Posted by Dadits View Post
    Does that addon allow me to bind mouse buttom to click on frame to use it or I have to use keyboard? If yes, how?
    Yes. You can read it on addon's info on Gadgets on RiftUI | Gadgets on Curse

    Macros

    The raid and group frames allow you to specify macros for various mouse buttons and the mouse wheel. These are standard RIFT macros, with a couple of extra Gadgets features:

    Use @unit to refer to the unit the frame is showing. For example "cast @unit Healing Breath".

    Use modifer it you want:

    Code:
    cast [shift] @unit Symbol of the Torch
    cast Symbol of the Sun
    Use the following syntax to have a macro carry out different actions depending on your current role:

    Code:
    :if role == 1 or role == 6 then
    target @unit
    :end
    :if role == 2  then
    target @unit
    cast Healing Spray
    :end
    :if role == 3 or role == 4 or role == 5 then
    cast [shift] @unit Symbol of the Torch
    cast @unit Symbol of the Sun
    :end
    Open window Modify Gadgets, and enter your macros
    [Gadget] Gadget HealFrame modification-2013-10-18_202128.jpg
    Last edited by Lifeismystery; 10-25-2013 at 03:07 PM.

  15. #15
    RIFT Guide Writer Deeew's Avatar
    Join Date
    Dec 2010
    Posts
    2,183

    Default

    Currently if I Show Hot's, as a chloro I see lots of un-needed spells such as Healing Balance. Is there a way we can have an ignore list.

    Alternatively, It would be useful for me to show on the raid frame if someone has a spell affect on them, for example Nefarious greater proc. Is there we can have a list we can modify to show specific spells?

    If I could modify the list as what is considered HoT's, then I could remove Healing Balance, and Add, the Nefarious greater proc.

    Any ideas? BTW - this addon is really really nice.
    Those that can, do. Those that can't, write guides on the forums.
    Quote Originally Posted by TrionBrasse View Post
    In all seriousness, we don't expect everyone to still be playing SFP

+ Reply to Thread
Page 1 of 2 1 2 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts