added saving of group and cleaned up code
René Welbers [01-27-16 - 13:29]
added saving of group and cleaned up code
diff --git a/PanicModeCombatAnalyzer.lua b/PanicModeCombatAnalyzer.lua
index 63dcc32..730dcc8 100644
--- a/PanicModeCombatAnalyzer.lua
+++ b/PanicModeCombatAnalyzer.lua
@@ -14,9 +14,9 @@ PanicModeCombatAnalyzer.variables = {
trials = {},
}
PanicModeCombatAnalyzer.tempVars = {
- lastSave = 0,
- inFight = false,
- lastDps = 0,
+ lastSave = 0,
+ inFight = false,
+ lastDps = 0,
lastDpsCount = 0,
trialRunning = false,
trialId = 0,
@@ -26,7 +26,7 @@ PanicModeCombatAnalyzer.tempVars = {
FTC = _G['FTC']
---------Passing saved variables to the labels at initialize-------
-function PanicModeCombatAnalyzer.Initialize(event, addonName)
+function PanicModeCombatAnalyzer.Initialize(_, addonName)
local self = PanicModeCombatAnalyzer
if addonName ~= self.name then return end
@@ -42,13 +42,16 @@ function PanicModeCombatAnalyzer.Initialize(event, addonName)
EVENT_MANAGER:RegisterForEvent(self.name .. "_TRIAL_STOP", EVENT_RAID_TRIAL_COMPLETE, self.saveTrials)
EVENT_MANAGER:RegisterForEvent(self.name .. "_TRIAL_STOP", EVENT_RAID_TRIAL_FAILED, self.saveTrials)
EVENT_MANAGER:RegisterForEvent(self.name .. "_TRIAL_STOP_GROUP", EVENT_GROUP_MEMBER_LEFT, self.saveTrialsFromGroup)
+ EVENT_MANAGER:RegisterForEvent(self.name .. "_GROUP_CHANGE", EVENT_GROUP_MEMBER_JOINED, self.saveGroup)
+ EVENT_MANAGER:RegisterForEvent(self.name .. "_GROUP_CHANGE", EVENT_GROUP_MEMBER_LEFT, self.saveGroup)
+ EVENT_MANAGER:RegisterForEvent(self.name .. "_GROUP_CHANGE", EVENT_GROUP_UPDATE, self.saveGroup)
end
-function PanicModeCombatAnalyzer.OnPlayerCombatState(event, inCombat)
+function PanicModeCombatAnalyzer.OnPlayerCombatState(_, inCombat)
PanicModeCombatAnalyzer.tempVars.inFight = inCombat
end
-function PanicModeCombatAnalyzer.saveTrials(event, raidName)
+function PanicModeCombatAnalyzer.saveTrials(event)
local self = PanicModeCombatAnalyzer
local timeStamp = GetTimeStamp()
local currentRaid = GetCurrentParticipatingRaidId()
@@ -77,6 +80,28 @@ function PanicModeCombatAnalyzer.saveTrialsFromGroup(_, _, reason)
end
end
+function PanicModeCombatAnalyzer.saveGroup()
+ local self = PanicModeCombatAnalyzer
+ local timeStamp = GetTimeStamp()
+ local groupSize = GetGroupSize()
+ local group = {}
+
+ -- iterate over group
+ if groupSize > 0 then
+ self.savedVariables.groups[timeStamp] = self.savedVariables.groups[timeStamp] or {}
+ for i = 1, groupSize do
+ local unitTag = GetGroupUnitTagByIndex(i)
+ if (DoesUnitExist(unitTag)) then
+ local charName = zo_strformat("<<!aC:1>>", GetUnitName(unitTag))
+ table.insert(group, charName)
+ end
+ end
+ self.savedVariables.groups[timeStamp] = group
+ self.debug('saved grp', self.savedVariables.groups[timeStamp])
+ end
+
+end
+
--[[
* Overwrite from origin FTC
* Update the mini DPS meter