diff SkeletonStats/DamageMeter.lua @ 1:cd7d06bcd98d

KeyBinds: set hotkey text for blizzard action buttons UnitFrame: prototype templates for the majority of units
author Nenue
date Tue, 21 Jun 2016 04:47:52 -0400
parents 69e828f4238a
children 07293831dd7b
line wrap: on
line diff
--- a/SkeletonStats/DamageMeter.lua	Mon Jun 20 06:35:11 2016 -0400
+++ b/SkeletonStats/DamageMeter.lua	Tue Jun 21 04:47:52 2016 -0400
@@ -10,10 +10,9 @@
 --   .showbar (bar )     -- toggle row
 --   .hidebar ( bar )    --
 --   .ui ()              -- update chart
-local KT = select(2,...)
+local KT = LibKT.register(DamageMeter)
 local dm = DamageMeter
-KT.register(dm)
-
+local db
 local segments = {}
 local actors = {}
 local ordered = {}
@@ -33,11 +32,10 @@
 
 dm.init = function()
   dm:RegisterEvent('COMBAT_LOG_EVENT_UNFILTERED')
+  dm:RegisterEvent('PLAYER_REGEN_DISABLED')
   dm:RegisterEvent('ENCOUNTER_START')
   dm.bars = dm.bars or {}
   dm.headings = dm.headings or {}
-
-  sortType = SortByDamage
 end
 
 dm.ENCOUNTER_START = function()
@@ -45,13 +43,17 @@
 end
 
 dm.variables = function()
-  KT.db.segments = KT.db.segments or {}
-  KT.db.currentSegment = KT.db.currentSegment or 0
-  KT.db.actors = KT.db.actors or {}
-  actors = KT.db.actors
-  segments = KT.db.segments
-  viewPos = KT.db.currentSegment
+  SkeletonStatsDB = SkeletonStatsDB or {}
+  db = SkeletonStatsDB
+  db.segments = db.segments or {}
+  db.currentSegment = db.currentSegment or 0
+  db.actors = db.actors or {}
+  db.viewType = db.viewType or 'damageDone'
 
+    actors = db.actors
+    segments = db.segments
+    viewPos = db.currentSegment
+    viewType = prototypes[viewType] and viewType or 'damageDone'
 
   dm.handler(viewType)
 
@@ -62,7 +64,7 @@
     view = segments[viewPos]
     print('Using segment #', viewPos)
   end
-  KT.db.currentSegment = viewPos
+  db.currentSegment = viewPos
 
   dm.ui()
 end
@@ -73,12 +75,12 @@
 end
 
 dm.new = function()
-  segmentUID = (KT.db.segUID or 0) + 1
-  KT.db.segUID = segmentUID
+  segmentUID = (db.segUID or 0) + 1
+  db.segUID = segmentUID
   view = {}
   viewPos = #segments+1
   segments[viewPos] = view
-  KT.db.currentSegment = viewPos
+  db.currentSegment = viewPos
   print('Starting new segment #', viewPos)
   return viewPos
 end
@@ -122,6 +124,10 @@
   header = 'Damage Done',
 }
 
+dm.PLAYER_REGEN_DISABLED = function()
+  dm.new()
+end
+
 dm.COMBAT_LOG_EVENT_UNFILTERED = function(self, event, timeStemp, subEvent, u1, ...)
   local sourceGUID, sourceName, sourceFlags, _, destGUID, destName, destFlags = ...