Mercurial > wow > ouroloot
diff bossmods.lua @ 56:fcc0d0ff5832
- instance_tag() also returns max instance size as a plain number, adjust
call sites
- clean up .raiders table, add some new fields, use copies of this instead
of a single string
- make sure datarev field is properly updated when it's already present
- avoid multiple GetRaidRosterInfo loops scattered throughout the addon,
instead just traverse the .raiders list, regularly updated
- make the 'loot' and 'boss' broadcasts versioned. Handle receiving older.
- new format for plaintext attendance output
author | Farmbuyer of US-Kilrogg <farmbuyer@gmail.com> |
---|---|
date | Fri, 13 Apr 2012 04:28:46 +0000 |
parents | 4f1e71f62776 |
children | c01875b275ca |
line wrap: on
line diff
--- a/bossmods.lua Sat Apr 07 05:40:20 2012 +0000 +++ b/bossmods.lua Fri Apr 13 04:28:46 2012 +0000 @@ -35,7 +35,7 @@ local tonumber = tonumber -- WoW -local GetRaidRosterInfo = GetRaidRosterInfo +--local GetRaidRosterInfo = GetRaidRosterInfo -- OL local addon_do_boss @@ -44,7 +44,7 @@ ------ Deadly Boss Mods do local DBM - local location + local location, maxsize local real_loadmod -- When zoning into a raid instance not seen this session, make sure -- we don't report a previous raid instance as current location. DBM @@ -66,7 +66,12 @@ name = "Unknown Boss" end - local it = location or self.instance_tag() + local it + if location then + it = location + else + it, maxsize = self.instance_tag() + end self.latest_instance = it location = nil @@ -75,18 +80,7 @@ duration = math.floor (GetTime() - mod.combatInfo.pull) end - -- attendance: maybe put people in groups 6,7,8 into a "backup/standby" - -- list? probably too specific to guild practices. - local raiders = {} - for i = 1, GetNumRaidMembers() do - local name = GetRaidRosterInfo(i) - if name then - tinsert (raiders, name) - end - end - table.sort(raiders) - - return addon_do_boss (self, reason, name, it, duration, raiders) + return addon_do_boss (self, reason, name, it, maxsize, duration) end local function callback(...) DBMBossCallback(addon,...) end @@ -102,7 +96,9 @@ addon_do_boss = OL_boss_worker local r = DBM:RegisterCallback("kill", callback) DBM:RegisterCallback("wipe", callback) - DBM:RegisterCallback("pull", function() location = self.instance_tag() end) + DBM:RegisterCallback("pull", function() + location, maxsize = self.instance_tag() + end) real_loadmod = DBM.LoadMod DBM.LoadMod = resetting_loadmod return r > 0