From 008619a1b46ced33451501a401f34cf374adc771 Mon Sep 17 00:00:00 2001 From: Aviana Date: Sun, 3 Apr 2016 13:14:50 +0200 Subject: [PATCH] V2005 update - Re-added the tag helpmenu - fixed lua error when logging in with config mode enabled - Option to prevent combo bar from hiding itself - More sensible default placements for raid indicators - Elite indicator - Fixed incoming heal bugging out under certain conditions - Lua error when hiding power bar fixed - Fixed conficting between range check and combat fader. --- LunaUnitFrames.lua | 25 +-- locales/enUS.lua | 63 +++++++ .../UI-DialogBox-Gold-Dragon-right.tga | Bin 0 -> 20566 bytes media/textures/UI-DialogBox-Gold-Dragon.blp | Bin 0 -> 23044 bytes modules/Options.lua | 155 ++++++++++++++++-- modules/cast.lua | 2 - modules/combopoints.lua | 5 +- modules/incheal.lua | 12 +- modules/indicators.lua | 19 ++- modules/power.lua | 3 - modules/range.lua | 2 +- 11 files changed, 253 insertions(+), 33 deletions(-) create mode 100644 media/textures/UI-DialogBox-Gold-Dragon-right.tga create mode 100644 media/textures/UI-DialogBox-Gold-Dragon.blp diff --git a/LunaUnitFrames.lua b/LunaUnitFrames.lua index 21becf35..1fc1d9e4 100644 --- a/LunaUnitFrames.lua +++ b/LunaUnitFrames.lua @@ -2,7 +2,7 @@ LunaUF = AceLibrary("AceAddon-2.0"):new("AceEvent-2.0", "AceConsole-2.0", "AceDB LunaUF:RegisterDB("LunaDB") -- Assets ---------------------------------------------------------------------------------- -LunaUF.Version = 2004 +LunaUF.Version = 2005 LunaUF.BS = AceLibrary("Babble-Spell-2.2") LunaUF.Banzai = AceLibrary("Banzai-1.0") LunaUF.HealComm = AceLibrary("HealComm-1.0") @@ -13,7 +13,7 @@ LunaUF.ScanTip = CreateFrame("GameTooltip", "LunaScanTip", nil, "GameTooltipTemp LunaUF.ScanTip:SetOwner(WorldFrame, "ANCHOR_NONE") LunaUF.modules = {} _, LunaUF.playerRace = UnitRace("player") -local Alliance = { +LunaUF.AllianceCheck = { ["Dwarf"] = true, ["Human"] = true, ["Gnome"] = true, @@ -325,7 +325,7 @@ LunaUF.defaults = { enabled = true, healthBar = { enabled = true, colorType = "class", reactionType="npc", size = 6 }, powerBar = { enabled = true, size = 4 }, - comboPoints = { enabled = true, size = 2, growth = "LEFT" }, + comboPoints = { enabled = true, size = 1, growth = "LEFT", hide = true }, portrait = { enabled = true, type = "3D", side = "right", size = 6 }, auras = { enabled = true, AurasPerRow = 12, position = "BOTTOM"}, highlight = { enabled = true, ontarget = false, ondebuff = true, onmouse = false }, @@ -355,6 +355,7 @@ LunaUF.defaults = { enabled = true, icons = { raidTarget = { enabled = true, anchorPoint = "CENTER", size = 20, x = 0, y = 0 }, + elite = { enabled = false, anchorPoint = "RIGHT", size = 74, x = -14, y = 0 }, class = { enabled = true, anchorPoint = "BOTTOMRIGHT", size = 16, x = 0, y = 0 }, masterLoot = { enabled = true, anchorPoint = "TOPRIGHT", size = 12, x = -16, y = 0 }, leader = { enabled = true, anchorPoint = "TOPRIGHT", size = 14, x = -2, y = 0 }, @@ -408,6 +409,7 @@ LunaUF.defaults = { icons = { raidTarget = { enabled = true, anchorPoint = "CENTER", size = 20, x = 0, y = 0 }, class = { enabled = true, anchorPoint = "BOTTOMLEFT", size = 16, x = 0, y = 0 }, + elite = { enabled = false, anchorPoint = "LEFT", size = 74, x = 14, y = 0 }, masterLoot = { enabled = true, anchorPoint = "TOPLEFT", size = 12, x = 16, y = 0 }, leader = { enabled = true, anchorPoint = "TOPLEFT", size = 14, x = 2, y = 0 }, pvp = { enabled = true, anchorPoint = "TOPRIGHT", size = 30, x = 5, y = -25 }, @@ -460,6 +462,7 @@ LunaUF.defaults = { icons = { raidTarget = { enabled = true, anchorPoint = "CENTER", size = 20, x = 0, y = 0 }, class = { enabled = true, anchorPoint = "BOTTOMLEFT", size = 16, x = 0, y = 0 }, + elite = { enabled = false, anchorPoint = "LEFT", size = 74, x = 14, y = 0 }, masterLoot = { enabled = true, anchorPoint = "TOPLEFT", size = 12, x = 16, y = 0 }, leader = { enabled = true, anchorPoint = "TOPLEFT", size = 14, x = 2, y = 0 }, pvp = { enabled = true, anchorPoint = "TOPRIGHT", size = 30, x = 5, y = -25 }, @@ -672,14 +675,14 @@ LunaUF.defaults = { enabled = true, icons = { raidTarget = { enabled = false, anchorPoint = "CENTER", size = 20, x = 0, y = 0 }, - class = { enabled = false, anchorPoint = "BOTTOMLEFT", size = 16, x = 0, y = 0 }, - masterLoot = { enabled = false, anchorPoint = "TOPLEFT", size = 12, x = 16, y = -10 }, - leader = { enabled = false, anchorPoint = "TOPLEFT", size = 14, x = 2, y = -12 }, - pvp = { enabled = false, anchorPoint = "TOPRIGHT", size = 22, x = 11, y = -21 }, - pvprank = { enabled = false, anchorPoint = "BOTTOMLEFT", size = 8, x = 0, y = 0 }, - status = { enabled = false, anchorPoint = "BOTTOMLEFT", size = 16, x = 12, y = -2 }, + class = { enabled = false, anchorPoint = "BOTTOMLEFT", size = 12, x = 3, y = 3 }, + masterLoot = { enabled = false, anchorPoint = "TOPLEFT", size = 12, x = 1, y = -14 }, + leader = { enabled = false, anchorPoint = "TOPLEFT", size = 14, x = 2, y = -3 }, + pvp = { enabled = false, anchorPoint = "RIGHT", size = 22, x = 4, y = -2 }, + pvprank = { enabled = false, anchorPoint = "BOTTOMRIGHT", size = 8, x = 0, y = 1 }, + status = { enabled = false, anchorPoint = "BOTTOM", size = 16, x = 0, y = 1 }, ready = { enabled = false, anchorPoint = "LEFT", size = 24, x = 35, y = 0 }, - rezz = { enabled = true, anchorPoint = "CENTER", size = 20, x = 0, y = 0 }, + rezz = { enabled = true, anchorPoint = "TOPRIGHT", size = 20, x = -8, y = -9 }, }, }, castBar = { enabled = false, size = 3, hide = true }, @@ -810,7 +813,7 @@ LunaUF.constants = { RaidClassMapping = { [1] = "WARRIOR", [2] = "DRUID", - [3] = Alliance[LunaUF.playerRace] and "PALADIN" or "SHAMAN", + [3] = LunaUF.AllianceCheck[LunaUF.playerRace] and "PALADIN" or "SHAMAN", [4] = "WARLOCK", [5] = "PRIEST", [6] = "MAGE", diff --git a/locales/enUS.lua b/locales/enUS.lua index 4f271071..ef1cd2a2 100644 --- a/locales/enUS.lua +++ b/locales/enUS.lua @@ -126,6 +126,7 @@ local function enUS() return { ["class"] = "Class", ["masterLoot"] = "Masterloot", ["leader"] = "Leader", +["elite"] = "Elite", ["pvp"] = "PvP", ["pvprank"] = "PvP rank", ["ready"] = "Ready", @@ -256,6 +257,68 @@ local function enUS() return { ["XP Bar"] = "XP Bar", ["Frame background"] = "Frame background", ["Color"] = "Color", + +["Returns plain name of the unit"] = "Returns plain name of the unit", +["Returns shortened names (Marshall Williams = M. Williams)"] = "Returns shortened names (Marshall Williams = M. Williams)", +["Guildname"] = "Guildname", +["Current level, returns ?? for bosses and players too high"] = "Current level, returns ?? for bosses and players too high", +["Returns \"Boss\" for bosses and Level+10+ for players too high"] = "Returns \"Boss\" for bosses and Level+10+ for players too high", +["Class of the unit"] = "Class of the unit", +["Returns Class for players and Creaturetype for NPCs"] = "Returns Class for players and Creaturetype for NPCs", +["\"rare\" if the creature is rare or rareelite"] = "\"rare\" if the creature is rare or rareelite", +["\"elite\" if the creature is elite or rareelite"] = "\"elite\" if the creature is elite or rareelite", +["Shows elite, rare, boss, etc..."] = "Shows elite, rare, boss, etc...", +["\"E\", \"R\", \"RE\" for the respective classification"] = "\"E\", \"R\", \"RE\" for the respective classification", +["Race if available"] = "Race if available", +["Shows race when if player, creaturetype when npc"] = "Shows race when if player, creaturetype when npc", +["Creature type (Bat, Wolf , etc..)"] = "Creature type (Bat, Wolf , etc..)", +["Gender"] = "Gender", +["Current druid form of friendly unit"] = "Current druid form of friendly unit", +["Returns (civ) when civilian"] = "Returns (civ) when civilian", +["Displays \"PvP\" if flagged for it"] = "Displays \"PvP\" if flagged for it", +["PvP title"] = "PvP title", +["Numeric PvP rank"] = "Numeric PvP rank", +["Horde or Alliance"] = "Horde or Alliance", +["Returns (i) if the player is on your ignore list"] = "Returns (i) if the player is on your ignore list", +["Server name"] = "Server name", +["\"Dead\", \"Ghost\" or \"Offline\""] = "\"Dead\", \"Ghost\" or \"Offline\"", +["Pet happiness as 'unhappy','content' or 'happy'"] = "Pet happiness as 'unhappy','content' or 'happy'", +["Current subgroup of the raid"] = "Current subgroup of the raid", +["(c) when in combat"] = "(c) when in combat", +["Returns the same as \"smart:healmishp\" on friendly units and hp/maxhp on enemies"] = "Returns the same as \"smart:healmishp\" on friendly units and hp/maxhp on enemies", +["Returns missing hp with healing factored in. Shows status when needed (\"Dead\", \"Offline\", \"Ghost\")"] = "Returns missing hp with healing factored in. Shows status when needed (\"Dead\", \"Offline\", \"Ghost\")", +["Combo Points"] = "Combo Points", +["The classic hp display (hp/maxhp and \"Dead\" if dead etc)"] = "The classic hp display (hp/maxhp and \"Dead\" if dead etc)", +["Current hp and heal in one number (green when heal is incoming)"] = "Current hp and heal in one number (green when heal is incoming)", +["Current hp"] = "Current hp", +["Current maximum hp"] = "Current maximum hp", +["Current missing hp"] = "Current missing hp", +["Missing hp after incoming heal (green when heal is incoming)"] = "Missing hp after incoming heal (green when heal is incoming)", +["HP percent"] = "HP percent", +["Current mana/rage/energy etc"] = "Current mana/rage/energy etc", +["Maximum mana/rage/energy etc"] = "Maximum mana/rage/energy etc", +["Missing mana/rage/energy"] = "Missing mana/rage/energy", +["Mana/rage/energy percent"] = "Mana/rage/energy percent", +["Returns current mana even in druid form"] = "Returns current mana even in druid form", +["Returns current maximum mana even in druid form"] = "Returns current maximum mana even in druid form", +["Returns missing mana even in druid form"] = "Returns missing mana even in druid form", +["Returns mana percentage even in druid form"] = "Returns mana percentage even in druid form", +["Value of incoming heal"] = "Value of incoming heal", +["Red when in combat"] = "Red when in combat", +["White for unflagged units, green for flagged friendlies and red for flagged enemies"] = "White for unflagged units, green for flagged friendlies and red for flagged enemies", +["Red for enemies, yellow for neutrals, and green for friendlies"] = "Red for enemies, yellow for neutrals, and green for friendlies", +["Colors based on your level vs the level of the unit. (grey,green,yellow and red)"] = "Colors based on your level vs the level of the unit. (grey,green,yellow and red)", +["Red if the unit is targeted by an enemy"] = "Red if the unit is targeted by an enemy", +["Classcolor of the unit"] = "Classcolor of the unit", +["Color based on health (red = dead)"] = "Color based on health (red = dead)", +["Custom color in hexadecimal (rrggbb)"] = "Custom color in hexadecimal (rrggbb)", +["Resets the color to white"] = "Resets the color to white", +["Adds a line break"] = "Adds a line break", +["Number of people in your group targeting this unit"] = "Number of people in your group targeting this unit", +["Tag listing"] = "Tag listing", +["INFO TAGS"] = "INFO TAGS", +["HEALTH AND POWER TAGS"] = "HEALTH AND POWER TAGS", +["COLOR TAGS"] = "COLOR TAGS", } end diff --git a/media/textures/UI-DialogBox-Gold-Dragon-right.tga b/media/textures/UI-DialogBox-Gold-Dragon-right.tga new file mode 100644 index 0000000000000000000000000000000000000000..4f0a54ba1466d027689b4035b2eeb27f48c70c7f GIT binary patch literal 20566 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 literal 0 HcmV?d00001 diff --git a/media/textures/UI-DialogBox-Gold-Dragon.blp b/media/textures/UI-DialogBox-Gold-Dragon.blp new file mode 100644 index 0000000000000000000000000000000000000000..5822a6e241d34da9907aa065e33c82ed379c7a68 GIT binary patch literal 23044 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 280 then + LunaOptionsFrame.helpframescrollchild.texts[count]:SetHeight(22) + else + LunaOptionsFrame.helpframescrollchild.texts[count]:SetHeight(30) + end + LunaOptionsFrame.helpframescrollchild.texts[count]:SetWidth(300) + if not first then + LunaOptionsFrame.helpframescrollchild.texts[count]:SetPoint("TOP", prevframe, "BOTTOM") + else + LunaOptionsFrame.helpframescrollchild.texts[count]:SetPoint("TOPLEFT", prevframe, "BOTTOMLEFT") + end + prevframe = LunaOptionsFrame.helpframescrollchild.texts[count] + first = true + count = count + 1 + + for k,v in pairs(TagsDescs[l]) do + LunaOptionsFrame.helpframescrollchild.texts[count] = LunaOptionsFrame.helpframescrollchild:CreateFontString(nil, "OVERLAY", LunaOptionsFrame.helpframescrollchild) + LunaOptionsFrame.helpframescrollchild.texts[count]:SetFont("Fonts\\FRIZQT__.TTF", 9) + LunaOptionsFrame.helpframescrollchild.texts[count]:SetText("\124cffffff00".."["..k.."]\124cffffffff: "..v) + LunaOptionsFrame.helpframescrollchild.texts[count]:SetJustifyH("LEFT") + LunaOptionsFrame.helpframescrollchild.texts[count]:SetJustifyV("TOP") + if LunaOptionsFrame.helpframescrollchild.texts[count]:GetStringWidth() > 281 then + LunaOptionsFrame.helpframescrollchild.texts[count]:SetHeight(22) + else + LunaOptionsFrame.helpframescrollchild.texts[count]:SetHeight(11) + end + LunaOptionsFrame.helpframescrollchild.texts[count]:SetWidth(280) + if not first then + LunaOptionsFrame.helpframescrollchild.texts[count]:SetPoint("TOP", prevframe, "BOTTOM") + else + LunaOptionsFrame.helpframescrollchild.texts[count]:SetPoint("TOPLEFT", prevframe, "BOTTOMLEFT") + end + prevframe = LunaOptionsFrame.helpframescrollchild.texts[count] + first = true + count = count + 1 + end + end LunaOptionsFrame.HelpScrollFrame:SetScrollChild(LunaOptionsFrame.helpframescrollchild) LunaOptionsFrame.Helpframe:Hide() LunaOptionsFrame:SetScale(0.8) diff --git a/modules/cast.lua b/modules/cast.lua index 5253819e..e481ad24 100644 --- a/modules/cast.lua +++ b/modules/cast.lua @@ -566,8 +566,6 @@ function Cast:OnEnable(frame) frame.castBar.Time:SetShadowOffset(0.80, -0.80) frame.castBar.Time:SetJustifyH("RIGHT") end --- frame.castBar.Text:SetFont("Interface\\AddOns\\LunaUnitFrames\\media\\fonts\\"..LunaUF.db.profile.font..".ttf", LunaUF.db.profile.units[frame.unitGroup].tags.bartags["castBar"].size) --- frame.castBar.Time:SetFont("Interface\\AddOns\\LunaUnitFrames\\media\\fonts\\"..LunaUF.db.profile.font..".ttf", LunaUF.db.profile.units[frame.unitGroup].tags.bartags["castBar"].size) frame.castBar:RegisterEvent("SPELLCAST_CHANNEL_START") frame.castBar:RegisterEvent("SPELLCAST_CHANNEL_STOP") frame.castBar:RegisterEvent("SPELLCAST_CHANNEL_UPDATE") diff --git a/modules/combopoints.lua b/modules/combopoints.lua index eb0b9714..728bf862 100644 --- a/modules/combopoints.lua +++ b/modules/combopoints.lua @@ -29,9 +29,12 @@ end function Combo:Update(frame) local points = GetComboPoints() if points == 0 and UnitExists("target") then - if not frame.comboPoints.hidden then + if LunaUF.db.profile.units[frame.unitGroup].comboPoints.hide and not frame.comboPoints.hidden then frame.comboPoints.hidden = true LunaUF.Units:PositionWidgets(frame) + elseif not LunaUF.db.profile.units[frame.unitGroup].comboPoints.hide and frame.comboPoints.hidden then + frame.comboPoints.hidden = nil + LunaUF.Units:PositionWidgets(frame) end else if frame.comboPoints.hidden then diff --git a/modules/incheal.lua b/modules/incheal.lua index 4762bf8f..f22b8a3b 100644 --- a/modules/incheal.lua +++ b/modules/incheal.lua @@ -34,11 +34,11 @@ function Incheal:FullUpdate(frame) if not frame.unit then return end local healvalue = HealComm:getHeal(UnitName(frame.unit)) local healBar = frame.incheal.healBar + local health, maxHealth = UnitHealth(frame.unit), UnitHealthMax(frame.unit) if healvalue == 0 then healBar:Hide() return end - local health, maxHealth = UnitHealth(frame.unit), UnitHealthMax(frame.unit) local frameHeight, frameWidth = frame.healthBar:GetHeight(), frame.healthBar:GetWidth() local healthHeight = frameHeight * (health / maxHealth) local healthWidth = frameWidth * (health / maxHealth) @@ -49,13 +49,21 @@ function Incheal:FullUpdate(frame) if (healthHeight + incHeight) > (frameHeight * (LunaUF.db.profile.units[frame.unitGroup].incheal.cap + 1)) then incHeight = (frameHeight * (LunaUF.db.profile.units[frame.unitGroup].incheal.cap + 1)) - healthHeight end + if incHeight == 0 then + healBar:Hide() + return + end healBar:SetHeight(incHeight) healBar:SetWidth(frameWidth) healBar:SetPoint("BOTTOMLEFT", frame.healthBar, "BOTTOMLEFT", 0, healthHeight) else local incWidth = frameWidth * (healvalue / maxHealth) if (healthWidth + incWidth) > (frameWidth * (LunaUF.db.profile.units[frame.unitGroup].incheal.cap + 1)) then - incWidth = (healthWidth * (LunaUF.db.profile.units[frame.unitGroup].incheal.cap + 1)) - healthWidth + incWidth = (frameWidth * (LunaUF.db.profile.units[frame.unitGroup].incheal.cap + 1)) - healthWidth + end + if incWidth == 0 then + healBar:Hide() + return end healBar:SetWidth(incWidth) healBar:SetHeight(frameHeight) diff --git a/modules/indicators.lua b/modules/indicators.lua index 5d5f5a21..915284d7 100644 --- a/modules/indicators.lua +++ b/modules/indicators.lua @@ -10,6 +10,7 @@ local Indicators = { ["class"] = {"Interface\\Glues\\CharacterCreate\\UI-CharacterCreate-Classes"}, ["rezz"] = {"Interface\\AddOns\\LunaUnitFrames\\media\\textures\\Raid-Icon-Rez"}, ["pvprank"] = {"Interface\\PvPRankBadges\\PvPRank01"}, + ["elite"] = {"Interface\\AddOns\\LunaUnitFrames\\media\\textures\\UI-DialogBox-Gold-Dragon"}, }, } LunaUF:RegisterModule(Indicators, "indicators", LunaUF.L["Indicators"]) @@ -222,6 +223,19 @@ function Indicators:FullUpdate(frame) end end end + if frame.indicators.elite then + local classification = UnitClassification(frame.unit) + if (classification == "elite" or classification == "rareelite" or not LunaUF.db.profile.locked) and config.elite.enabled then + if LunaUF.db.profile.units[frame.unitGroup].portrait.side == "right" then + frame.indicators.elite:SetTexture("Interface\\AddOns\\LunaUnitFrames\\media\\textures\\UI-DialogBox-Gold-Dragon-right") + else + frame.indicators.elite:SetTexture("Interface\\AddOns\\LunaUnitFrames\\media\\textures\\UI-DialogBox-Gold-Dragon") + end + frame.indicators.elite:Show() + else + frame.indicators.elite:Hide() + end + end if frame.indicators.rezz then local rezztime = HealComm:UnitisResurrecting(UnitName(frame.unit)) if (rezztime or not LunaUF.db.profile.locked) and config.rezz.enabled then @@ -246,13 +260,14 @@ function Indicators:FullUpdate(frame) end if frame.indicators.pvp then if( UnitIsPVP(frame.unit) and UnitFactionGroup(frame.unit) and config.pvp.enabled) then - frame.indicators.pvp:SetTexture(string.format("Interface\\TargetingFrame\\UI-PVP-%s", UnitFactionGroup(frame.unit))) + --LunaUF.AllianceCheck + frame.indicators.pvp:SetTexture(LunaUF.AllianceCheck[LunaUF.playerRace] and "Interface\\TargetingFrame\\UI-PVP-Alliance" or "Interface\\TargetingFrame\\UI-PVP-Horde") frame.indicators.pvp:Show() elseif( UnitIsPVPFreeForAll(frame.unit) and config.pvp.enabled ) then frame.indicators.pvp:SetTexture("Interface\\TargetingFrame\\UI-PVP-FFA") frame.indicators.pvp:Show() elseif not LunaUF.db.profile.locked and config.pvp.enabled then - frame.indicators.pvp:SetTexture(string.format("Interface\\TargetingFrame\\UI-PVP-%s", UnitFactionGroup("player"))) + frame.indicators.pvp:SetTexture(LunaUF.AllianceCheck[LunaUF.playerRace] and "Interface\\TargetingFrame\\UI-PVP-Alliance" or "Interface\\TargetingFrame\\UI-PVP-Horde") frame.indicators.pvp:Show() else frame.indicators.pvp:Hide() diff --git a/modules/power.lua b/modules/power.lua index f19df5c2..9a3d1e28 100644 --- a/modules/power.lua +++ b/modules/power.lua @@ -126,9 +126,6 @@ function Power:OnDisable(frame) frame.powerBar:Hide() if frame.powerBar.ticker then frame.powerBar.ticker:SetScript("OnUpdate", nil) - if AceEvent:IsEventRegistered("fiveSec") then - AceEvent:UnregisterEvent("fiveSec") - end end end end diff --git a/modules/range.lua b/modules/range.lua index 8fb12cee..ca4921c2 100644 --- a/modules/range.lua +++ b/modules/range.lua @@ -23,7 +23,7 @@ function Range:FullUpdate(frame) if frame.DisableRangeAlpha then return end local range,lastseen = proximity:GetUnitRange(frame.unit) if range and ((GetTime()-lastseen) < 3 ) then - frame:SetAlpha(1) + frame:SetAlpha(LunaUF.db.profile.units[frame.unitGroup].fader.enabled and LunaUF.db.profile.units[frame.unitGroup].fader.combatAlpha or 1) else frame:SetAlpha(LunaUF.db.profile.units[frame.unitGroup].range.alpha) end