From 319b9c54cff974729d7409ab0afd3a46427022a2 Mon Sep 17 00:00:00 2001 From: BillLive Date: Thu, 28 Jan 2016 23:14:56 +1030 Subject: [PATCH] Signed-off-by: BillLive * Updated: Include Unleash Flame and Elemental Fussion stack display to main Debuff Tracker Icon * Updated: Options to disable DPS and Threat text plus disable new Buff dispaly in Main Debuff Tracker Icon * Updated: Added new "UpsideDown" layout for arrangement of Icons * Updated: Saves Debug mode between sessions and displays status on Entering World * Fixed: Windshear now shows only on interuptable spells --- Change_log.txt | 8 +++ Ele_GUI.lua | 26 ++++++++- Elementarist.lua | 141 +++++++++++++++++++++++++++++------------------ Localization_enUS.lua | 17 ++---- Localization_frFR.lua | 7 +-- Localization_zhCN.lua | 4 +- modules/elemental.lua | 20 +++---- modules/enhancement.lua | 2 + 8 files changed, 137 insertions(+), 88 deletions(-) diff --git a/Change_log.txt b/Change_log.txt index f7d3f46..c71c1e8 100755 --- a/Change_log.txt +++ b/Change_log.txt @@ -1,3 +1,11 @@ +***V3.6.5 +* Updated: Include Unleash Flame and Elemental Fussion stack display to main Debuff Tracker Icon +* Updated: Options to disable DPS and Threat text plus disable new Buff dispaly in Main Debuff Tracker Icon +* Updated: Added new "UpsideDown" layout for arrangement of Icons +* Updated: Saves Debug mode between sessions and displays status on Entering World +* Fixed: Windshear now shows only on interuptable spells + + ***V3.6.4 * Updated: Spell usability checks before recommending spells to support lower level shamans * Updated: Elemental shaman 2nd prompt for Flameshock from 30% of duration to 9 Seconds diff --git a/Ele_GUI.lua b/Ele_GUI.lua index 43191de..3155762 100755 --- a/Ele_GUI.lua +++ b/Ele_GUI.lua @@ -259,6 +259,24 @@ function Elementarist:ApplySettings() Elementarist.displayFrame_int:SetWidth(40); Elementarist.displayFrame_int:SetHeight(40); end + if (ElementaristDB.Layout == L.LAYOUT_UPSIDE_DOWN) then + Elementarist.displayFrame_next:SetPoint("TOPLEFT", 0, -80) + Elementarist.displayFrame_next1:SetPoint("TOPLEFT", 50, -80) + Elementarist.displayFrame_next2:SetPoint("TOPLEFT", 100, -80) + Elementarist.displayFrame_misc:SetPoint("TOPLEFT",0, -20); + Elementarist.displayFrame_int:SetPoint("TOPLEFT",120, -20); + Elementarist.displayFrame_dps:SetPoint("TOPLEFT", 45, -20) + Elementarist.displayFrame_next:SetHeight(50); + Elementarist.displayFrame_next:SetWidth(50); + Elementarist.displayFrame_next1:SetHeight(50); + Elementarist.displayFrame_next1:SetWidth(50); + Elementarist.displayFrame_next2:SetHeight(50); + Elementarist.displayFrame_next2:SetWidth(50); + Elementarist.displayFrame_misc:SetHeight(30); + Elementarist.displayFrame_misc:SetWidth(30); + Elementarist.displayFrame_int:SetWidth(30); + Elementarist.displayFrame_int:SetHeight(30); + end end function Elementarist:StoreUIValues() @@ -412,7 +430,11 @@ function Elementarist:CreateConfig() local ThreatWarnBtn = Elementarist:CreateCheckButton(L.CONFIG_THREAT_WARNING, Elementarist.configPanel, ElementaristDB, "ThreatWarning", false) ThreatWarnBtn:SetPoint('TOPLEFT', 10, -278) - local EleLayout = Elementarist:CreateDropDownMenu(L.CONFIG_LAYOUT, Elementarist.configPanel, ElementaristDB, "Layout", {{text = L.LAYOUT_GROW},{text = L.LAYOUT_RIGHTTOLEFT},{text = L.LAYOUT_GROW_TOP},{text = L.LAYOUT_RIGHTTOLEFT_WIDE},{text = L.LAYOUT_SINGLE}}, 200) + local DpsTxtDisableBtn = Elementarist:CreateCheckButton(L.CONFIG_DISABLE_DPSTXT, Elementarist.configPanel, ElementaristDB, "DpsTxtDisabled", false) + DpsTxtDisableBtn:SetPoint('TOPLEFT', 200, -278) + + + local EleLayout = Elementarist:CreateDropDownMenu(L.CONFIG_LAYOUT, Elementarist.configPanel, ElementaristDB, "Layout", {{text = L.LAYOUT_GROW},{text = L.LAYOUT_RIGHTTOLEFT},{text = L.LAYOUT_GROW_TOP},{text = L.LAYOUT_RIGHTTOLEFT_WIDE},{text = L.LAYOUT_SINGLE},{text=L.LAYOUT_UPSIDE_DOWN}}, 200) EleLayout:SetPoint('TOPLEFT', 10, -308) local ResetBtn = Elementarist:CreateButton(L.CONFIG_RESET_POSITIONS, Elementarist.configPanel) @@ -488,7 +510,7 @@ function Elementarist:CreateConfig() ElementaristDB.modules[i] = {}; ElementaristDB.modules[i].enabled = true; end - -- Create a checkBox to enable/disable each module and save it within ElemenatistDB + -- Create a checkBox to enable/disable each module and save it within ElementaristDB local checkBox = Elementarist:CreateCheckButton(childPanel.name .. " enabled", childPanel, ElementaristDB.modules, i, false); checkBox:SetPoint('TOPLEFT', 10, vposition); vposition = vposition - 40; diff --git a/Elementarist.lua b/Elementarist.lua index 10376e6..71684de 100755 --- a/Elementarist.lua +++ b/Elementarist.lua @@ -173,9 +173,9 @@ Elementarist.events = {} function Elementarist:Debug(statictxt,msg) if (ElementaristDB.DebugMode) and (Elementarist.DebugChat) then if (msg) then - Elementarist.DebugChat:AddMessage( date("%I:%M:%S: ") .. " " .. statictxt .. " : " .. msg) + Elementarist.DebugChat:AddMessage( date("Elementarist - %I:%M:%S: ") .. " " .. statictxt .. " : " .. msg) else - Elementarist.DebugChat:AddMessage( date("%I:%M:%S: ") .. statictxt .. " : " .. "") + Elementarist.DebugChat:AddMessage( date("Elementarist - %I:%M:%S: ") .. statictxt .. " : " .. "") end end end @@ -218,8 +218,13 @@ function Elementarist.events.PLAYER_ENTERING_WORLD() Elementarist.hasT17_4pcs = Elementarist:HasSetBonus( 165580, 4 ); Elementarist.hasT18_4pcs = Elementarist:HasSetBonus( 185872, 4 ); Elementarist.hasT18_Class_Trinket = Elementarist:HasTrinket(124521); - Elementarist.faction = UnitFactionGroup("player"); + if (ElementaristDB.DebugMode) then + Elementarist.DebugChat = Elementarist:GetDebugFrame() + DEFAULT_CHAT_FRAME:AddMessage ("Elementarist ".. Elementarist.talent .. " module registered - Debug Mode",1,0,1) + else + DEFAULT_CHAT_FRAME:AddMessage ("Elementarist ".. Elementarist.talent .. " module registered",.7,.2,.2) + end end function Elementarist.events.PLAYER_EQUIPMENT_CHANGED() @@ -262,7 +267,7 @@ function Elementarist.events.ADDON_LOADED(addon) debugStatus = "enabled. Using frame: " .. Elementarist.DebugChat:GetID() Elementarist:Debug("Debug started", "") end - DEFAULT_CHAT_FRAME:AddMessage("Elementarist Debug " .. debugStatus) + DEFAULT_CHAT_FRAME:AddMessage("Elementarist Debug " .. debugStatus,.7,.2,.2) else InterfaceOptionsFrame_OpenToCategory(getglobal("ElementaristConfigPanel")) InterfaceOptionsFrame_OpenToCategory(getglobal("ElementaristConfigPanel")) @@ -271,23 +276,17 @@ function Elementarist.events.ADDON_LOADED(addon) SLASH_Elementarist1 = "/Elementarist" SLASH_Elementarist2 = "/ele" - -- check if talent is elemental + -- check class specializations and load any files with that name from modules folder Elementarist:detectTalent() - + + -- get current buff statuses + Elementarist:TrackAuraSaveBuffStatus () + -- detect equiped item level Elementarist:detectiLevel() Elementarist.playerLevel = UnitLevel("player") - -- Setup behaviors - Elementarist.Behaviors["1"] = L.BEHAVIOR_KEEP_FS_UP - Elementarist.Behaviors["2"] = L.BEHAVIOR_FS_BEFORE_LVB - Elementarist.CLBehaviors["0"] = L.CLSTBEHAVIOR_NONE - Elementarist.CLBehaviors["1"] = L.CLSTBEHAVIOR_CL_AFTER_LVB - Elementarist.CLBehaviors["2"] = L.CLSTBEHAVIOR_CL_ON_CD - Elementarist.EleLayout["1"] = L.LAYOUT_GROW - Elementarist.EleLayout["2"] = L.LAYOUT_RIGHTTOLEFT - -- Coop with other addons Elementarist.OmniCC = _G['OmniCC'] Elementarist.SpellFlash = _G['SpellFlashAddon'] @@ -315,7 +314,6 @@ end function Elementarist:RegisterModule(talent) -- save the registration of the module for each specialization file in modules folder Elementarist.modules[talent] = true; - print (talent .. " Elementarist module registered"); end; function Elementarist:CallModule( funcName, ... ) @@ -334,10 +332,18 @@ function Elementarist:LoadSpells(spellList) end; function Elementarist:InitSettings() - if not ElementaristDB then + --initalize saved varriables if no value set for them + if not ElementaristDB then ElementaristDB = {} -- fresh start end if (not ElementaristDB.modules) then ElementaristDB.modules = {} end + if not ElementaristDB.x then ElementaristDB.x = -200 end + if not ElementaristDB.y then ElementaristDB.y = -200 end + if not ElementaristDB.relativePoint then ElementaristDB.relativePoint = "CENTER" end + if not ElementaristDB.debuffx then ElementaristDB.debuffx = -200 end + if not ElementaristDB.debuffy then ElementaristDB.debuffy = -100 end + if not ElementaristDB.debuffrelativePoint then ElementaristDB.debuffrelativePoint = "CENTER" end + if not ElementaristDB.shieldrelativePoint then ElementaristDB.shieldrelativePoint = "CENTER" end if not ElementaristDB.scale then ElementaristDB.scale = 1 end if not ElementaristDB.debuffscale then ElementaristDB.debuffscale = 1 end if not ElementaristDB.shieldscale then ElementaristDB.shieldscale = 1 end @@ -350,19 +356,12 @@ function Elementarist:InitSettings() if ElementaristDB.alpha == nil then ElementaristDB.alpha = 0.8 end if ElementaristDB.debuffalpha == nil then ElementaristDB.debuffalpha = 1 end if ElementaristDB.shieldalpha == nil then ElementaristDB.shieldalpha = 1 end - if ElementaristDB.Behavior == nil then ElementaristDB.Behavior = Elementarist.Behaviors["1"] end - if ElementaristDB.CLBehavior == nil then ElementaristDB.CLBehavior = Elementarist.CLBehaviors["0"] end if ElementaristDB.ThreatWarning == nil then ElementaristDB.ThreatWarning = true end if ElementaristDB.EnableEQ == nil then ElementaristDB.EnableEQ = false end if ElementaristDB.advisordisabled == nil then ElementaristDB.advisordisabled = false end - if not ElementaristDB.x then ElementaristDB.x = -200 end - if not ElementaristDB.y then ElementaristDB.y = -200 end - if not ElementaristDB.relativePoint then ElementaristDB.relativePoint = "CENTER" end - if not ElementaristDB.debuffx then ElementaristDB.debuffx = -200 end - if not ElementaristDB.debuffy then ElementaristDB.debuffy = -100 end - if not ElementaristDB.debuffrelativePoint then ElementaristDB.debuffrelativePoint = "CENTER" end - if not ElementaristDB.shieldrelativePoint then ElementaristDB.shieldrelativePoint = "CENTER" end - if not ElementaristDB.DebugMode then ElementaristDB.DebugMode = false end + if ElementaristDB.DebugMode == nil then ElementaristDB.DebugMode = false end + if ElementaristDB.TrackAuraBuffs == nil then ElementaristDB.TrackAuraBuffs = true end + if ElementaristDB.DpsTxtDisabled == nil then ElementaristDB.DpsTxtDisabled = false end end function Elementarist:HasSetBonus(spellID,minCount) @@ -563,9 +562,12 @@ function Elementarist.events.COMBAT_LOG_EVENT_UNFILTERED(timestamp, event, hideC Elementarist.auraCooldowns[dstGUID]["start"] = GetTime() Elementarist.auraCooldowns[dstGUID]["duration"] = Elementarist.trackDuration; Elementarist.auraCooldowns[dstGUID]["action"] = GetTime() + -- add saved status of buffs to the auraCooldowns table for this target + Elementarist.auraCooldowns[dstGUID]["BuffCount1"] = Elementarist.trackAuraBuffCount1 + Elementarist.auraCooldowns[dstGUID]["BuffCount2"] = Elementarist.trackAuraBuffCount2 end; end - -- main Aura track if neede + -- main Aura track if needed if (Elementarist.callbacks.COMBAT_LOG) then Elementarist.callbacks:COMBAT_LOG(event,spellName,srcGUID,dstGUID); end; @@ -577,33 +579,34 @@ function Elementarist.events.COMBAT_LOG_EVENT_UNFILTERED(timestamp, event, hideC ["amount"] = 0, } end - - Elementarist.DPSTable[dstGUID]["amount"] = Elementarist.DPSTable[dstGUID]["amount"] + damage - local dps_txt = "" - if (dstGUID == Elementarist.targetGUID) and (Elementarist.DPSTable[Elementarist.targetGUID]) then - local dps_sec = GetTime() - Elementarist.DPSTable[dstGUID]["time"] - if (dps_sec > 5) then - dps_txt = format('%.f',(Elementarist.DPSTable[dstGUID]["amount"] / dps_sec)) - end - local threat_txt = "" - local _, status, threatpct, _, _ = UnitDetailedThreatSituation("player", "target") - if (status) then - if (threatpct<80) then - threat_txt = format("%.f",threatpct) .. " %" - Elementarist.cooldownFrame:SetReverse(false) - if (ElementaristDB.ThreatWarning) and (Elementarist.inParty>0) and (threatpct>70) then - RaidNotice_AddMessage(RaidBossEmoteFrame, L.THREAT_WARNING_PREFIX .. format("%.f",threatpct) .. L.THREAT_WARNING_SUFFIX, ChatTypeInfo["RAID_WARNING"]) - end - else - threat_txt = "|cffff0000" .. format("%.f",threatpct) .. " %|r" - if (ElementaristDB.ThreatWarning) and (Elementarist.inParty>0) then - RaidNotice_AddMessage(RaidBossEmoteFrame, "|cffff0000" .. L.THREAT_WARNING_PREFIX .. format("%.f",threatpct) .. L.THREAT_WARNING_SUFFIX .. "|r", ChatTypeInfo["RAID_WARNING"]) + if not (ElementaristDB.DpsTxtDisabled ) then + Elementarist.DPSTable[dstGUID]["amount"] = Elementarist.DPSTable[dstGUID]["amount"] + damage + local dps_txt = "" + if (dstGUID == Elementarist.targetGUID) and (Elementarist.DPSTable[Elementarist.targetGUID]) then + local dps_sec = GetTime() - Elementarist.DPSTable[dstGUID]["time"] + if (dps_sec > 5) then + dps_txt = format('%.f',(Elementarist.DPSTable[dstGUID]["amount"] / dps_sec)) + end + local threat_txt = "" + local _, status, threatpct, _, _ = UnitDetailedThreatSituation("player", "target") + if (status) then + if (threatpct<80) then + threat_txt = format("%.f",threatpct) .. " %" + Elementarist.cooldownFrame:SetReverse(false) + if (ElementaristDB.ThreatWarning) and (Elementarist.inParty>0) and (threatpct>70) then + RaidNotice_AddMessage(RaidBossEmoteFrame, L.THREAT_WARNING_PREFIX .. format("%.f",threatpct) .. L.THREAT_WARNING_SUFFIX, ChatTypeInfo["RAID_WARNING"]) + end + else + threat_txt = "|cffff0000" .. format("%.f",threatpct) .. " %|r" + if (ElementaristDB.ThreatWarning) and (Elementarist.inParty>0) then + RaidNotice_AddMessage(RaidBossEmoteFrame, "|cffff0000" .. L.THREAT_WARNING_PREFIX .. format("%.f",threatpct) .. L.THREAT_WARNING_SUFFIX .. "|r", ChatTypeInfo["RAID_WARNING"]) + end + Elementarist.cooldownFrame:SetReverse((Elementarist.person["friendCount"]>1) and (Elementarist.inParty>0)) end - Elementarist.cooldownFrame:SetReverse((Elementarist.person["friendCount"]>1) and (Elementarist.inParty>0)) end + dps_txt = dps_txt .. "|n" .. threat_txt + Elementarist.textList["dps"]:SetText(dps_txt) end - dps_txt = dps_txt .. "|n" .. threat_txt - Elementarist.textList["dps"]:SetText(dps_txt) end end else @@ -707,11 +710,26 @@ function Elementarist:UpdateShieldTracker() end end + +function Elementarist:TrackAuraSaveBuffStatus() + if Elementarist.trackAuraBuffSpell1 then + buffname, _, _,Elementarist.trackAuraBuffCount1 = Elementarist:hasBuff("player",Elementarist.trackAuraBuffSpell1) + if Elementarist.trackAuraBuffCount1 == nil then Elementarist.trackAuraBuffCount1 = 0 end + if buffname and (Elementarist.trackAuraBuffCount1 == 0) then Elementarist.trackAuraBuffCount1 = 1 end + end + if Elementarist.trackAuraBuffSpell2 then + buffname, _, _,Elementarist.trackAuraBuffCount2 = Elementarist:hasBuff("player",Elementarist.trackAuraBuffSpell2) + if Elementarist.trackAuraBuffCount2 == nil then Elementarist.trackAuraBuffCount2 = 0 end + if buffname and (Elementarist.trackAuraBuffCount2 == 0) then Elementarist.trackAuraBuffCount2 = 1 end + end +end + function Elementarist:UpdateAuraTracker() if (not Elementarist.trackAura) then return; end; + -- if there is a UPdateAuraTracker fucntion in the specialization modulle run it here Elementarist:CallModule( "UpdateAuraTracker" ); local name,tguid,icon,d,e; @@ -759,15 +777,27 @@ function Elementarist:UpdateAuraTracker() if (Elementarist.callbacks.COMBAT_LOG == nil) then if (name) then Elementarist:SetTexture(Elementarist.textureList["debuff"],icon) + -- Set text string and format it on mainain frame + trackAura_txt = " " + if (ElementaristDB.TrackAuraBuffs) then + if Elementarist.auraCooldowns[tguid]["BuffCount1"] then trackAura_txt = Elementarist.auraCooldowns[tguid]["BuffCount1"] end + if Elementarist.auraCooldowns[tguid]["BuffCount2"] then trackAura_txt = trackAura_txt .. ":" .. Elementarist.auraCooldowns[tguid]["BuffCount2"] end + end if (not Elementarist.OmniCC) and (not GetCVarBool("countdownForCooldowns")) then - Elementarist.textList["debuff"]:SetText(format('%.1f', (e - GetTime()))) + trackAura_txt= "|n" .. (format('%.1f', (e - GetTime())).. "|n" .. trackAura_txt) + else + Elementarist.auraCooldownFrame["main"]:SetCooldown( e-d, d) + Elementarist.textList["debuff"]:SetJustifyV("BOTTOM") + Elementarist.textList["debuff"]:SetJustifyH("RIGHT") +-- Elementarist.textList["debuff"]:SetTextColor(.7, .7, .7, 1) end - Elementarist.auraCooldownFrame["main"]:SetCooldown( e-d, d) + Elementarist.textList["debuff"]:SetText(trackAura_txt) else + -- no target clear window Elementarist:SetTexture(Elementarist.textureList["debuff"],"") - Elementarist.textList["debuff"]:SetText("") Elementarist.auraCooldownFrame["main"]:SetCooldown(0, 0) Elementarist.auraCooldownFrame["main"]:SetDrawBling(false) + Elementarist.textList["debuff"]:SetText("") m = m - 1 end end; @@ -1055,6 +1085,7 @@ function Elementarist:OnUpdate(elapsed) if (Elementarist.timeSinceLastUpdate > (1.5 - (1.5 * Elementarist.spellHaste * .01)) * 0.3) then Elementarist:DecideSpells() + Elementarist:TrackAuraSaveBuffStatus() end if (not ElementaristDB.debuffdisabled) then Elementarist.AuraTrackerUpdate = Elementarist.AuraTrackerUpdate + elapsed diff --git a/Localization_enUS.lua b/Localization_enUS.lua index c42b5e3..f3dea1a 100755 --- a/Localization_enUS.lua +++ b/Localization_enUS.lua @@ -5,8 +5,6 @@ if GetLocale() then local L = Elementarist.Locals - L.BEHAVIOR_KEEP_FS_UP = "Keep Flame Shock up" - L.BEHAVIOR_FS_BEFORE_LVB = "Flame Shock before Lava" L.THREAT_WARNING_SUFFIX = "% threat!" L.THREAT_WARNING_PREFIX = "" L.CONFIG_ENABLED = "Enabled" @@ -17,34 +15,27 @@ if GetLocale() then L.CONFIG_DISABLE_DEBUFF_TRACKER = "Disable debuff tracker" L.CONFIG_DEBUFF_TRACKER_SCALE = "Debuff tracker scale" L.CONFIG_DEBUFF_TRACKER_ALPHA = "Debuff tracker alpha" - L.CONFIG_BEHAVIOR = "Flame Shock behavior:" + L.CONFIG_DEBUFF_TRACKER_SHOW_BUFFS = "Debuff tracker shows buffs" L.CONFIG_THREAT_WARNING = "Threat warning" L.CONFIG_RESET_POSITIONS = "Reset frame positions" - L.CONFIG_CLSTBEHAVIOR = "Chain Lightning single target behavior" - L.CLSTBEHAVIOR_CL_AFTER_LVB = "Chain Lightning after Lava" - L.CLSTBEHAVIOR_CL_ON_CD = "Chain Lightning on Cooldown" L.CLSTBEHAVIOR_NONE = "None" --- new for 1.9 L.CONFIG_SHIELD_TRACKER_SCALE = "Shield tracker scale" L.CONFIG_SHIELD_TRACKER_ALPHA = "Shield tracker alpha" L.CONFIG_DISABLE_SHIELD_TRACKER = "Disable shield tracker" --- new for 2.0 L.CONFIG_ENABLE_EQ_SPELL = "Enable Earthquake in rotation" --- new for 2.1.4 L.CONFIG_DISABLE_MINI = "Disable mini frames" --- new for 3.0.0 L.CONFIG_LAYOUT = "Layout:" L.LAYOUT_GROW = "Growing icons" - L.LAYOUT_RIGHTTOLEFT = "Right to left" L.CONFIG_ENABLE_HS_TOTEM = "Show Healing Stream Totem" L.CONFIG_ENABLE_SEARING_TOTEM = "Show Searing Totem" L.CONFIG_ANNOUNCE_STORMLASH = "Announce Stormlash Totem in Raid/Party chat" --- new for 3.3.3 L.CONFIG_DISABLE_ADVISOR = "Disable spell advisor" L.CONFIG_DISABLE_SHIELD_TRACKER_CD = "Disable shield cooldown tracker" + L.CONFIG_DISABLE_DPSTXT = "Disable Damage and Threat text" + L.LAYOUT_RIGHTTOLEFT = "Right to left" L.LAYOUT_GROW_TOP = "Growing icons, misc. on top" L.LAYOUT_RIGHTTOLEFT_WIDE = "Right to left, wide" L.LAYOUT_SINGLE = "Single spell" --- new for 3.4.3 + L.LAYOUT_UPSIDE_DOWN = "Right to left, upside down" L.CONFIG_DISABLE_LM_SPELL = "Disable Liquid Magma in rotation" end \ No newline at end of file diff --git a/Localization_frFR.lua b/Localization_frFR.lua index 123c1f7..3a70a1b 100755 --- a/Localization_frFR.lua +++ b/Localization_frFR.lua @@ -6,21 +6,18 @@ end if GetLocale() then local L = Elementarist.Locals - L["BEHAVIOR_FS_BEFORE_LVB"] = "Horion de flammes avant lave" - L["BEHAVIOR_KEEP_FS_UP"] = "Gardez Horion de flammes Up !" - L["CLSTBEHAVIOR_CL_AFTER_LVB"] = "Chain Lightning after Lava" -- Requires localization - L["CLSTBEHAVIOR_CL_ON_CD"] = "Temps de recharge de Chaîne d'éclairs" - L["CLSTBEHAVIOR_NONE"] = "None" -- Requires localization L["CONFIG_ANNOUNCE_STORMLASH"] = "Announce Stormlash Totem in Raid/Party chat" -- Requires localization L["CONFIG_BEHAVIOR"] = "Flame Shock behavior:" -- Requires localization L["CONFIG_CLSTBEHAVIOR"] = "Chain Lightning single target behavior" -- Requires localization L["CONFIG_DEBUFF_TRACKER_ALPHA"] = "Suivi des débuffs alpha" L["CONFIG_DEBUFF_TRACKER_SCALE"] = "échelle du suivi des Debuff" + L["CONFIG_DEBUFF_TRACKER_SHOW_BUFFS"] = "Suivi des débuffs montre buffs" L["CONFIG_DISABLE_ADVISOR"] = "Disable spell advisor" -- Requires localization L["CONFIG_DISABLE_DEBUFF_TRACKER"] = "Désactiver le suivi des débuffs" L["CONFIG_DISABLE_MINI"] = "Désactiver les mini cadres" L["CONFIG_DISABLE_SHIELD_TRACKER"] = "Désactiver le suivi du bouclier" L["CONFIG_DISABLE_SHIELD_TRACKER_CD"] = "Disable shield cooldown tracker" -- Requires localization + L["CONFIG_DISABLE_DPSTXT"] = "Désactiver les nombers des blessures et menace" L["CONFIG_ENABLED"] = "Activé" L["CONFIG_ENABLE_EQ_SPELL"] = "Active Tremblement de terre en rotation" L["CONFIG_ENABLE_HS_TOTEM"] = "Show Healing Stream Totem" -- Requires localization diff --git a/Localization_zhCN.lua b/Localization_zhCN.lua index c8c382a..45aa495 100755 --- a/Localization_zhCN.lua +++ b/Localization_zhCN.lua @@ -16,9 +16,11 @@ if GetLocale() then L["CONFIG_CLSTBEHAVIOR"] = "单目标闪电链行为" L["CONFIG_DEBUFF_TRACKER_ALPHA"] = "Debuff 追踪器透明度" L["CONFIG_DEBUFF_TRACKER_SCALE"] = "Debuff 追踪器尺寸" + L["CONFIG_DEBUFF_TRACKER_SHOW_BUFFS"] = "火焰冲击跟踪显示爱好者" L["CONFIG_DISABLE_ADVISOR"] = "Disable spell advisor" -- Requires localization L["CONFIG_DISABLE_DEBUFF_TRACKER"] = "禁用 debuff 追踪器" - L["CONFIG_DISABLE_MINI"] = "禁用迷你框体" + L["CONFIG_DISABLE_DPSTXT"] = "Désactiver les nombers des DPS et menace" + L["CONFIG_DISABLE_MINI"] = "禁用迷你禁止损害和威胁号框体" L["CONFIG_DISABLE_SHIELD_TRACKER"] = "禁用护盾追踪器" L["CONFIG_DISABLE_SHIELD_TRACKER_CD"] = "Disable shield cooldown tracker" -- Requires localization L["CONFIG_ENABLED"] = "启用" diff --git a/modules/elemental.lua b/modules/elemental.lua index c22428f..73020fb 100755 --- a/modules/elemental.lua +++ b/modules/elemental.lua @@ -4,13 +4,9 @@ Elementarist:RegisterModule("elemental"); Elementarist.elemental = { ["Configuration"] = { - ["Behavior"] = { - ["type"] = "DropDown", - ["label"] = L.CONFIG_BEHAVIOR, - ["options"] = { - {text = L.BEHAVIOR_KEEP_FS_UP}, - {text = L.BEHAVIOR_FS_BEFORE_LVB} - } + ["TrackAuraBuffs"] = { + ["type"] = "CheckBox", + ["label"] = L.CONFIG_DEBUFF_TRACKER_SHOW_BUFFS }, ["EnableEQ"] = { ["type"] = "CheckBox", @@ -37,7 +33,9 @@ Elementarist.elemental = { }); Elementarist.role = "DPS"; - Elementarist.trackAura = Elementarist.SpellList["Flame Shock"]; + Elementarist.trackAura = Elementarist.SpellList["Flame Shock"] -- Spell used in Aura Tracking window + Elementarist.trackAuraBuffSpell1 = Elementarist.SpellList["Unleash Flame"] -- buff charge count to display in Aura Tracking Window + Elementarist.trackAuraBuffSpell2 = Elementarist.SpellList["Elemental Fusion"] -- buff charge count to display in Aura Tracking Window Elementarist.trackFilter = "PLAYER|HARMFUL"; Elementarist.trackDuration = 39; end; @@ -239,7 +237,6 @@ Elementarist.elemental = { if (efCount>=2) then if (Elementarist:hasBuff("player",Elementarist.SpellList["Unleash Flame"]) or Elementarist:Count(Elementarist.SpellList["Unleash Flame"],spellInCast,exspell1,exspell2) > 0)then if (fsExpiration - currentTime - timeshift) < (fsDuration * fsRefreshPercentage ) then - Elementarist:Debug(GetTime()..' Priority 3: EFCount=', efCount) return Elementarist.SpellList["Flame Shock"] end end @@ -296,7 +293,6 @@ Elementarist.elemental = { d = Elementarist:GetSpellCooldownRemaining(Elementarist.SpellList["Flame Shock"]) if ((d - timeshift) <= 0) then if ((fsExpiration - GetTime() - timeshift) < (9) ) then - Elementarist:Debug(GetTime()..' Priority 6: EFCount=', efCount) return Elementarist.SpellList["Flame Shock"] end end @@ -559,13 +555,13 @@ Elementarist.elemental = { --- windshear to interupt channel spell _, _, _, _, _, _, _, notInterruptible = UnitChannelInfo("target") - if (not notInterruptible) then + if (notInterruptible==false) then return Elementarist.SpellList["Wind Shear"] end --- windshear to interupt cast spell _, _, _, _, _, _, _, _, notInterruptible = UnitCastingInfo("target") - if if (not notInterruptible) then then + if (notInterruptible==false) then return Elementarist.SpellList["Wind Shear"] end end diff --git a/modules/enhancement.lua b/modules/enhancement.lua index 808820b..2d15901 100755 --- a/modules/enhancement.lua +++ b/modules/enhancement.lua @@ -35,6 +35,8 @@ Elementarist.enhancement = { Elementarist.role = "DPS"; Elementarist.trackAura = Elementarist.SpellList["Flame Shock"]; + Elementarist.trackAuraBuffSpell1 = Elementarist.SpellList["Unleash Flame"] -- buff charge count to display in Aura Tracking Window + Elementarist.trackAuraBuffSpell2 = Elementarist.SpellList["Elemental Fusion"] -- buff charge count to display in Aura Tracking Window Elementarist.trackFilter = "PLAYER|HARMFUL"; Elementarist.trackDuration = 39; Elementarist.trackSpread = false; -- 1.7.9.5