2011-08-30 20:29:41 -04:00
|
|
|
ChoreTracker = LibStub('AceAddon-3.0'):NewAddon('ChoreTracker', 'AceConsole-3.0', 'AceEvent-3.0')
|
2011-08-20 07:41:29 -04:00
|
|
|
local core = ChoreTracker
|
2011-09-18 19:38:31 -04:00
|
|
|
local LQT, LDB, LDBIcon, LBZ
|
|
|
|
local db, tooltip, zones, trackedInstances, vpResetTime
|
2011-08-21 10:59:28 -04:00
|
|
|
|
2011-08-20 07:41:29 -04:00
|
|
|
local defaults = {
|
2011-09-16 16:00:16 -04:00
|
|
|
global = {},
|
2011-09-18 08:41:25 -04:00
|
|
|
profile = {
|
|
|
|
minimap = {
|
|
|
|
hide = false,
|
|
|
|
},
|
2011-09-20 04:12:08 -04:00
|
|
|
sortType = 1,
|
|
|
|
sortDirection = 1,
|
2011-09-16 16:00:16 -04:00
|
|
|
instances = {},
|
2011-09-18 08:41:25 -04:00
|
|
|
},
|
2011-09-16 16:00:16 -04:00
|
|
|
}
|
|
|
|
|
2011-09-18 18:12:03 -04:00
|
|
|
local options = {
|
|
|
|
name = 'ChoreTracker',
|
|
|
|
type = 'group',
|
|
|
|
args = {
|
|
|
|
minimap = {
|
|
|
|
name = 'Hide Minimap Icon',
|
|
|
|
desc = 'Removes the icon from your minimap.',
|
|
|
|
type = 'toggle',
|
2011-09-18 19:38:31 -04:00
|
|
|
get = function(info) return db.profile.minimap.hide end,
|
|
|
|
set = function(info, value) db.profile.minimap.hide = value LDBIcon[value and 'Hide' or 'Show'](LDBIcon, 'ChoreTracker') end,
|
2011-09-20 04:12:08 -04:00
|
|
|
},
|
|
|
|
sortType = {
|
|
|
|
name = 'Sort Field',
|
|
|
|
desc = 'Field to sort the tooltip by.',
|
|
|
|
type = 'select',
|
|
|
|
values = { 'character', 'vp' },
|
|
|
|
get = function(info) return db.profile.sortType end,
|
|
|
|
set = function(info, value) db.profile.sortType = value end,
|
|
|
|
},
|
|
|
|
sortingDirection = {
|
|
|
|
name = 'Sorting Direction',
|
|
|
|
desc = 'Which direction to sort.',
|
|
|
|
type = 'select',
|
|
|
|
values = { 'ascending', 'descending' },
|
|
|
|
get = function(info) return db.profile.sortDirection end,
|
|
|
|
set = function(info, value) db.profile.sortDirection = value end,
|
|
|
|
},
|
2011-09-18 18:12:03 -04:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2011-08-25 04:38:35 -04:00
|
|
|
local classColors = {}
|
|
|
|
local flagColors = {}
|
|
|
|
|
2011-09-01 03:16:53 -04:00
|
|
|
function core:OnInitialize()
|
2011-09-18 08:41:25 -04:00
|
|
|
-- Prepare the database if necessary
|
2011-09-18 19:38:31 -04:00
|
|
|
db = LibStub('AceDB-3.0'):New('ChoreTrackerDB', defaults, 'Default')
|
2011-08-25 03:50:22 -04:00
|
|
|
|
2011-09-01 03:16:53 -04:00
|
|
|
local level = UnitLevel('player')
|
|
|
|
local realm = GetRealmName()
|
|
|
|
local name = UnitName('player')
|
2011-09-18 19:38:31 -04:00
|
|
|
if db.global[realm] == nil then
|
|
|
|
db.global[realm] = {}
|
2011-08-25 03:50:22 -04:00
|
|
|
end
|
2011-09-01 03:16:53 -04:00
|
|
|
|
2011-09-18 19:38:31 -04:00
|
|
|
if db.global[realm][name] == nil and level == 85 then
|
|
|
|
db.global[realm][name] = {}
|
2011-08-31 02:17:58 -04:00
|
|
|
|
2011-09-01 03:16:53 -04:00
|
|
|
local class = UnitClass('player')
|
|
|
|
class = class:lower()
|
|
|
|
if class == 'deathknight' then
|
|
|
|
class = 'death knight'
|
2011-08-25 04:38:35 -04:00
|
|
|
end
|
2011-08-25 03:50:22 -04:00
|
|
|
|
2011-09-18 19:38:31 -04:00
|
|
|
db.global[realm][name].class = class
|
|
|
|
db.global[realm][name].valorPoints = {
|
2011-09-01 03:16:53 -04:00
|
|
|
valorPoints = 0,
|
|
|
|
resetTime = 0,
|
|
|
|
}
|
2011-09-18 19:38:31 -04:00
|
|
|
db.global[realm][name].lockouts = {}
|
2011-08-25 03:50:22 -04:00
|
|
|
end
|
2011-09-16 16:00:16 -04:00
|
|
|
|
2011-09-18 19:27:32 -04:00
|
|
|
-- Register events (here for now; track data regardless of whether it is displayed?)
|
2011-09-01 03:16:53 -04:00
|
|
|
local level = UnitLevel('player')
|
|
|
|
if level == 85 then
|
2011-09-18 19:27:32 -04:00
|
|
|
self:RegisterEvent('CALENDAR_UPDATE_EVENT_LIST','GetNextVPReset')
|
2011-09-01 03:16:53 -04:00
|
|
|
self:RegisterEvent('UPDATE_INSTANCE_INFO', 'UpdateChores')
|
2011-09-20 12:57:51 -04:00
|
|
|
self:RegisterEvent('CHAT_MSG_CURRENCY', 'PrepareUpdate')
|
2011-09-01 03:16:53 -04:00
|
|
|
end
|
2011-09-18 19:38:31 -04:00
|
|
|
|
2011-09-18 23:47:10 -04:00
|
|
|
-- Get calendar events information
|
|
|
|
OpenCalendar()
|
|
|
|
|
2011-09-18 19:38:31 -04:00
|
|
|
-- Reset data if necessary
|
|
|
|
core:ResetInstances()
|
|
|
|
core:ResetValorPoints()
|
2011-09-18 08:41:25 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
function core:OnEnable()
|
2011-09-18 16:51:56 -04:00
|
|
|
LQT = LibStub('LibQTip-1.0')
|
2011-09-18 18:12:03 -04:00
|
|
|
LBZ = LibStub('LibBabble-Zone-3.0')
|
2011-09-18 08:41:25 -04:00
|
|
|
|
2011-09-18 19:38:31 -04:00
|
|
|
-- Setup font strings for later. (RAID_CLASS_COLORS always indexed in English?)
|
2011-08-25 04:38:35 -04:00
|
|
|
for class,color in pairs(RAID_CLASS_COLORS) do
|
|
|
|
class = class:lower()
|
|
|
|
if class == 'deathknight' then
|
|
|
|
class = 'death knight'
|
|
|
|
end
|
|
|
|
|
2011-08-29 01:17:37 -04:00
|
|
|
classColors[class] = CreateFont('ClassFont' .. class)
|
|
|
|
classColors[class]:CopyFontObject(GameTooltipText)
|
2011-08-30 20:29:41 -04:00
|
|
|
classColors[class]:SetTextColor(color.r, color.g, color.b)
|
2011-08-25 04:38:35 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
flagColors['green'] = CreateFont('FlagFontGreen')
|
|
|
|
flagColors['green']:CopyFontObject(GameTooltipText)
|
2011-08-30 20:29:41 -04:00
|
|
|
flagColors['green']:SetTextColor(0, 255, 0)
|
2011-08-25 04:38:35 -04:00
|
|
|
|
|
|
|
flagColors['red'] = CreateFont('FlagFontRed')
|
|
|
|
flagColors['red']:CopyFontObject(GameTooltipText)
|
2011-08-30 20:29:41 -04:00
|
|
|
flagColors['red']:SetTextColor(255, 0, 0)
|
2011-09-01 03:16:53 -04:00
|
|
|
|
2011-09-18 08:41:25 -04:00
|
|
|
-- Setup LDB
|
2011-09-18 19:38:31 -04:00
|
|
|
LDB = LibStub('LibDataBroker-1.1'):NewDataObject('ChoreTracker', {
|
2011-09-18 09:31:48 -04:00
|
|
|
type = 'data source',
|
|
|
|
text = 'ChoreTracker',
|
|
|
|
icon = 'Interface\\AddOns\\ChoreTracker\\icon',
|
2011-09-19 04:59:17 -04:00
|
|
|
OnClick = function()
|
|
|
|
if LibStub("AceConfigDialog-3.0").OpenFrames['ChoreTracker'] then
|
|
|
|
LibStub('AceConfigDialog-3.0'):Close('ChoreTracker')
|
|
|
|
else
|
|
|
|
LibStub('AceConfigDialog-3.0'):Open('ChoreTracker')
|
|
|
|
end
|
|
|
|
end,
|
2011-09-19 09:11:10 -04:00
|
|
|
OnEnter = function(self)
|
2011-09-18 08:41:25 -04:00
|
|
|
core:DrawTooltip()
|
|
|
|
|
|
|
|
tooltip:SmartAnchorTo(self)
|
|
|
|
tooltip:Show()
|
|
|
|
end,
|
|
|
|
OnLeave = function(self)
|
2011-09-18 16:51:56 -04:00
|
|
|
LQT:Release(tooltip)
|
2011-09-18 08:41:25 -04:00
|
|
|
tooltip = nil
|
|
|
|
end,
|
|
|
|
})
|
|
|
|
|
|
|
|
-- Deal with minimap
|
2011-09-18 19:38:31 -04:00
|
|
|
LDBIcon = LibStub('LibDBIcon-1.0')
|
|
|
|
LDBIcon:Register('ChoreTracker', LDB, db.profile.minimap)
|
2011-09-18 08:41:25 -04:00
|
|
|
|
2011-09-18 19:38:31 -04:00
|
|
|
if db.profile.minimap.hide then
|
|
|
|
LDBIcon:Hide('ChoreTracker')
|
2011-09-18 08:41:25 -04:00
|
|
|
else
|
2011-09-18 19:38:31 -04:00
|
|
|
LDBIcon:Show('ChoreTracker')
|
2011-09-18 08:41:25 -04:00
|
|
|
end
|
2011-09-18 16:51:56 -04:00
|
|
|
|
|
|
|
-- Get instances
|
|
|
|
zones = LBZ:GetLookupTable()
|
|
|
|
|
|
|
|
trackedInstances = {
|
|
|
|
[zones['Baradin Hold']] = 'BH',
|
|
|
|
[zones['Firelands']] = 'FL',
|
|
|
|
[zones['The Bastion of Twilight']] = 'BoT',
|
|
|
|
[zones['Blackwing Descent']] = 'BWD',
|
|
|
|
[zones['Throne of the Four Winds']] = '4W',
|
|
|
|
}
|
2011-09-18 18:12:03 -04:00
|
|
|
|
|
|
|
-- Add options to Interface Panel
|
|
|
|
LibStub('AceConfigRegistry-3.0'):RegisterOptionsTable('ChoreTracker', options)
|
|
|
|
local ACD = LibStub('AceConfigDialog-3.0')
|
|
|
|
ACD:AddToBlizOptions('ChoreTracker', 'ChoreTracker')
|
2011-08-20 07:41:29 -04:00
|
|
|
end
|
|
|
|
|
2011-09-20 12:57:51 -04:00
|
|
|
function core:PrepareUpdate()
|
|
|
|
GetSavedInstanceInfo()
|
|
|
|
end
|
|
|
|
|
2011-08-21 14:10:05 -04:00
|
|
|
function core:UpdateChores()
|
2011-09-18 19:38:31 -04:00
|
|
|
-- Reset data if necessary
|
2011-08-25 02:02:50 -04:00
|
|
|
core:ResetInstances()
|
|
|
|
core:ResetValorPoints()
|
2011-09-01 03:16:53 -04:00
|
|
|
|
|
|
|
local realm = GetRealmName()
|
|
|
|
local name = UnitName('player')
|
2011-09-06 12:23:46 -04:00
|
|
|
local _,_,_,earnedThisWeek = GetCurrencyInfo(396)
|
|
|
|
|
2011-09-01 03:16:53 -04:00
|
|
|
--store Valor Points
|
2011-09-18 19:38:31 -04:00
|
|
|
if vpResetTime ~= nil then
|
|
|
|
db.global[realm][name].valorPoints = {}
|
|
|
|
db.global[realm][name].valorPoints.points = earnedThisWeek
|
|
|
|
db.global[realm][name].valorPoints.resetTime = vpResetTime
|
2011-09-01 03:16:53 -04:00
|
|
|
end
|
2011-08-21 11:01:32 -04:00
|
|
|
|
2011-09-01 03:16:53 -04:00
|
|
|
--store Saved Instances
|
|
|
|
local savedInstances = GetNumSavedInstances()
|
|
|
|
for i = 1, savedInstances do
|
|
|
|
local instanceName, _, instanceReset, _, _, _, _, _, _, _, _, defeatedBosses = GetSavedInstanceInfo(i)
|
|
|
|
|
|
|
|
if trackedInstances[instanceName] ~= nil then
|
|
|
|
if instanceReset > 0 then
|
2011-09-18 19:38:31 -04:00
|
|
|
db.global[realm][name].lockouts[instanceName] = {}
|
|
|
|
db.global[realm][name].lockouts[instanceName].defeatedBosses = defeatedBosses
|
|
|
|
db.global[realm][name].lockouts[instanceName].resetTime = time() + instanceReset
|
2011-09-01 03:16:53 -04:00
|
|
|
else
|
2011-09-18 19:38:31 -04:00
|
|
|
db.global[realm][name].lockouts[instanceName] = nil
|
2011-08-21 10:59:28 -04:00
|
|
|
end
|
|
|
|
end
|
2011-08-21 00:03:50 -04:00
|
|
|
end
|
2011-08-23 04:27:44 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
function core:ResetInstances()
|
2011-09-18 19:38:31 -04:00
|
|
|
for realm,realmTable in pairs(db.global) do
|
2011-09-01 03:16:53 -04:00
|
|
|
for name in pairs(realmTable) do
|
2011-09-18 19:38:31 -04:00
|
|
|
for instance,instanceTable in pairs(db.global[realm][name].lockouts) do
|
2011-09-01 03:16:53 -04:00
|
|
|
if instanceTable.resetTime < time() then
|
2011-09-18 19:38:31 -04:00
|
|
|
db.global[realm][name].lockouts[instance] = nil
|
2011-09-01 03:16:53 -04:00
|
|
|
end
|
2011-08-23 04:27:44 -04:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
function core:ResetValorPoints()
|
2011-09-18 19:38:31 -04:00
|
|
|
for realm,realmTable in pairs(db.global) do
|
2011-09-01 03:16:53 -04:00
|
|
|
for name in pairs(realmTable) do
|
2011-09-18 19:38:31 -04:00
|
|
|
if db.global[realm][name].valorPoints.resetTime < time() then
|
|
|
|
db.global[realm][name].valorPoints = {
|
2011-09-01 03:16:53 -04:00
|
|
|
valorPoints = 0,
|
|
|
|
resetTime = 0,
|
|
|
|
}
|
2011-08-31 02:54:50 -04:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
2011-08-30 20:29:41 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
function core:GetNextVPReset()
|
|
|
|
--prepare calendar
|
|
|
|
local currentCalendarSetting = GetCVar('calendarShowResets') -- get current value and store
|
2011-08-31 03:30:12 -04:00
|
|
|
SetCVar('calendarShowResets', 1) -- set it to what we want
|
2011-08-30 20:29:41 -04:00
|
|
|
|
|
|
|
--figure out what time the server resets daily information
|
|
|
|
local questReset = GetQuestResetTime()
|
2011-08-31 02:17:58 -04:00
|
|
|
local resetTime = date('*t', time() + questReset)
|
2011-08-30 20:29:41 -04:00
|
|
|
|
|
|
|
--figure out reset day using next BH lockout
|
|
|
|
local _, month, day, year = CalendarGetDate()
|
|
|
|
|
|
|
|
local monthOffset = 0
|
|
|
|
local resetDate = nil
|
|
|
|
while resetDate == nil do
|
|
|
|
local todaysEvents = CalendarGetNumDayEvents(monthOffset, day)
|
|
|
|
|
|
|
|
for i = 1,todaysEvents do
|
|
|
|
if todaysEvents == 0 then
|
|
|
|
break
|
|
|
|
end
|
|
|
|
|
|
|
|
local title,hour,minute = CalendarGetDayEvent(monthOffset, day, i)
|
|
|
|
|
2011-09-18 16:51:56 -04:00
|
|
|
if title == zones['Baradin Hold'] then
|
2011-08-30 20:29:41 -04:00
|
|
|
resetDate = { year = year, month = month + monthOffset, day = day }
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
day = day + 1
|
|
|
|
if day > 31 then
|
|
|
|
if monthOffset == 1 then break end
|
|
|
|
day = 1
|
|
|
|
monthOffset = 1
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
--return calendar
|
2011-09-01 04:07:22 -04:00
|
|
|
SetCVar('calendarShowResets', currentCalendarSetting)
|
2011-08-30 20:29:41 -04:00
|
|
|
|
|
|
|
--and combine for the reset timestamp
|
2011-08-31 03:30:12 -04:00
|
|
|
if(resetDate ~= nil) then
|
|
|
|
resetDate.hour = resetTime.hour
|
|
|
|
resetDate.min = resetTime.min
|
|
|
|
resetDate.sec = resetTime.sec
|
2011-08-31 11:20:09 -04:00
|
|
|
|
2011-09-18 19:27:32 -04:00
|
|
|
vpResetTime = time(resetDate)
|
2011-08-31 12:51:17 -04:00
|
|
|
else
|
2011-09-18 19:27:32 -04:00
|
|
|
vpResetTime = nil
|
2011-08-31 03:30:12 -04:00
|
|
|
end
|
2011-09-01 03:16:53 -04:00
|
|
|
end
|
|
|
|
|
2011-09-18 08:41:25 -04:00
|
|
|
function core:DrawTooltip()
|
2011-09-19 09:11:10 -04:00
|
|
|
local columnCount = 2
|
2011-09-01 03:16:53 -04:00
|
|
|
for instance,abbreviation in pairs(trackedInstances) do
|
2011-09-19 09:11:10 -04:00
|
|
|
columnCount = columnCount + 1
|
2011-09-01 03:16:53 -04:00
|
|
|
end
|
2011-09-19 09:11:10 -04:00
|
|
|
tooltip = LQT:Acquire('ChoreTrackerTooltip', columnCount, 'LEFT', 'CENTER', 'RIGHT')
|
|
|
|
|
|
|
|
-- Populate a table with the information we want for our tooltip
|
2011-09-19 07:42:17 -04:00
|
|
|
local tooltipTable = {}
|
2011-09-18 19:38:31 -04:00
|
|
|
for realm in pairs(db.global) do
|
|
|
|
for name in pairs(db.global[realm]) do
|
2011-09-19 07:42:17 -04:00
|
|
|
local valorPoints = db.global[realm][name].valorPoints.points
|
2011-09-18 19:38:31 -04:00
|
|
|
local class = db.global[realm][name].class
|
2011-09-01 03:16:53 -04:00
|
|
|
|
2011-09-06 12:23:46 -04:00
|
|
|
if valorPoints == nil then
|
|
|
|
valorPoints = 0
|
|
|
|
end
|
2011-09-20 04:12:08 -04:00
|
|
|
local characterTable = { name = name, realm = realm, class = class, valorPoints = valorPoints }
|
2011-09-01 03:16:53 -04:00
|
|
|
|
2011-09-19 07:42:17 -04:00
|
|
|
for instance in pairs(trackedInstances) do
|
|
|
|
local defeatedBosses
|
2011-09-18 19:38:31 -04:00
|
|
|
if db.global[realm][name].lockouts[instance] ~= nil then
|
2011-09-19 07:42:17 -04:00
|
|
|
defeatedBosses = db.global[realm][name].lockouts[instance].defeatedBosses
|
2011-09-01 03:16:53 -04:00
|
|
|
else
|
2011-09-19 07:42:17 -04:00
|
|
|
defeatedBosses = 0
|
2011-09-01 03:16:53 -04:00
|
|
|
end
|
2011-09-20 04:12:08 -04:00
|
|
|
characterTable[instance] = defeatedBosses
|
2011-09-19 07:42:17 -04:00
|
|
|
end
|
2011-09-20 04:12:08 -04:00
|
|
|
|
|
|
|
table.insert(tooltipTable,characterTable)
|
2011-09-19 07:42:17 -04:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2011-09-20 12:52:40 -04:00
|
|
|
-- Sort table according to options.
|
2011-09-20 04:12:08 -04:00
|
|
|
local sortTooltip = function(a, b)
|
|
|
|
if db.profile.sortType == 1 then
|
|
|
|
if db.profile.sortDirection == 1 then
|
|
|
|
return a.name:lower() < b.name:lower()
|
|
|
|
else
|
|
|
|
return a.name:lower() > b.name:lower()
|
2011-09-01 03:16:53 -04:00
|
|
|
end
|
2011-09-20 04:12:08 -04:00
|
|
|
elseif db.profile.sortType == 2 then
|
|
|
|
if db.profile.sortDirection == 1 then
|
|
|
|
return a.valorPoints < b.valorPoints
|
|
|
|
else
|
|
|
|
return a.valorPoints > b.valorPoints
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
table.sort(tooltipTable, sortTooltip )
|
2011-09-19 09:11:10 -04:00
|
|
|
|
2011-09-19 07:42:17 -04:00
|
|
|
|
2011-09-19 09:11:10 -04:00
|
|
|
-- Draw the tooltip
|
2011-09-18 08:41:25 -04:00
|
|
|
tooltip:AddHeader('')
|
2011-09-20 04:12:08 -04:00
|
|
|
tooltip:SetScale(1)
|
2011-09-18 08:41:25 -04:00
|
|
|
local valorPointColumn = tooltip:AddColumn('LEFT')
|
|
|
|
tooltip:SetCell(1, 1, '')
|
|
|
|
tooltip:SetCell(1, 2, 'VP')
|
2011-09-01 03:16:53 -04:00
|
|
|
local nextColumn = 3
|
|
|
|
for instance,abbreviation in pairs(trackedInstances) do
|
2011-09-18 08:41:25 -04:00
|
|
|
tooltip:SetCell(1, nextColumn, abbreviation, nil, 'CENTER')
|
2011-09-01 03:16:53 -04:00
|
|
|
nextColumn = nextColumn + 1
|
|
|
|
end
|
|
|
|
|
2011-09-20 04:12:08 -04:00
|
|
|
for _,information in pairs(tooltipTable) do
|
2011-09-19 08:48:54 -04:00
|
|
|
local characterLine = tooltip:AddLine('')
|
2011-09-20 04:12:08 -04:00
|
|
|
tooltip:SetCell(characterLine, 1, information.name, classColors[information.class], 'LEFT')
|
2011-09-19 08:48:54 -04:00
|
|
|
|
|
|
|
local valorPointColor
|
2011-09-20 04:12:08 -04:00
|
|
|
if information.valorPoints == 980 then
|
2011-09-19 08:48:54 -04:00
|
|
|
valorPointColor = flagColors['red']
|
|
|
|
else
|
|
|
|
valorPointColor = flagColors['green']
|
|
|
|
end
|
2011-09-20 04:12:08 -04:00
|
|
|
tooltip:SetCell(characterLine, 2, information.valorPoints, valorPointColor, 'RIGHT')
|
2011-09-19 08:48:54 -04:00
|
|
|
|
|
|
|
local nextColumn = 3
|
|
|
|
for instance, abbreviation in pairs(trackedInstances) do
|
|
|
|
local instanceColor
|
2011-09-20 04:12:08 -04:00
|
|
|
if information[instance] == 0 then
|
2011-09-19 08:48:54 -04:00
|
|
|
instanceColor = flagColors['green']
|
2011-09-01 03:16:53 -04:00
|
|
|
else
|
2011-09-19 08:48:54 -04:00
|
|
|
instanceColor = flagColors['red']
|
2011-09-01 03:16:53 -04:00
|
|
|
end
|
2011-09-20 04:12:08 -04:00
|
|
|
tooltip:SetCell(characterLine, nextColumn, information[instance], instanceColor, 'RIGHT')
|
2011-09-01 03:16:53 -04:00
|
|
|
|
2011-09-19 08:48:54 -04:00
|
|
|
nextColumn = nextColumn + 1
|
2011-09-01 03:16:53 -04:00
|
|
|
end
|
|
|
|
end
|
2011-08-20 07:41:29 -04:00
|
|
|
end
|