ESOUI SVN TaosGroupUltimate

[/] [trunk/] [TaosGroupUltimate/] [logic/] [GroupHandler.lua] - Blame information for rev 63

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 5 Taonnor-14572
--[[
2 Taonnor-14572
        Addon: Taos Group Ultimate
3 Taonnor-14572
        Author: TProg Taonnor
4 Taonnor-14572
        Created by @Taonnor
5 Taonnor-14572
]]--
6 Taonnor-14572
 
7 Taonnor-14572
--[[
8 36 Taonnor-14572
        Local variables
9 5 Taonnor-14572
]]--
10 7 Taonnor-14572
local LOG_ACTIVE = false
11 36 Taonnor-14572
local _logger = nil
12 5 Taonnor-14572
 
13 Taonnor-14572
--[[
14 37 Taonnor-14572
        Table TGU_GroupHandler
15 5 Taonnor-14572
]]--
16 36 Taonnor-14572
TGU_GroupHandler = {}
17 Taonnor-14572
TGU_GroupHandler.__index = TGU_GroupHandler
18 5 Taonnor-14572
 
19 Taonnor-14572
--[[
20 36 Taonnor-14572
        Table Members
21 5 Taonnor-14572
]]--
22 36 Taonnor-14572
TGU_GroupHandler.Name = "TGU-GroupHandler"
23 59 Taonnor-14572
TGU_GroupHandler.IsMocked = false
24 58 Taonnor-14572
TGU_GroupHandler.IsGrouped = false
25 5 Taonnor-14572
 
26 Taonnor-14572
--[[
27 8 Taonnor-14572
        Called when group member joined group
28 5 Taonnor-14572
]]--
29 36 Taonnor-14572
function TGU_GroupHandler.OnGroupMemberJoined()
30 Taonnor-14572
        if (LOG_ACTIVE) then _logger:logTrace("TGU_GroupHandler.OnGroupMemberJoined") end
31 5 Taonnor-14572
 
32 38 Taonnor-14572
    CALLBACK_MANAGER:FireCallbacks(TGU_GROUP_CHANGED)
33 63 Taonnor-14572
 
34 Taonnor-14572
    TGU_GroupHandler.OnGroupUpdate()
35 5 Taonnor-14572
end
36 Taonnor-14572
 
37 8 Taonnor-14572
--[[
38 Taonnor-14572
        Called when group member left group
39 Taonnor-14572
]]--
40 36 Taonnor-14572
function TGU_GroupHandler.OnGroupMemberLeft()
41 Taonnor-14572
        if (LOG_ACTIVE) then _logger:logTrace("TGU_GroupHandler.OnGroupMemberLeft") end
42 8 Taonnor-14572
 
43 38 Taonnor-14572
    CALLBACK_MANAGER:FireCallbacks(TGU_GROUP_CHANGED)
44 63 Taonnor-14572
 
45 Taonnor-14572
    TGU_GroupHandler.OnGroupUpdate()
46 8 Taonnor-14572
end
47 5 Taonnor-14572
 
48 Taonnor-14572
--[[
49 8 Taonnor-14572
        Called when groupUnitTags updated
50 Taonnor-14572
]]--
51 36 Taonnor-14572
function TGU_GroupHandler.OnGroupUpdate()
52 Taonnor-14572
        if (LOG_ACTIVE) then _logger:logTrace("TGU_GroupHandler.OnGroupUpdate") end
53 58 Taonnor-14572
 
54 Taonnor-14572
    local isGrouped = IsUnitGrouped("player")
55 Taonnor-14572
 
56 59 Taonnor-14572
    if (TGU_GroupHandler.IsMocked) then
57 Taonnor-14572
        isGrouped = true
58 Taonnor-14572
    end
59 Taonnor-14572
 
60 58 Taonnor-14572
    if (isGrouped ~= TGU_GroupHandler.IsGrouped) then
61 Taonnor-14572
        TGU_GroupHandler.IsGrouped = isGrouped
62 Taonnor-14572
        CALLBACK_MANAGER:FireCallbacks(TGU_UNIT_GROUPED_CHANGED)
63 Taonnor-14572
    end
64 8 Taonnor-14572
end
65 Taonnor-14572
 
66 Taonnor-14572
--[[
67 Taonnor-14572
        Called on ???
68 Taonnor-14572
]]--
69 36 Taonnor-14572
function TGU_GroupHandler.OnUnitFrameUpdate()
70 Taonnor-14572
        if (LOG_ACTIVE) then _logger:logTrace("TGU_GroupHandler.OnUnitFrameUpdate") end
71 8 Taonnor-14572
 
72 38 Taonnor-14572
    CALLBACK_MANAGER:FireCallbacks(TGU_GROUP_CHANGED)
73 63 Taonnor-14572
 
74 Taonnor-14572
    TGU_GroupHandler.OnGroupUpdate()
75 8 Taonnor-14572
end
76 Taonnor-14572
 
77 Taonnor-14572
--[[
78 36 Taonnor-14572
        Initialize initializes TGU_GroupHandler
79 5 Taonnor-14572
]]--
80 59 Taonnor-14572
function TGU_GroupHandler.Initialize(logger, isMocked)
81 36 Taonnor-14572
    if (LOG_ACTIVE) then logger:logTrace("TGU_GroupHandler.Initialize") end
82 7 Taonnor-14572
 
83 36 Taonnor-14572
    _logger = logger
84 59 Taonnor-14572
 
85 Taonnor-14572
    TGU_GroupHandler.IsMocked = isMocked
86 36 Taonnor-14572
 
87 5 Taonnor-14572
    -- Initial call
88 36 Taonnor-14572
        TGU_GroupHandler:OnGroupUpdate()
89 5 Taonnor-14572
 
90 Taonnor-14572
        -- Register events
91 36 Taonnor-14572
        EVENT_MANAGER:RegisterForEvent(TGU_GroupHandler.Name, EVENT_GROUP_MEMBER_JOINED, TGU_GroupHandler.OnGroupMemberJoined)
92 Taonnor-14572
        EVENT_MANAGER:RegisterForEvent(TGU_GroupHandler.Name, EVENT_GROUP_MEMBER_LEFT, TGU_GroupHandler.OnGroupMemberLeft)
93 Taonnor-14572
        EVENT_MANAGER:RegisterForEvent(TGU_GroupHandler.Name, EVENT_GROUP_UPDATE, TGU_GroupHandler.OnGroupUpdate)
94 Taonnor-14572
        EVENT_MANAGER:RegisterForEvent(TGU_GroupHandler.Name, EVENT_UNIT_FRAME_UPDATE, TGU_GroupHandler.OnUnitFrameUpdate)
95 5 Taonnor-14572
end