hengyang_client/lua_probject/base_project/Game/Controller/Broadcast.lua

47 lines
914 B
Lua

Broadcast = {}
local _events = {}
function Broadcast.AddListener(eventName, Func, Obj)
if _events[eventName] == nil then
_events[eventName] = {}
end
local event = _events[eventName]
event[#event + 1] = {
func = Func,
obj = Obj
}
end
function Broadcast.RemoveListener(eventName, func)
local event = _events[eventName]
if event == nil then
return
end
for _, e in pairs(event) do
if e.func == func then
event[_] = nil
return
end
end
end
function Broadcast.Send(eventName, ...)
local event = _events[eventName]
if event == nil then
return
end
for _, e in pairs(event) do
e.func(e.obj, ...)
end
end
BroadcastEvent = {
OnJoinsChange = 'OnJoinsChange',
OnMemberChange = "OnMemberChange",
OnOutFamily = "OnOutFamily",
OnOutFamily2 = "OnOutFamily2",
}