Download
(1010Kb)
Download
Updated: 12-15-20 11:16 AM
Pictures
File Info
Compatibility:
Shadowlands pre-patch (9.0.1)
Updated:12-15-20 11:16 AM
Created:07-03-09 12:57 AM
Downloads:62,566
Favorites:263
MD5:

Neav UI  Popular! (More than 5000 hits)

Version: 9.0.4
by: Neal, ballagarba, thomasjohnshannon

Neav UI
This UI compilation will work on all resolution.

I will not help with questions
Most of the addons in this compilation is only configurable via the supplied Lua config files (config.lua), so some basic programming knowledge is highly recommended but not required. A lot of the options are basically setting the value to either true or false depending on if you want to enable or disable the feature.

AddOns include
!Beautycase
!Colorz
nBuff
nChat
nCore
nMainbar
nMinimap
nPlates (by thomasjohnshannon)
nPower
nTooltip
oUF (by Haste)
oUF_Neav
oUF_NeavRaid

Thanks to Haste, kerrang, zork, Tuller, and many more for their great AddOns. And thomasjohnshannon/Grimsbain for making Neav UI compatible with Legion.

Information
A lot of the addons have a config.lua file where you can change some settings. So look first into this file before you ask something! Some addons like nCore, oUF_Neav and oUF_NeavRaid have an in-game configuration.

How can I move the player, target, focus, boss and arena frames?
Use the /neav slash command to toggle the anchors to move the frames around.

How can I move the Pet-, Stance- or Possessbar?
Press Shift + Alt and drag with your left mouse button on the first button of the Pet-, Stance- or Possessbar to move the them.

Commands
/neavrt to move the raid frames.
/rolecheck or /rcheck to do a role check.
/ntooltip toggles the tooltip anchor.
/alertframemover toggles the "talking head" anchor.
/neavcast toggles the anchors for the castbars.
/neavbag toggles the bag bar.
/moveextraactionbar toggles the anchor for the extra action button.

The latest updates and changes can be found on Github.

v9.0.4

- TOC update.
- nPlates: Updated to 2.73.
- nCore: Fix issue with Deadly Boss Mods (DBM) skinning. (thanks @jsimpson)

v9.0.3

- nMinimap: Fixed position and size of the garrison button. (thanks @L3n1n)
- nPower: Handle GetRuneCooldown for death knights sometimes returning nil and causing errors.

v9.0.2

- oUF_MovableFrames: Fix "attempt to call method 'SetBackdrop' (a nil value)" error (thanks @Kkthnx).
- nCore: Fix "attempt to perform arithmetic on local 'leftX'" error on map (thanks @Kkthnx).
- nPower: Disable the health text by default.
- nPower: Fix arrows not showing when first logging in.
- nTooltip: Show player titles by default.

v9.0.1

- Initial support for Shadowlands pre-patch.

v8.0.2

- nPlates: Updated to 2.60.
- nBuff: Fix buffs sometimes not showing after reload.
- nMainbar: Prevent the fake and real bottom right bar to be shown at the same time.
- nMainbar: Fix border difference between the fake bottom right bar and the regular bars.
- nCore: Now more options can be changed without a restart.
- Misc bug fixes.

v8.0.1

- oUF_NeavRaid: Added in-game configuration.
- oUF_Neav: Added in-game configuration.
- nCore: Added in-game configuration.
- Various bug fixes to most addons.

v8.0.0

- Compatible with 8.0

v7.3.5

- nMainbar: Option added to scale the side bars individually.
- nMinimap: Raid lockout now shown in the clock tooltip.
- oUF_NeavRaid: Use strict group sorting.
- nCore: Tweaks and fixes for the Order Hall bar.
- nChat: Inherit font (useful for people not using the default font).
- nChat: Properly skin whisper windows.
- nChat: Fixed ding sound on whisper.
- nPower: Option to show health percent above power bar (see nPower/config.lua).
- oUF: Updated to v7.0.15.

v7.3.0

- oUF: Updated to v7.0.6.
- nPlates: Updated to v2.40.
- nChat: The copy text box now works again (thanks Rainrider).
- nChat: New ignoreArrows option added (thanks Grimsbain).
- nChat: Added option to show/hide the quick join button (thanks Grimsbain).
- nCore: Modified the "On Demand" text in the addon list window (thanks Grimsbain).
- nCore: Added a module that modifies the dressroom windows to allow the user to remove all displayed gear (thanks Grimsbain).
- nCore: Added a module that displays an alert when a vignette is detected (thanks Grimsbain).
- nCore: Updated Skada skin (thanks Grimsbain).
- nMinimap: Fixed mail icon (thanks Grimsbain).
- nMinimap: Added check for lagHome to prevent the memory tooltip from showing when the game is first loading (thanks Grimsbain).
- nTooltip: Added some new tooltip types (thanks Grimsbain).
- oUF_Neav: Updated HealthPrediction to handle new oUF elements (thanks Grimsbain).
- oUF_Neav: Updated FormatValue function to be more exact and be able to handle larger numbers (thanks Grimsbain).
- oUF_NeavRaid: Dropped smartthreat module for default oUF element (thanks Grimsbain).
- oUF_NeavRaid: Updated HealthPrediction to handle new oUF elements (thanks Grimsbain).
- oUF_NeavRaid: Legion auras added (thanks Grimsbain).

v7.2.1

- nPlates: Updated to v2.28 (should fix some issues introduced in patch 7.2).

v7.2.0

- nMainbar: Clicking the artifact bar opens the artifact weapon frame.
- nCore: The mail module has been removed since Blizzard added this to default frames.
- nPower: Fix bad argument bug to UnitPowerMax.

v7.1.2

- oUF_Neav: Fix issue with the alternate resource bar for druids always showing.

v7.1.1

- nCore: Fix coordinates errors while opening the map in an instance or raid.

v7.1.0

- Add option to show class coloured health bar on player frame.
- The "alert frame mover" has been removed from nCore. Use ls: Toasts instead if you want to customize this.
- Use the same texture and colors for heal prediction and absorbs as the default frames.
- Misc smaller bug fixes.
- Patch 7.1 fixes.

v7.0.3

- nPlates and nPower are back thanks to thomasjohnshannon.
- Added option to oUF_Neav to show target debuffs above the player frame.
- Added option to oUF_Neav to only show player buffs/debuffs on target.
- Added a slash command (`/neavbag`) to nMainbar to toggle the new bag bar.
- Made the arena and boss frame moveable by pressing shift-alt and dragging (outside of combat).
- The alert frame (where garrison missions etc. show up) has been moved to the top instead of the bottom.
- Party, arena and boss frames now movable while pressing alt-shift and dragging (outside of combat).

v7.0.0

Huge props to thomasjohnshannon/Grimsbain who basically made all the work!

- nPower has been removed in favour for the new nameplate and resource options in Legion.
- nPlates has been removed. Too much work was required to make it compatible with Legion, and it didn't offer much functionality over the default nameplates. Might, or might not make a comeback in the future.
- nMainbar added a bar to toggle the bags.
- Item level has been removed nTooltip.
- The "disable fade" option has been removed from nTooltip.
- The custom drop down to move player/target/focus frame has been removed and replaced with the same mechanism used for the pet-/stancebar; i.e. press alt-shift and drag with your mouse. A new slash command has also been added to reset the frames (/neavreset).
- Misc bugs and fixes to make it compatible with Legion.

v. 6.2.0

- Support for patch 6.2.0
- Removed glow from the spiral on healing indicators
- Level text should now be properly centered on the player and target frame
- Scaled down and moved the garrison icon on the minimap
- Add healing indicator for the druid lvl 100 spell "Germination"
- Skin garrison tooltips
- Add Netherstorm flag indicator to the raid frames
- Support 6 Chi for Monks
- Add Timewalker and Mythic text to Minimap
- Improve out-of-range responsiveness on actionbars
- Other minor bug fixes and tweaks

v. 6.0.0

- Updates to work with Warlords of Draenor.

v. 5.4.1

- Added Siege of Orgrimmar raid debuffs to the raid frames
- Added option to hide unit tooltips during combat
- Added option to show the chat input box above the chat window (default: true)
- Option to hide the coalesced/interactive realm text from the tooltip
- Fix the error when clicking the Player vs. Player option in the picomenu
- Add absorb bar to player, target, focus and pet frame
- Fix tooltip concatenation error in scenarios

v. 5.4.0

- TOC updates (50400)
- Added an absorb bar to the raid frames (like incoming heals, except yellow)
- Option to show a border around the chat frame (#28)
- Show a tooltip on the watchframe describing how to move it (#34)

v. 5.3.0

- Abbreviate Instance chat type in nChat.
- Lower frame strata for the warlock power frame, so it doesn't obscure the map.
- Add skiplist to autogreed in nCore. See nCore/modules/autogreed.lua.
- Added Throne of Tunder debuffs to oUF_NeavRaid.
- Other minor fixes and tweaks.

v. 5.1.0

- Nameplate updates.
- Chi fixes for nPower.
- Mostly TOC updates.

v. 5.0.6

- Open mail module now shows amount of money collected.
- Nameplate threat highlight should now be correctly hidden out of combat.
- Abbreviate some more num pad keys for example: Num Pad / => Nu/ and Num Pad * => Nu*
- Correctly display the dungeon/raid difficulty on the minimap.
- Unit frames should now hide during pet battle.
- NEW: Added a threat indicator on the target frame, identical to the one Blizzard uses. You can turn it off in the config.

v. 5.0.5

- Fixes for the arena frames (hopefully shouldn't throw anymore errors at least).
- There's now a whitelist filter for buffs on the arena frames.
- Demonic Gateway timers for warlock (Blizzard style).
- Fix the "ghost buff" buff on targets.
- MoP raid debuffs.
- Fix the battletag bug on friendslist.
- Added symbiosis info and spec to tooltip.
- Now correctly display item level on tooltip.
- Correctly skin editbox on all chat windows.
- Minor tweaks...

v. 5.0.4b

- Battle.Net fixes for friends tab on nMinimap.
- oUF_SpellRange now reports out of range correctly.
- Fixes for the colorPlayerDebuffsOnly option.

v. 5.0.4

- Updated for patch 5.0.4.
- nMainbar now supports a minimum alpha on bars using mouseover.
- Minor tweaks here and there.

v. 4.3.0_1

- updated nMainbar
- updated oUF_Neav and oUF_NeavRaid
- updated nChat
- updated nMinimap
- updated nCore
- updated nBuff
- some small changes and additions

v. 4.3.0

- 4.3 compatible version
- changed version numbering scheme

v. 1.6.4

- updated for patch 4.2
Optional Files (2)
File Name
Version
Size
Author
Date
Type
7.3.2
678kB
09-03-17 07:19 AM
Addon
6.0.1
318kB
10-26-14 10:28 AM
Addon


Post A Reply Comment Options
Unread 12-13-09, 03:13 PM  
Korack
A Kobold Labourer
 
Korack's Avatar
AddOn Compiler - Click to view compilations

Forum posts: 0
File comments: 6
Uploads: 3
I just disabled nBuffs completely, then added player auras to oUF and moved them over to the minimap and scaled them up
Report comment to moderator  
Reply With Quote
Unread 12-13-09, 12:27 PM  
Generizer
A Kobold Labourer

Forum posts: 1
File comments: 11
Uploads: 0
Question about nBuff ... is there a way in the consolidated setup to not show debuffs? I have beduffs being show a different way.

Thanks in advance.
Report comment to moderator  
Reply With Quote
Unread 12-13-09, 11:46 AM  
Aschker
A Murloc Raider
AddOn Compiler - Click to view compilations

Forum posts: 6
File comments: 105
Uploads: 1
Something strange just popped up, noticed it on debuffs first. Timer doesnt display time properly for some reason, but not on the same buffs all the time, or from the same time remaining.. seems completely random.

Report comment to moderator  
Reply With Quote
Unread 12-12-09, 04:21 PM  
ballagarba
A Fallenroot Satyr
 
ballagarba's Avatar

Forum posts: 22
File comments: 472
Uploads: 0
Originally posted by Julchen
you cant remove the border by code... its the texture you have to edit
Oh, right. Thanks.

And for those who updated to the latest oUF and got the following errors:
oUF: Error: Handler for event [UNIT_COMBAT] on unit [player] does not exist.
oUF: Error: Handler for event [UNIT_COMBAT] on unit [target] does not exist.
oUF: Error: Handler for event [UNIT_COMBAT] on unit [focus] does not exist.

Here's a fix. In oUF_Neav\modules\oUF_CombatFeedback.lua change from
Code:
object:RegisterEvent("UNIT_COMBAT")
to
Code:
object:RegisterEvent("UNIT_COMBAT", combat)
Report comment to moderator  
Reply With Quote
Unread 12-12-09, 12:21 PM  
Julchen
A Deviate Faerie Dragon

Forum posts: 17
File comments: 54
Uploads: 0
Originally posted by ballagarba
MiniMapInstanceDifficulty is the banner frame name if you want to move/hide it.

Personally I did
Code:
MiniMapInstanceDifficulty:ClearAllPoints()
MiniMapInstanceDifficulty:SetPoint('BOTTOMRIGHT', Minimap, 0, -40)
Anyone got the code for removing that top border?
you cant remove the border by code... its the texture you have to edit
Report comment to moderator  
Reply With Quote
Unread 12-12-09, 11:21 AM  
ballagarba
A Fallenroot Satyr
 
ballagarba's Avatar

Forum posts: 22
File comments: 472
Uploads: 0
MiniMapInstanceDifficulty is the banner frame name if you want to move/hide it.

Personally I did
Code:
MiniMapInstanceDifficulty:ClearAllPoints()
MiniMapInstanceDifficulty:SetPoint('BOTTOMRIGHT', Minimap, 0, -40)
Anyone got the code for removing that top border?
Last edited by ballagarba : 12-12-09 at 12:18 PM.
Report comment to moderator  
Reply With Quote
Unread 12-11-09, 02:15 PM  
Julchen
A Deviate Faerie Dragon

Forum posts: 17
File comments: 54
Uploads: 0
nBuff

I think the issue is in line139: we have tu subtract the buffs which are consilidated...
so the correct line is:
Code:
local row = ceil((BUFF_ACTUAL_DISPLAY-buff.consolidated)/nBuff.button.buffPerRow)
i didnt test it
edit: doesnt work this way
edit2: the debuffposition should now work properly but im not 100 percent sure
Code:
_G.MINUTE_ONELETTER_ABBR = '|cffffffff%dm|r'
_G.HOUR_ONELETTER_ABBR = '|cffffffff%dh|r'
_G.DAY_ONELETTER_ABBR = '|cffffffff%dd|r'
_G.SECOND_ONELETTER_ABBR = '|cffffffff%d|r'

local CBuffs = false;
local numCBuffs = 0;

local function BuffFrame_SetPoint(self)
    local hasMainHandEnchant, _, _, hasOffHandEnchant = GetWeaponEnchantInfo()
    if (self and self:IsShown()) then
        self:ClearAllPoints()
        if (hasMainHandEnchant and hasOffHandEnchant) then
            self:SetPoint('TOPRIGHT', TempEnchant2, 'TOPLEFT', -nBuff.padding.x, 0)
            return
        elseif (hasMainHandEnchant or hasOffHandEnchant) then            
            self:SetPoint('TOPRIGHT', TempEnchant1, 'TOPLEFT', -nBuff.padding.x, 0)
            return
        elseif (not hasMainHandEnchant and not hasOffHandEnchant) then
            self:SetPoint('TOPRIGHT', TempEnchant1)
            return
        end
    end
end

	local button = ConsolidatedBuffs--Icon
    button:SetScale(nBuff.button.scale)
    button:SetWidth(32)
    button:SetHeight(32)
	
	ConsolidatedBuffsIcon:SetTexCoord(0.02	, 0.48, 0.02, .98)
	--(left,right,top,bottom) 
	
	local border = ConsolidatedBuffs:CreateTexture('$parentOverlay', 'ARTWORK')
	border:SetTexture(nBuff.button.borderBuff)
    border:SetTexCoord(0, 1, 0, 1)
    border:SetVertexColor(unpack(nBuff.button.buffBorderColor))
    border:ClearAllPoints()
    border:SetPoint('TOPRIGHT', button, 1, 1)
    border:SetPoint('BOTTOMLEFT', button, -1, -1)    
	
	button.Background = button:CreateTexture('$parentBackground', 'BACKGROUND')
    button.Background:SetPoint('TOPRIGHT', button.texture or border, 3.35, 3.35)
    button.Background:SetPoint('BOTTOMLEFT', button.texture or border, -3.35, -3.35)
    button.Background:SetTexture('Interface\\AddOns\\nBuff\\media\\textureBackground')
    button.Background:SetVertexColor(0, 0, 0, 1)
	
	ConsolidatedBuffsCount:ClearAllPoints()
    ConsolidatedBuffsCount:SetPoint('TOPRIGHT', button)
    ConsolidatedBuffsCount:SetFont(nBuff.button.countFont, nBuff.button.countFontsize, 'OUTLINE')
    ConsolidatedBuffsCount:SetShadowOffset(0, 0)
    ConsolidatedBuffsCount:SetDrawLayer('OVERLAY')
	
	ConsolidatedBuffs:ClearAllPoints()
    ConsolidatedBuffs:SetPoint('TOPRIGHT', Minimap, 'TOPLEFT', -15, 0)
    ConsolidatedBuffsIcon:SetAlpha(1)
	
if CBuffs then
	TemporaryEnchantFrame:SetPoint('TOPRIGHT', ConsolidatedBuffs, 'TOPLEFT', -nBuff.padding.x, 0)
else
	TemporaryEnchantFrame:SetPoint('TOPRIGHT', Minimap, 'TOPLEFT', -15, 0)
end

TempEnchant2:ClearAllPoints()
TempEnchant2:SetPoint('TOPRIGHT', TempEnchant1, 'TOPLEFT', -nBuff.padding.x, 0)

for i = 1, 2 do
    local button = _G['TempEnchant'..i]
    button:SetScale(nBuff.button.scale)
    button:SetWidth(32)
    button:SetHeight(32)

    local icon = _G['TempEnchant'..i..'Icon']
    icon:SetTexCoord(0.03, 0.97, 0.03, 0.97)

    local duration = _G['TempEnchant'..i..'Duration']
    duration:ClearAllPoints()
    duration:SetPoint('BOTTOM', button, 'BOTTOM', 0, -2)
    duration:SetFont(nBuff.button.durationFont, nBuff.button.durationFontsize,'OUTLINE')
    duration:SetShadowOffset(0, 0)
    duration:SetDrawLayer('OVERLAY')

    local border = _G['TempEnchant'..i..'Border']
    border:SetTexture(nBuff.button.borderDebuff)
    border:SetTexCoord(0, 1, 0, 1)
    border:SetVertexColor(0.9, 0.25, 0.9)
    border:ClearAllPoints()
    border:SetPoint('TOPRIGHT', button, 1, 1)
    border:SetPoint('BOTTOMLEFT', button, -1, -1)    
    
    button.Background = button:CreateTexture('$parentBackground', 'BACKGROUND')
    button.Background:SetPoint('TOPRIGHT', border, 3.35, 3.35)
    button.Background:SetPoint('BOTTOMLEFT', border, -3.35, -3.35)
    button.Background:SetTexture('Interface\\AddOns\\nBuff\\media\\textureBackground')
    button.Background:SetVertexColor(0, 0, 0, 1)
end 
	
function UpdateBuffAnchors()	
		local buff, previousBuff, aboveBuff;
		local numBuffs = 0;
		

		for i = 1, BUFF_ACTUAL_DISPLAY do
			buff = _G["BuffButton"..i];
			if ( buff.consolidated ) then
				if ( buff.parent == BuffFrame ) then
					numCBuffs = numCBuffs + 1;
					buff:SetParent(ConsolidatedBuffsContainer);
					buff.parent = ConsolidatedBuffsContainer;
					CBuffs = true;
				end
			else
				numBuffs = numBuffs + 1;
				index = numBuffs;
				if ( buff.parent ~= BuffFrame ) then
					buff.count:SetFontObject(NumberFontNormal);
					buff:SetParent(BuffFrame);
					buff.parent = BuffFrame;
				end
				buff:ClearAllPoints();
					if (index > 1 and mod(index, nBuff.button.buffPerRow) == 1) then
						if (index == nBuff.button.buffPerRow + 1) then
							buff:SetPoint('TOP', ConsolidatedBuffs, 'BOTTOM', 0, -nBuff.padding.y)
						else
							buff:SetPoint('TOP', aboveBuff, 'BOTTOM', 0, -nBuff.padding.y)
						end
						aboveBuff = buff;
					elseif (index == 1) then
						BuffFrame_SetPoint(buff)
					else
						buff:SetPoint('RIGHT',previousBuff, 'LEFT', -nBuff.padding.x, 0)
					end
					previousBuff = buff;
			end
		end
	end
hooksecurefunc("BuffFrame_UpdateAllBuffAnchors", UpdateBuffAnchors)


hooksecurefunc('DebuffButton_UpdateAnchors', function(self, index)
    local space = 31 + nBuff.padding.y
	local row = ceil((BUFF_ACTUAL_DISPLAY-numCBuffs)/nBuff.button.buffPerRow)
    
    if (row and row > 1) then
        rowspacing = -row * space
    else
        rowspacing = -space
    end
    
    local buff = _G[self..index]
    buff:ClearAllPoints()
	if (index > 1 and mod(index, nBuff.button.buffPerRow) == 1) then
		buff:SetPoint('TOP', _G[self..(index-nBuff.button.buffPerRow)], 'BOTTOM', 0, -nBuff.padding.y)
	elseif (index == 1) then
        buff:SetPoint('TOPRIGHT', ConsolidatedBuffs, 'BOTTOMRIGHT', 0, rowspacing)
	else
		buff:SetPoint('RIGHT', _G[self..(index-1)], 'LEFT', -nBuff.padding.x, 0)
	end
end)

hooksecurefunc('AuraButton_Update', function(self, index)
    local button = _G[self..index]
    if (button) then
        button:SetScale(nBuff.button.scale)
        button:SetWidth(32)
        button:SetHeight(32)
    end
        
    local icon = _G[self..index..'Icon']
    if (icon) then
        icon:SetTexCoord(0.03, 0.97, 0.03, 0.97)
    end
	
    local duration = _G[self..index..'Duration']
    if (duration) then
        duration:ClearAllPoints()
        duration:SetPoint('BOTTOM', button, 'BOTTOM', 0, -2)
        duration:SetFont(nBuff.button.durationFont, nBuff.button.durationFontsize,'OUTLINE')
        duration:SetShadowOffset(0, 0)
        duration:SetDrawLayer('OVERLAY')
    end

    local count = _G[self..index..'Count']
    if (count) then
        count:ClearAllPoints()
        count:SetPoint('TOPRIGHT', button)
        count:SetFont(nBuff.button.countFont, nBuff.button.countFontsize, 'OUTLINE')
        count:SetShadowOffset(0, 0)
        count:SetDrawLayer('OVERLAY')
    end
        
    local border = _G[self..index..'Border']
    if (border) then
        border:SetTexture(nBuff.button.borderDebuff)
        border:SetPoint('TOPRIGHT', button, 1, 1)
        border:SetPoint('BOTTOMLEFT', button, -1, -1)
        border:SetTexCoord(0, 1, 0, 1)
    end
    
    if (button and not border) then
        if (not button.texture) then
            button.texture = button:CreateTexture('$parentOverlay', 'ARTWORK')
            button.texture:SetParent(button)
            button.texture:SetTexture(nBuff.button.borderBuff)
            button.texture:SetVertexColor(unpack(nBuff.button.buffBorderColor))
            button.texture:SetPoint('TOPRIGHT', button, 1, 1)
            button.texture:SetPoint('BOTTOMLEFT', button, -1, -1)
        end
        
        local name = UnitAura('player', index)
        if (name == select(1, GetSpellInfo(34477)) or name == select(1, GetSpellInfo(57934))) then
            button.texture:SetVertexColor(1, 0, 1)
            button.texture:SetTexture(nBuff.button.borderDebuff)
        else
            button.texture:SetVertexColor(unpack(nBuff.button.buffBorderColor))
            button.texture:SetTexture(nBuff.button.borderBuff)
        end
    end
    
    if (button and not button.Background) then
        button.Background = button:CreateTexture('$parentBackground', 'BACKGROUND')
        button.Background:SetPoint('TOPRIGHT', button.texture or border, 3.35, 3.35)
        button.Background:SetPoint('BOTTOMLEFT', button.texture or border, -3.35, -3.35)
        button.Background:SetTexture('Interface\\AddOns\\nBuff\\media\\textureBackground')
        button.Background:SetVertexColor(0, 0, 0, 1)
    end
end)

--function UnitAura() return "TestAura", nil, "Interface\\Icons\\Spell_Nature_RavenForm", 9, nil, 120, 120, 1, 0 end
Last edited by Julchen : 12-12-09 at 09:47 AM.
Report comment to moderator  
Reply With Quote
Unread 12-11-09, 12:45 PM  
Hammerzan
A Kobold Labourer

Forum posts: 0
File comments: 2
Uploads: 0
Thx too Julchen

Julchen, thx! :-)

...for nBuff Consolidator and nMinimap
Report comment to moderator  
Reply With Quote
Unread 12-11-09, 12:05 PM  
Aschker
A Murloc Raider
AddOn Compiler - Click to view compilations

Forum posts: 6
File comments: 105
Uploads: 1
Thx for the name of the texture. Was looking for it.. I think im gonna anchor it to oUV_Neav_Player, then somewhere under the portrait.. Minimap is too far away :P Anchored debuffs to player frame too.. Might be usefull info for most of you, but maybe it will give you some ideas
Report comment to moderator  
Reply With Quote
Unread 12-11-09, 07:31 AM  
Julchen
A Deviate Faerie Dragon

Forum posts: 17
File comments: 54
Uploads: 0
Re: Re: nMinimap

Originally posted by ballagarba
Well I was mostly thinking of that you use the LFG button to exit (and enter?) dungeons instead of hearthstoning.
i mean the banner not the lfg button

edit: the debuff position looks a bit buggy
*has something todo with the debuff y-position and the number of buffs
edit2: ok I understand the banner now... I think we have to remove the ugly top of the banner; the position is good in my opinion
Last edited by Julchen : 12-11-09 at 08:43 AM.
Report comment to moderator  
Reply With Quote
Unread 12-11-09, 07:24 AM  
ballagarba
A Fallenroot Satyr
 
ballagarba's Avatar

Forum posts: 22
File comments: 472
Uploads: 0
Re: nMinimap

Originally posted by Julchen
The banner is only shown when you are in an instance or not? So it doesnt play a role that the banner overlap the lfg icon?!
What is the task of the banner? Does he only show if heroic or not and does the number tell how much member in group?

btw... you can find the banner texture under this name: 'UI-DungeonDifficulty-Button' under minimap so there is the posibbility to change the style and the position
Well I was mostly thinking of that you use the LFG button to exit (and enter?) dungeons instead of hearthstoning.

Ah cool...
Last edited by ballagarba : 12-11-09 at 07:24 AM.
Report comment to moderator  
Reply With Quote
Unread 12-11-09, 07:16 AM  
Julchen
A Deviate Faerie Dragon

Forum posts: 17
File comments: 54
Uploads: 0
nMinimap

The banner is only shown when you are in an instance or not? So it doesnt play a role that the banner overlap the lfg icon?!
What is the task of the banner? Does it only shows if heroic or not and does the number tell how much member in group?

btw... you can find the banner texture under this name: 'UI-DungeonDifficulty-Button' under minimap so there is the posibbility to change the style and the position
Last edited by Julchen : 12-11-09 at 07:23 AM.
Report comment to moderator  
Reply With Quote
Unread 12-11-09, 06:22 AM  
ballagarba
A Fallenroot Satyr
 
ballagarba's Avatar

Forum posts: 22
File comments: 472
Uploads: 0
Re: Re: nBuff

Originally posted by neenee
I added a wee bit of code to nMinimap.lua, to move the LFG minimap icon to the top-left corner.
Since you can't enter the BG queue and the LFG queue at the same time, the two associated icons can occupy the same space in the .lua without messing up your display/functionality in-game.

beneath:

Code:
MiniMapBattlefieldFrame:ClearAllPoints()
MiniMapBattlefieldFrame:SetPoint('TOPLEFT', Minimap, -2, 1)
add:

Code:
MiniMapLFGFrame:ClearAllPoints()
MiniMapLFGFrame:SetPoint('TOPLEFT', Minimap, -2, 1)
Sounds smart, but doesn't the LFG minimap icon overlap/gets overlapped by that new banner thing that tells you what kind of dungeon/raid you're currently in? Or do you have any way of moving that to? I couldn't get any frame name from it.
Last edited by ballagarba : 12-11-09 at 06:52 AM.
Report comment to moderator  
Reply With Quote
Unread 12-11-09, 05:47 AM  
neenee
A Murloc Raider
AddOn Author - Click to view AddOns

Forum posts: 4
File comments: 31
Uploads: 1
Re: nBuff

I added a wee bit of code to nMinimap.lua, to move the LFG minimap icon to the top-left corner.
Since you can't enter the BG queue and the LFG queue at the same time, the two associated icons can occupy the same space in the .lua without messing up your display/functionality in-game.

beneath:

Code:
MiniMapBattlefieldFrame:ClearAllPoints()
MiniMapBattlefieldFrame:SetPoint('TOPLEFT', Minimap, -2, 1)
add:

Code:
MiniMapLFGFrame:ClearAllPoints()
MiniMapLFGFrame:SetPoint('TOPLEFT', Minimap, -2, 1)
Report comment to moderator  
Reply With Quote
Unread 12-10-09, 03:50 AM  
Julchen
A Deviate Faerie Dragon

Forum posts: 17
File comments: 54
Uploads: 0
nBuff

I add ConsolidatedBuffs support. It seems to work but I havnt tested it for a long time.

You need the following texture
http://hotfile.com/dl/20096195/bd87d...rface.zip.html
and you have to replace the code in your nBuff.lua with this one
Code:
_G.MINUTE_ONELETTER_ABBR = '|cffffffff%dm|r'
_G.HOUR_ONELETTER_ABBR = '|cffffffff%dh|r'
_G.DAY_ONELETTER_ABBR = '|cffffffff%dd|r'
_G.SECOND_ONELETTER_ABBR = '|cffffffff%d|r'

local CBuffs = false;

local function BuffFrame_SetPoint(self)
    local hasMainHandEnchant, _, _, hasOffHandEnchant = GetWeaponEnchantInfo()
    if (self and self:IsShown()) then
        self:ClearAllPoints()
        if (hasMainHandEnchant and hasOffHandEnchant) then
            self:SetPoint('TOPRIGHT', TempEnchant2, 'TOPLEFT', -nBuff.padding.x, 0)
            return
        elseif (hasMainHandEnchant or hasOffHandEnchant) then            
            self:SetPoint('TOPRIGHT', TempEnchant1, 'TOPLEFT', -nBuff.padding.x, 0)
            return
        elseif (not hasMainHandEnchant and not hasOffHandEnchant) then
            self:SetPoint('TOPRIGHT', TempEnchant1)
            return
        end
    end
end

	local button = ConsolidatedBuffs--Icon
    button:SetScale(nBuff.button.scale)
    button:SetWidth(32)
    button:SetHeight(32)
	
	ConsolidatedBuffsIcon:SetTexCoord(0.02	, 0.48, 0.02, .98)
	--(left,right,top,bottom) 
	
	local border = ConsolidatedBuffs:CreateTexture('$parentOverlay', 'ARTWORK')
	border:SetTexture(nBuff.button.borderBuff)
    border:SetTexCoord(0, 1, 0, 1)
    border:SetVertexColor(unpack(nBuff.button.buffBorderColor))
    border:ClearAllPoints()
    border:SetPoint('TOPRIGHT', button, 1, 1)
    border:SetPoint('BOTTOMLEFT', button, -1, -1)    
	
	button.Background = button:CreateTexture('$parentBackground', 'BACKGROUND')
    button.Background:SetPoint('TOPRIGHT', button.texture or border, 3.35, 3.35)
    button.Background:SetPoint('BOTTOMLEFT', button.texture or border, -3.35, -3.35)
    button.Background:SetTexture('Interface\\AddOns\\nBuff\\media\\textureBackground')
    button.Background:SetVertexColor(0, 0, 0, 1)
	
	ConsolidatedBuffsCount:ClearAllPoints()
    ConsolidatedBuffsCount:SetPoint('TOPRIGHT', button)
    ConsolidatedBuffsCount:SetFont(nBuff.button.countFont, nBuff.button.countFontsize, 'OUTLINE')
    ConsolidatedBuffsCount:SetShadowOffset(0, 0)
    ConsolidatedBuffsCount:SetDrawLayer('OVERLAY')
	
	ConsolidatedBuffs:ClearAllPoints()
    ConsolidatedBuffs:SetPoint('TOPRIGHT', Minimap, 'TOPLEFT', -15, 0)
    ConsolidatedBuffsIcon:SetAlpha(1)
	
if CBuffs then
	TemporaryEnchantFrame:SetPoint('TOPRIGHT', ConsolidatedBuffs, 'TOPLEFT', -nBuff.padding.x, 0)
else
	TemporaryEnchantFrame:SetPoint('TOPRIGHT', Minimap, 'TOPLEFT', -15, 0)
end

TempEnchant2:ClearAllPoints()
TempEnchant2:SetPoint('TOPRIGHT', TempEnchant1, 'TOPLEFT', -nBuff.padding.x, 0)

for i = 1, 2 do
    local button = _G['TempEnchant'..i]
    button:SetScale(nBuff.button.scale)
    button:SetWidth(32)
    button:SetHeight(32)

    local icon = _G['TempEnchant'..i..'Icon']
    icon:SetTexCoord(0.03, 0.97, 0.03, 0.97)

    local duration = _G['TempEnchant'..i..'Duration']
    duration:ClearAllPoints()
    duration:SetPoint('BOTTOM', button, 'BOTTOM', 0, -2)
    duration:SetFont(nBuff.button.durationFont, nBuff.button.durationFontsize,'OUTLINE')
    duration:SetShadowOffset(0, 0)
    duration:SetDrawLayer('OVERLAY')

    local border = _G['TempEnchant'..i..'Border']
    border:SetTexture(nBuff.button.borderDebuff)
    border:SetTexCoord(0, 1, 0, 1)
    border:SetVertexColor(0.9, 0.25, 0.9)
    border:ClearAllPoints()
    border:SetPoint('TOPRIGHT', button, 1, 1)
    border:SetPoint('BOTTOMLEFT', button, -1, -1)    
    
    button.Background = button:CreateTexture('$parentBackground', 'BACKGROUND')
    button.Background:SetPoint('TOPRIGHT', border, 3.35, 3.35)
    button.Background:SetPoint('BOTTOMLEFT', border, -3.35, -3.35)
    button.Background:SetTexture('Interface\\AddOns\\nBuff\\media\\textureBackground')
    button.Background:SetVertexColor(0, 0, 0, 1)
end 
	
function UpdateBuffAnchors()	
		local buff, previousBuff, aboveBuff;
		local numBuffs = 0;

		for i = 1, BUFF_ACTUAL_DISPLAY do
			buff = _G["BuffButton"..i];
			if ( buff.consolidated ) then
				if ( buff.parent == BuffFrame ) then
					buff:SetParent(ConsolidatedBuffsContainer);
					buff.parent = ConsolidatedBuffsContainer;
					CBuffs = true;
				end
			else
				numBuffs = numBuffs + 1;
				index = numBuffs;
				if ( buff.parent ~= BuffFrame ) then
					buff.count:SetFontObject(NumberFontNormal);
					buff:SetParent(BuffFrame);
					buff.parent = BuffFrame;
				end
				buff:ClearAllPoints();
					if (index > 1 and mod(index, nBuff.button.buffPerRow) == 1) then
						if (index == nBuff.button.buffPerRow + 1) then
							buff:SetPoint('TOP', ConsolidatedBuffs, 'BOTTOM', 0, -nBuff.padding.y)
						else
							buff:SetPoint('TOP', aboveBuff, 'BOTTOM', 0, -nBuff.padding.y)
						end
						aboveBuff = buff;
					elseif (index == 1) then
						BuffFrame_SetPoint(buff)
					else
						buff:SetPoint('RIGHT',previousBuff, 'LEFT', -nBuff.padding.x, 0)
					end
					previousBuff = buff;
			end
		end
	end
hooksecurefunc("BuffFrame_UpdateAllBuffAnchors", UpdateBuffAnchors)


hooksecurefunc('DebuffButton_UpdateAnchors', function(self, index)
    local space = 31 + nBuff.padding.y
	local row = ceil(BUFF_ACTUAL_DISPLAY/nBuff.button.buffPerRow)
    
    if (row and row > 1) then
        rowspacing = -row * space
    else
        rowspacing = -space
    end
    
    local buff = _G[self..index]
    buff:ClearAllPoints()
	if (index > 1 and mod(index, nBuff.button.buffPerRow) == 1) then
		buff:SetPoint('TOP', _G[self..(index-nBuff.button.buffPerRow)], 'BOTTOM', 0, -nBuff.padding.y)
	elseif (index == 1) then
        buff:SetPoint('TOPRIGHT', ConsolidatedBuffs, 'BOTTOMRIGHT', 0, rowspacing)
	else
		buff:SetPoint('RIGHT', _G[self..(index-1)], 'LEFT', -nBuff.padding.x, 0)
	end
end)

hooksecurefunc('AuraButton_Update', function(self, index)
    local button = _G[self..index]
    if (button) then
        button:SetScale(nBuff.button.scale)
        button:SetWidth(32)
        button:SetHeight(32)
    end
        
    local icon = _G[self..index..'Icon']
    if (icon) then
        icon:SetTexCoord(0.03, 0.97, 0.03, 0.97)
    end
	
    local duration = _G[self..index..'Duration']
    if (duration) then
        duration:ClearAllPoints()
        duration:SetPoint('BOTTOM', button, 'BOTTOM', 0, -2)
        duration:SetFont(nBuff.button.durationFont, nBuff.button.durationFontsize,'OUTLINE')
        duration:SetShadowOffset(0, 0)
        duration:SetDrawLayer('OVERLAY')
    end

    local count = _G[self..index..'Count']
    if (count) then
        count:ClearAllPoints()
        count:SetPoint('TOPRIGHT', button)
        count:SetFont(nBuff.button.countFont, nBuff.button.countFontsize, 'OUTLINE')
        count:SetShadowOffset(0, 0)
        count:SetDrawLayer('OVERLAY')
    end
        
    local border = _G[self..index..'Border']
    if (border) then
        border:SetTexture(nBuff.button.borderDebuff)
        border:SetPoint('TOPRIGHT', button, 1, 1)
        border:SetPoint('BOTTOMLEFT', button, -1, -1)
        border:SetTexCoord(0, 1, 0, 1)
    end
    
    if (button and not border) then
        if (not button.texture) then
            button.texture = button:CreateTexture('$parentOverlay', 'ARTWORK')
            button.texture:SetParent(button)
            button.texture:SetTexture(nBuff.button.borderBuff)
            button.texture:SetVertexColor(unpack(nBuff.button.buffBorderColor))
            button.texture:SetPoint('TOPRIGHT', button, 1, 1)
            button.texture:SetPoint('BOTTOMLEFT', button, -1, -1)
        end
        
        local name = UnitAura('player', index)
        if (name == select(1, GetSpellInfo(34477)) or name == select(1, GetSpellInfo(57934))) then
            button.texture:SetVertexColor(1, 0, 1)
            button.texture:SetTexture(nBuff.button.borderDebuff)
        else
            button.texture:SetVertexColor(unpack(nBuff.button.buffBorderColor))
            button.texture:SetTexture(nBuff.button.borderBuff)
        end
    end
    
    if (button and not button.Background) then
        button.Background = button:CreateTexture('$parentBackground', 'BACKGROUND')
        button.Background:SetPoint('TOPRIGHT', button.texture or border, 3.35, 3.35)
        button.Background:SetPoint('BOTTOMLEFT', button.texture or border, -3.35, -3.35)
        button.Background:SetTexture('Interface\\AddOns\\nBuff\\media\\textureBackground')
        button.Background:SetVertexColor(0, 0, 0, 1)
    end
end)
edit debuffposition fixed
Last edited by Julchen : 12-10-09 at 04:27 AM.
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: