Thread: Post Your UI

  1. #6301
    Well i changed the Color of the Grid names, you had a good reason, i use this UI on all of my characters so it is handy to see levels of mobs and the name thing, well i dno it seems kinda silly not to have the name really.

    Edit - Also took out class color's from Chatter, makes the chat look neater.

    I also get the impression that you feel strongly negative about the UI, not really sure why as it should be a fun thing to build a UI not a task : )
    Last edited by AjayxD; 2012-08-15 at 10:06 PM.

  2. #6302
    If asking questions is negative then the entire world is made up of pessimists...

    Your reasoning for not implementing the text changes doesn't make sense.
    And I am still wondering why you would want to break up the game with a huge black bar.

    I'm not being negative, I am being direct. There is quite a bit of difference

  3. #6303
    thats kl : ) it just seemed so because you were stuck on the 'really' small details like player level / pet name and the screen is just so big that it feels hugely empty with the bar gone and most importantly it personalises it for me !

    But anyway thank you for the feedback it helped me change a couple of things i didnt see before !

    Finished product - http://i47.tinypic.com/2gtb19j.jpg

    (took away the CRAZY border round the grid status debuff, messing about with buttons you are unsure of ftw)
    Last edited by AjayxD; 2012-08-15 at 10:56 PM.

  4. #6304
    Quote Originally Posted by Ishtara View Post
    Your reasoning for not implementing the text changes doesn't make sense.
    It may not serve any practical purpose, but it does improve symmetry.

    I probably wouldn't have the extra text there, but it's not really in the way either and so it's mostly down to personal taste.

  5. #6305
    Field Marshal Senit's Avatar
    Join Date
    Jul 2012
    Location
    Darnassus
    Posts
    87
    Would it be possible to get one screenshot without the huge black bar? Just for comparison sake.
    "¡Ustedes no tienes nadie mas para pelear! ¡Llena tus bolsillos y dejarse en paz, o quedar y pelear conmigo, y morir!"
    Senit UI -- outdated. Update... soon... maybe...

  6. #6306

  7. #6307
    Field Marshal Senit's Avatar
    Join Date
    Jul 2012
    Location
    Darnassus
    Posts
    87
    Quote Originally Posted by AjayxD View Post
    I think It looks better without, personally.
    But what are those extra bars doing on the unit frames?
    "¡Ustedes no tienes nadie mas para pelear! ¡Llena tus bolsillos y dejarse en paz, o quedar y pelear conmigo, y morir!"
    Senit UI -- outdated. Update... soon... maybe...

  8. #6308
    Quote Originally Posted by Senit View Post
    But what are those extra bars doing on the unit frames?
    Cast bars : ) Debuffs are placed on top of the frames and important buffs to keep up in between (backdraft / soulfire in this example)

  9. #6309
    Quote Originally Posted by carebear View Post
    The actionbar is transparent because of stance dancing on a warrior and druid. I did start without an actionbar but having 10 classes and 20 different talent specs it got a little overwhelming trying to remember everything.

    The quest tracker is something I have always wanted to change but I never found a simple way to change the font. Every one I found required downloading another addon with extras that I didn't want so I just made do with it.

    The blue percentage is for mana, the white one is for health and the combat text was turned on by accident ): I actually had it turned off most of the time when I was playing.

    But yeaaah. There was still a lot I wanted to do with the UI but my sub ran out and I won't be re-subbing until a bit into MOP for a month. I'll re-do something then with all the new toys and a new class to play with! If my step-sister didn't change her password I'd be able to have a mess around in 5.0.
    Sorry for the late reply, been working all day.
    I have all but one action bar hidden on my main, and I have the action bar that I use for my Naga mouse bindings showing on alts
    Example: Main - http://i.imgur.com/YcxJ2.jpg Alt - http://i.imgur.com/4WJEq.jpg

    As for the quest tracker, I use the AddOn named Fonter. Very handy for managing fonts throughout my UI despite it being out of date

    You could probably get away with making the % symbol white rather than blue. It's quite easy to get used to which number is mana and which is HP

    And finally, go nag your step-sister for her password

    EDIT: Morchok normal mode on an alt is serious business.
    Last edited by Pixil; 2012-08-16 at 01:10 AM.

  10. #6310
    Field Marshal Senit's Avatar
    Join Date
    Jul 2012
    Location
    Darnassus
    Posts
    87
    I'm so close to finishing my UI, but I really need some help with my buffs, which I am scripting through oUF.


    I have a few (3) objectives here.

    Firstly, how can I change the font on the "count" text? (circled in green)
    Secondly, how can I sort them in order of time remaining?
    Lastly, and most importantly, how can I add a text to display time remaining?

    Code:
    lib.PostCreateIcon = function(self, button)
    	button.cd:SetReverse(true)
    	button.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
    	button.icon:SetDrawLayer("BACKGROUND")
    	--Count
    	button.count:ClearAllPoints()
    	button.count:SetJustifyH("RIGHT")
    	button.count:SetPoint("TOPRIGHT", button, "TOPRIGHT", 0, 0)
    	button.count:SetTextColor(1,1,1)
    	--Helper
    	local h = CreateFrame("Frame", nil, button)
    	h:SetFrameLevel(0)
    	h:SetPoint("TOPLEFT", -0, 0)
    	h:SetPoint("BOTTOMRIGHT", 0, -0)
    	lib.gen_backdrop(h)
    end
    
    lib.playBuffs = function(f)
    	b = CreateFrame("Frame", nil, f)
    	b.size = 30
    	if f.mystyle == "target" then
    		b.num = 40
    	elseif f.mystyle == "player" then
    		b.num = 10
    		b.onlyShowPlayer = true
    	else
    		b.num = 5
    	end
    	b.spacing = 5
    	b.onlyShowPlayer = false
    	b:SetHeight((b.size+b.spacing)*4)
    	b:SetWidth(f.width)
    	b:SetPoint("BOTTOMLEFT", f, "TOPLEFT", 0, 500)
    	b.initialAnchor = "TOPRIGHT"
    	b["growth-x"] = "LEFT"
    	b["growth-y"] = "DOWN"
    	b.PostCreateIcon = lib.PostCreateIcon
    	f.Buffs = b
    
    	BuffFrame:UnregisterEvent("UNIT_AURA")
    	BuffFrame:Hide()
    	TemporaryEnchantFrame:Hide()
    end
    I'm sure some of you know how I can achieve these things; and thank you so much for your time and effort.
    Last edited by Senit; 2012-08-16 at 06:15 AM.
    "¡Ustedes no tienes nadie mas para pelear! ¡Llena tus bolsillos y dejarse en paz, o quedar y pelear conmigo, y morir!"
    Senit UI -- outdated. Update... soon... maybe...

  11. #6311
    1) I think that a simple button.count:SetFont(fontpath) should do the trick.
    2) you need to set up a method that parses durations and rearranges auras - it's not a simple thing to code (at least for me). for sure more expert guys are surely capable of doing it.
    3) for that i use omniCC - it does all the work for me.
    Last edited by Coldkil; 2012-08-16 at 07:21 AM.

  12. #6312
    gunna pull some code from the UF i use, i wouldnt copy it word for word, but hopefully a general idea of what you need to do

    this here will format the time and give it the general look

    Code:
    local formatTime = function(s)
    	local day, hour, minute = 86400, 3600, 60
    	if s >= day then
    		return format("%dd", floor(s/day + 0.5)), s % day
    	elseif s >= hour then
    		return format("%dh", floor(s/hour + 0.5)), s % hour
    	elseif s >= minute then
    		return format("%dm", floor(s/minute + 0.5)), s % minute
    	elseif s >= minute / 12 then
    		return floor(s + 0.5), (s * 100 - floor(s * 100))/100
    	end
    	return format("%.1f", s), (s * 100 - floor(s * 100))/100
    end
    local setTimer = function (self, elapsed)
    	if self.timeLeft then
    		self.elapsed = (self.elapsed or 0) + elapsed
    		if self.elapsed >= 0.1 then
    			if not self.first then
    				self.timeLeft = self.timeLeft - self.elapsed
    			else
    				self.timeLeft = self.timeLeft - GetTime()
    				self.first = false
    			end
    			if self.timeLeft > 0 then
    				local time = formatTime(self.timeLeft)
    					self.time:SetText(time)
    				if self.timeLeft < 5 then
    					self.time:SetTextColor(1, 0.5, 0.5)
    				else
    					self.time:SetTextColor(.7, .7, .7)
    				end
    			else
    				self.time:Hide()
    				self:SetScript("OnUpdate", nil)
    			end
    			self.elapsed = 0
    		end
    	end
    end
    this is the post update of the icon when its draw, adds timers, desaturates (or it would if i set it to true :P ) and allows right clicking player buffs

    Code:
    local postUpdateIcon = function(element, unit, button, index)
    	local _, _, _, _, _, duration, expirationTime, unitCaster, _ = UnitAura(unit, index, button.filter)
    	
    	if duration and duration > 0 then
    		button.time:Show()
    		button.timeLeft = expirationTime	
    		button:SetScript("OnUpdate", setTimer)			
    	else
    		button.time:Hide()
    		button.timeLeft = math.huge
    		button:SetScript("OnUpdate", nil)
    	end
    	
    	-- Desaturate non-Player Debuffs
    	if(button.debuff) then
    		if(unit == "target") then	
    			if (unitCaster == "player" or unitCaster == "vehicle") then
    				button.icon:SetDesaturated(false)				
    			elseif(not UnitPlayerControlled(unit)) then -- If Unit is Player Controlled don"t desaturate debuffs
    				button:SetBackdropColor(0, 0, 0)
    				button.overlay:SetVertexColor(0.3, 0.3, 0.3)      
    				button.icon:SetDesaturated(false)  
    			end
    		end
    	end
    	button:SetScript('OnMouseUp', function(self, mouseButton)
    		if mouseButton == 'RightButton' then
    			CancelUnitBuff('player', index)
    	end end)
    	button.first = true
    end
    you wanna jam the postUpdateIcon function after postCreateIcon

    hope that helped!


    AddOn Author of: SpellNotReadyYet, Rune of Powa

  13. #6313
    Quote Originally Posted by Senit View Post
    I'm so close to finishing my UI, but I really need some help with my buffs, which I am scripting through oUF.


    I have a few (3) objectives here.

    Firstly, how can I change the font on the "count" text? (circled in green)
    Secondly, how can I sort them in order of time remaining?
    Lastly, and most importantly, how can I add a text to display time remaining?

    I'm sure some of you know how I can achieve these things; and thank you so much for your time and effort.
    I assume you have your heart set on configuring your buffs through oUF, but if you feel like giving in and taking the easy option; the AddOn Auraframes does everything that you're wanting.
    You'd just have to use Masque to make it match the rest of your UI.

  14. #6314
    Epic!
    Join Date
    Jul 2010
    Location
    United Kingdom
    Posts
    1,562
    Quote Originally Posted by Pixil View Post
    And finally, go nag your step-sister for her password
    If only I could! I'd have to re-install WoW but I'll wait until I sub for MOP to fix addons and make something new
    Random stuff WoW UI Enthusiast WoW
    Youtube Some old UIs care#2582
    Stream (WoW most evenings now) Lastest UI (Roth's Diablo inspired) EU-Horde

  15. #6315
    High Overlord
    Join Date
    Jul 2012
    Location
    UK
    Posts
    170
    Quote Originally Posted by Senit View Post
    I'm so close to finishing my UI, but I really need some help with my buffs, which I am scripting through oUF.


    I have a few (3) objectives here.

    Firstly, how can I change the font on the "count" text? (circled in green)
    Secondly, how can I sort them in order of time remaining?
    Lastly, and most importantly, how can I add a text to display time remaining?

    I'm sure some of you know how I can achieve these things; and thank you so much for your time and effort.

    You might also look at Filger as a possible solution, though I'm also interested in doing the same as you with oUF.

    By the way, is that oUF_Simple2 that I see as the basis for your layout?

  16. #6316
    Blademaster SellionDK's Avatar
    Join Date
    Mar 2012
    Location
    http://twitch.tv/selliondk
    Posts
    46
    Quote Originally Posted by Pixil View Post
    I think the issue is more that there are lots of different sized fonts and lots of borders that don't match. And that GOD-AWFUL Porky text! (promise me you'll change that lol)
    Also, is the target of the target of the target really so important? :P
    And Sexymap. *cringe* I would always suggest replacing that with some nicer AddOn.
    However if you're fine with it, then why change it!?
    Hehe, I've already changed fonts + sexymap before I even saw this, thanks though Yea, I'll change some borders and fonts around, thanks for pointing it out!

  17. #6317
    Field Marshal Senit's Avatar
    Join Date
    Jul 2012
    Location
    Darnassus
    Posts
    87
    Quote Originally Posted by Coldkil View Post
    1) I think that a simple button.count:SetFont(fontpath) should do the trick.
    2) you need to set up a method that parses durations and rearranges auras - it's not a simple thing to code (at least for me). for sure more expert guys are surely capable of doing it.
    3) for that i use omniCC - it does all the work for me.
    Thanks for the help, the :SetFont worked perfectly.

    Quote Originally Posted by SpaceDuck View Post
    gunna pull some code from the UF i use, i wouldnt copy it word for word, but hopefully a general idea of what you need to do

    this here will format the time and give it the general look


    this is the post update of the icon when its draw, adds timers, desaturates (or it would if i set it to true :P ) and allows right clicking player buffs


    you wanna jam the postUpdateIcon function after postCreateIcon

    hope that helped!
    I'm a total Lua newb. I implemented your code like this:
    Code:
    local formatTime = function(s)
    	local day, hour, minute = 86400, 3600, 60
    	if s >= day then
    		return format("%dd", floor(s/day + 0.5)), s % day
    	elseif s >= hour then
    		return format("%dh", floor(s/hour + 0.5)), s % hour
    	elseif s >= minute then
    		return format("%dm", floor(s/minute + 0.5)), s % minute
    	elseif s >= minute / 12 then
    		return floor(s + 0.5), (s * 100 - floor(s * 100))/100
    	end
    	return format("%.1f", s), (s * 100 - floor(s * 100))/100
    end
    local setTimer = function (self, elapsed)
    	if self.timeLeft then
    		self.elapsed = (self.elapsed or 0) + elapsed
    		if self.elapsed >= 0.1 then
    			if not self.first then
    				self.timeLeft = self.timeLeft - self.elapsed
    			else
    				self.timeLeft = self.timeLeft - GetTime()
    				self.first = false
    			end
    			if self.timeLeft > 0 then
    				local time = formatTime(self.timeLeft)
    					self.time:SetText(time)
    				if self.timeLeft < 5 then
    					self.time:SetTextColor(1, 0.5, 0.5)
    				else
    					self.time:SetTextColor(.7, .7, .7)
    				end
    			else
    				self.time:Hide()
    				self:SetScript("OnUpdate", nil)
    			end
    			self.elapsed = 0
    		end
    	end
    end
    lib.PostCreateIcon = function(self, button)
    	button.cd:SetReverse(true)
    	button.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
    	button.icon:SetDrawLayer("BACKGROUND")
    	--Count
    	button.count:ClearAllPoints()
    	button.count:SetFont(config.font, 8, "OUTLINEMONOCHROME")
    	button.count:SetJustifyH("RIGHT")
    	button.count:SetPoint("TOPRIGHT", button, "TOPRIGHT", 0, 0)
    	button.count:SetTextColor(1,1,1)
    	--Helper
    	local h = CreateFrame("Frame", nil, button)
    	h:SetFrameLevel(0)
    	h:SetPoint("TOPLEFT", -0, 0)
    	h:SetPoint("BOTTOMRIGHT", 0, -0)
    	lib.gen_backdrop(h)
    end
    local postUpdateIcon = function(element, unit, button, index)
    	local _, _, _, _, _, duration, expirationTime, unitCaster, _ = UnitAura(unit, index, button.filter)
    	
    	if duration and duration > 0 then
    		button.time:Show()
    		button.timeLeft = expirationTime	
    		button:SetScript("OnUpdate", setTimer)			
    	else
    		button.time:Hide()
    		button.timeLeft = math.huge
    		button:SetScript("OnUpdate", nil)
    	end
    	
    	-- Desaturate non-Player Debuffs
    	if(button.debuff) then
    		if(unit == "target") then	
    			if (unitCaster == "player" or unitCaster == "vehicle") then
    				button.icon:SetDesaturated(false)				
    			elseif(not UnitPlayerControlled(unit)) then -- If Unit is Player Controlled don"t desaturate debuffs
    				button:SetBackdropColor(0, 0, 0)
    				button.overlay:SetVertexColor(0.3, 0.3, 0.3)      
    				button.icon:SetDesaturated(false)  
    			end
    		end
    	end
    	button:SetScript('OnMouseUp', function(self, mouseButton)
    		if mouseButton == 'RightButton' then
    			CancelUnitBuff('player', index)
    	end end)
    	button.first = true
    end
    lib.playBuffs = function(f)
    	b = CreateFrame("Frame", nil, f)
    	b.size = 30
    	if f.mystyle == "target" then
    		b.num = 40
    	elseif f.mystyle == "player" then
    		b.num = 10
    		b.onlyShowPlayer = true
    	else
    		b.num = 5
    	end
    	b.spacing = 5
    	b.onlyShowPlayer = false
    	b:SetHeight((b.size+b.spacing)*4)
    	b:SetWidth(f.width)
    	b:SetPoint("BOTTOMLEFT", f, "TOPLEFT", 0, 500)
    	b.initialAnchor = "TOPRIGHT"
    	b["growth-x"] = "LEFT"
    	b["growth-y"] = "DOWN"
    	b.PostCreateIcon = lib.PostCreateIcon
    	f.Buffs = b
    
    	BuffFrame:UnregisterEvent("UNIT_AURA")
    	BuffFrame:Hide()
    	TemporaryEnchantFrame:Hide()
    end
    But it didn't seem to change anything. Mind if I ask what I'm missing? >.<

    Quote Originally Posted by Pixil View Post
    I assume you have your heart set on configuring your buffs through oUF, but if you feel like giving in and taking the easy option; the AddOn Auraframes does everything that you're wanting.
    You'd just have to use Masque to make it match the rest of your UI.
    Yeah, my main purpose with oUF was consolidating my code and getting rid of a lot of addons.
    Last edited by Senit; 2012-08-16 at 07:02 PM.
    "¡Ustedes no tienes nadie mas para pelear! ¡Llena tus bolsillos y dejarse en paz, o quedar y pelear conmigo, y morir!"
    Senit UI -- outdated. Update... soon... maybe...

  18. #6318
    you forgot to add b.postUpdateIcon = lib.postUpdateIcon in playBuffs function AFTER the b.PostCreateIcon = lib.PostCreateIcon

    but again this is code transplantation from an entirely different UF code structure :P so it may not work


    AddOn Author of: SpellNotReadyYet, Rune of Powa

  19. #6319
    Field Marshal Senit's Avatar
    Join Date
    Jul 2012
    Location
    Darnassus
    Posts
    87
    Yeah, that didn't make any difference, but I'm too much of a Lua amateur to fix it.

    It seems like there should be a simple, "duration" equivalent to

    Code:
    	--Count
    	button.count:ClearAllPoints()
    	button.count:SetFont(config.font, 8, "OUTLINEMONOCHROME")
    	button.count:SetJustifyH("RIGHT")
    	button.count:SetPoint("TOPRIGHT", button, "TOPRIGHT", 0, 0)
    	button.count:SetTextColor(1,1,1)
    Is there?
    "¡Ustedes no tienes nadie mas para pelear! ¡Llena tus bolsillos y dejarse en paz, o quedar y pelear conmigo, y morir!"
    Senit UI -- outdated. Update... soon... maybe...

  20. #6320
    Mechagnome Ricen's Avatar
    Join Date
    Apr 2010
    Location
    Graveyard
    Posts
    659
    All this oUF talk has made me want to make the switch. If I were to take oUF P3lim and edit it, is that the best way to learn?

    When a wild forum troll appears

Posting Permissions

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