diff options
Diffstat (limited to 'EventMsgCenter/EventMsgCenter.lua')
-rw-r--r-- | EventMsgCenter/EventMsgCenter.lua | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/EventMsgCenter/EventMsgCenter.lua b/EventMsgCenter/EventMsgCenter.lua new file mode 100644 index 0000000..ffb784d --- /dev/null +++ b/EventMsgCenter/EventMsgCenter.lua @@ -0,0 +1,34 @@ +-- <event, {callbacks}> +local _broadcast = {} +local EventMsgCenter = {} + +EventMsgCenter.registerMsg = function(e, callback) + if _broadcast[e] == nil then + _broadcast[e] = {} + end + table.insert(_broadcast[e], callback) +end + +EventMsgCenter.unRegisterMsg = function(e, callback) + if _broadcast[e] == nil or callback == nil then + return + end + table.remove(_broadcast[e], callback) +end + +EventMsgCenter.unRegisterAllMsgByEvent = function(e) + if _broadcast[e] == nil then + return + end + +end + +EventMsgCenter.unRegisterAllMsg = function() + +end + +EventMsgCenter.sendMsg = function(e, ...) + +end + +return EventMsgCenter |